Aprender a imprimir anexos de PDF a partir do Microsoft Outlook usando o Visual Basic for Applications (VBA) você pode economizar tempo quando você precisa imprimir vários anexos em PDF . VBA é uma linguagem de programação usada em todos os aplicativos do Microsoft Office para automatizar tarefas como imprimir arquivos. No Outlook , você pode criar procedimentos em que o código VBA é adicionado e executados usando o Editor de VB . Use a biblioteca " ShellExecute " para executar o comando de impressão e imprimir um arquivo PDF. Você pode criar um par de " For ... Loops " para pesquisar anexos em PDF na sua pasta de caixa de entrada e imprimi-los. Instruções
1
Abra o Microsoft Outlook , clique no menu " Ferramentas " e clique em "Macro > Editor do Visual Basic " para abrir as janelas VB Editor. Clique no menu "Inserir" e clique em " Módulo " para adicionar um novo módulo de código VBA.
2
Copie e cole o seguinte código para definir a função " ShellExecute " que você vai usar para imprimir o PDF arquivos:
Public Declare Function ShellExecute Lib " shell32.dll " Alias " ShellExecuteA " _ (ByVal hWnd As Long , ByVal lpOperation As String , ByVal lpFile As String , _ByVal lpParameters As String , ByVal lpDirectory As String , _ByVal nShowCmd as Long ) As Long
3
Adicione a seguinte função para chamar a função " ShellExecute " e imprimir o atual arquivo PDF:
função PrintFile ( pdfName Como string) ShellExecute 0, "Imprimir" , pdfName , vbNullString , "", Função 1End
4
Copie e cole o seguinte código para percorrer todos os itens de correio e imprimir quaisquer anexos em PDF encontrados usando a impressora padrão :
Public Sub PrintAttachments ( ) Dim myInbox Como MAPIFolderDim mailItem Como mailItemDim attchmt Como AttachmentDim pdfName Como StringSet myInbox = GetNamespace ( " MAPI " ) GetDefaultFolder ( olFolderInbox ) Para cada mailItem Em myInbox.ItemsFor . cada attchmt Em mailItem.AttachmentsIf ( InStr (1, attchmt , " pdf ". , vbTextCompare ) < > 0) ThenpdfName = "C: \\ Temp \\ " & attchmt.fileNameattchmt.SaveAsFile pdfNameCall PrintFile ( pdfName ) End IfNextNextSet myInbox = NothingEnd Sub
5
Pressione " F5 " para executar o código. O código irá salvar todos os anexos de PDF em "C: \\ Temp " antes de imprimi-las
.