Reinaldo, obrigado
Tentei adptar o código a minha necessidade, porém esta aparecendo erro de variável não definida "ARQ". estou eviando o código que adaptei. Desde já informo que o código abaixo funciona da seguinte maneira: tenho um listview que joga os dados para minha planilha e depois gera o arquivo pdf. essa é a lógica do código abaixo, porém não está funcionando.
Private Sub cmdPdf_Click()
On Error Resume Next
Dim i As Long
Dim Pasta As String, MyPath As String
Worksheets("PlanPrintPreAti").Activate
Range("A8:D5000").ClearContents
If Me.lstv.ListItems.Count <= 0 Then
Me.cmdPdf.Enabled = False
Else
Me.cmdPdf.Enabled = True
If MsgBox("Deseja Gerar Arquivo PDF?", vbQuestion + vbYesNo, "Confirmação") = vbYes Then
'Exporta dados para a PlanPrint
For i = 1 To Me.lstv.ListItems.Count
With PlanPrintPreAti.Range("a65000").End(xlUp)
.Offset(1, 0) = Format(lstv.ListItems(i), "0") ' Codigo
.Offset(1, 1) = lstv.ListItems(i).ListSubItems(1) ' estrutura
.Offset(1, 2) = lstv.ListItems(i).ListSubItems(2) 'Serviço
.Offset(1, 3) = lstv.ListItems(i).ListSubItems(3) 'Serviço
End With
Next
With PlanPrintPreAti
'Aqui o diretorio onde será salvo
MyPath = "W:DEPM_GERALDVTSRilton" 'Indica em que local a pasta estará , pode ser C: ou d: ou e:....
'Aqui determina em qual pasta ira ser salvo o arquivo
Pasta = ActiveSheet.Range("PlanPrintPreAti").Value
'Aqui determina o nome que o arquivo terá
arq = Pasta & "_" & ActiveSheet.Range("P2").Value & ActiveSheet.Range("P3").Value _
& " " & Format(Date, "dd-mmm-yyyy") & " " & Format(Time, "HH-MM-SS") & ".pdf"
'Verifica se o diretorio e pasta especificados existe
If (Dir(MyPath & "" & Pasta, vbDirectory) = "") Then
MsgBox "Diretório - " & MyPath & Pasta & " - Não encontrado"
' se não existir, cria se quiser
MkDir (MyPath & Pasta)
End If
'Verifica se o arquivo já existe, se existir, deleta
'If (Dir(Arquivo) <> "") Then
' Kill Arquivo
'End If
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
MyPath & "" & Pasta & "" & arq, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End With
End If
End If
End Sub
Postado : 09/11/2012 8:40 am