Saltar para: Post [1], Comentários [2], Pesquisa e Arquivos [3]

Code Snippets Blog

Pequenas rotinas em vba, vbscript e outras linguagens. Noticias sobre informática, workshops, e outras coisas relacionadas com novas tecnologias.

Code Snippets Blog

Pequenas rotinas em vba, vbscript e outras linguagens. Noticias sobre informática, workshops, e outras coisas relacionadas com novas tecnologias.

28
Mar08

Enviar Email com anexo pelo Excel via Outlook com assinatura

Olá

Este é um complemento ao post e resposta ao um  comentário do mesmo post.

As assinaturas depois de serem feitas no outlook são gravadas em ficheiro na seguinte localização
"C:\Documents and Settings\[utilizador]\Application Data\Microsoft\Signatures\",

a unidade de disco pode variar consoante as definições do seu Windows, tal como o utilizador será o nome do utilizador corrente.

O nome dado a cada assinatura servirá de nome para o ficheiro, sendo as extensões consoante o formato - html, txt ou rtf.

 

Para usar em conjunto com a  macro "Enviar_email()" reserve a celula D2 para colocar o nome do ficheiro que pretende usar como assinatura.

- Coloque só o nome do ficheiro na celula D2 (exemplo: assinatura.txt ou assinatura.html)


- Acrescente a macro abaixo ao código do livro

 

Function Assinatura()
    Dim fAssinatura, stAssinatura, stLinha
    fAssinatura = Environ("APPDATA") & "\Microsoft\Signatures\" & Range("D2")
    stAssinatura = ""
    If Dir(fAssinatura) <> "" Then
        Open fAssinatura For Input As #1
        Do While Not EOF(1)
            Line Input #1, stLinha
            stAssinatura = stAssinatura & vbCrLf & stLinha
        Loop
        Close #1
    End If
    Assinatura = stAssinatura
End Function

 

Na macro "Enviar_email()" no final da linha que preenche o Conteudo da mensagem (.Body) a seguir ao ultimo vbCrlf acrescente " & Assinatura " , sem as aspas.

Exemplo antes

 .Body = "Envio de livro ......... " & vbCrLf & _
   "....Texto a inserir no conteudo do mail.........." & vbCrLf 

 

Exemplo depois

 .Body = "Envio de livro ......... " & vbCrLf & _
   "....Texto a inserir no conteudo do mail.........." & vbCrLf & Assinatura

 


No caso de querer enviar o assinatura.html, sugiro que modifique o ".Body" para ".HTMLBody"

Se por qualquer razão  - Environ("APPDATA")  não retornar o caminho correcto, pode sempre digitá-lo, substituindo todo o caminho com o certo para o seu caso.

 

Para um melhor entendimento da utilização da variavel APPDATA veja este post

 

Espero que lhe sirva

 

Observação: Post colocado em 04/04/2008 com rotinas actualizadas http://snippetguy.blogs.sapo.pt/13040.html

8 comentários

Comentar post