Qdo. preciso gerar pdf c/ senha, eu uso esse utilitario free 'pdftk.exe' : https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/
Ele converte o arq. pdf 'normal' para um pdf c/ senha c/ linha de comando no dos, veja o exemplo abaixo:
Option Explicit
Sub CriarPDF_Com_Senha()
Dim strPath, FileName, OutputFile, Senha As String
Dim strExec As Variant
strPath = ThisWorkbook.Path & ""
FileName = "Pasta1.pdf"
OutputFile = "Pasta1-ComSenha.pdf"
Senha = "1234"
ActiveSheet.PageSetup.Orientation = xlLandscape
ActiveSheet.Range("A1:p20").ExportAsFixedFormat Type:=xlTypePDF, FileName:=strPath & FileName, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=False
strExec = Chr(34) & Chr(34) & strPath & "PDFTK.EXE" & Chr(34) & Chr(32) & Chr(34) & strPath & FileName & _
Chr(34) & " output " & strPath & OutputFile & " owner_pw foo user_pw " & Senha & Chr(34) & Chr(34)
Call Shell("cmd /C " & strExec, vbMinimizedNoFocus)
MsgBox "Arquivo " & strPath & OutputFile & vbLf & "com senha criado com sucesso", 0, "Sucesso"
End Sub
Segue o ex. em anexo o o utilitario a dll e a plan exemplo.
A macro está ajustada para rodar c/ todos arquivos na mesma pasta.
Click em se a resposta foi util!
Postado : 14/12/2014 4:17 pm