O subrotina salva as planilhas do Excel em formato PDF. Ele pergunta ao usuário onde salvar os arquivos, salva cada aba como um arquivo PDF separado com base no nome na célula X24, e exibe mensagens sobre o status da operação.
O subrotina salva as planilhas do Excel em formato PDF. Ele pergunta ao usuário onde salvar os arquivos, salva cada aba como um arquivo PDF separado com base no nome na célula X24, e exibe mensagens sobre o status da operação.
O subrotina salva as planilhas do Excel em formato PDF. Ele pergunta ao usuário onde salvar os arquivos, salva cada aba como um arquivo PDF separado com base no nome na célula X24, e exibe mensagens sobre o status da operação.
Dim contador As Long, Item As Long, vAba As Long Dim caminhoSalvar As String, nomeArquivo As String, vLista As String Dim caixaSalvar As Office.FileDialog Dim i As Integer Set caixaSalvar = Application.FileDialog(msoFileDialogFolderPicker) With caixaSalvar .AllowMultiSelect = False .Title = "Selecione o local para salvar" .Show End With If caixaSalvar.SelectedItems.Count = 0 Then MsgBox "Operação cancelada!", vbExclamation, "Salvar PDF" Exit Sub Else caminhoSalvar = caixaSalvar.SelectedItems(1) & "\" contador = 0 With ThisWorkbook ReDim listaAbas(.Sheets.Count) For vAba = 1 To .Sheets.Count .Sheets(vAba).Activate nomeArquivo = .Sheets(vAba).Cells(24, "X") If nomeArquivo = "" Then contador = contador + 1 listaAbas(contador) = .Sheets(vAba).Name Else nomeArquivo = nomeArquivo & ".pdf" If Dir(caminhoSalvar & nomeArquivo, vbArchive) <> "" Then Do While Dir(caminhoSalvar & nomeArquivo, vbArchive) <> "" i = i + 1 nomeArquivo = nomeArquivo & " - " & i & ".pdf" Loop End If ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _ CStr(caminhoSalvar & nomeArquivo), Quality:=xlQualityStandard, _ IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _ False End If Next For Item = LBound(listaAbas) To UBound(listaAbas) If listaAbas(Item) <> "" Then vLista = vLista & listaAbas(Item) & vbCrLf End If Next If vLista = "" Then MsgBox "Arquivos PDF salvos com Sucesso!", vbInformation, "Salvar em PDF" Else MsgBox "A(s) seguinte(s) aba(s) não foi(ram) salva(s) em PDF :" & Chr(13) & Chr(13) & vLista & _ Chr(13) & "Favor verifique se na(s) aba(s) listada(s) a célula de referência está preenchida!", vbExclamation, "Erro" End If End With End If End Sub