Notifications
Clear all

Como copiar um range do excel e colar como imagem no outlook

8 Posts
5 Usuários
0 Reactions
2,222 Visualizações
(@lennoxx)
Posts: 0
New Member
Topic starter
 

Pessoal,

bom dia.

tudo bom?

Estou com um problema no código de VBA. Estou tentando copiar uma selação do excel, abrir o outlook e color essa selação como imagem.

Abaixo tem o código que eu fiz, só está faltando colar no outlook

Sub Enviar_Email_Com_Imagem()
Range("A1:A10").Copy

Dim appOutlook As Object
Dim olMail As Object

'Verifica se Outlook está aberto. Caso não esteja, criar nova instância
On Error Resume Next
Set appOutlook = GetObject(, "Outlook.Application")
If appOutlook Is Nothing Then
Set appoutlook = CreateObject("Outlook.Application")
End If
On Error GoTo 0

Set olMail = appOutlook.CreateItem(0) '0 é um item de e-mail

With olMail
.To = "[email protected]"
.Subject = "Assunto"
.Body = "Corpo do E-mail"
.Display
End With

 
Postado : 22/01/2015 8:04 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Não testado!!!

Sub Enviar_Email_Com_Imagem()
Dim Rng As Range

Set Rng = Range("A1:A10")
Rng.CopyPicture xlScreen, xlPicture

Dim appOutlook As Object
Dim olMail As Object

'Verifica se Outlook está aberto. Caso não esteja, criar nova instância
On Error Resume Next
Set appOutlook = GetObject(, "Outlook.Application")
If appOutlook Is Nothing Then
Set appOutlook = CreateObject("Outlook.Application")
End If
On Error GoTo 0

Set olMail = appOutlook.CreateItem(0) '0 é um item de e-mail

With olMail
.To = "teste@teste.com.br"
.Subject = "Assunto"
.Body = "Corpo do E-mail"
.Display
End With

End Sub

Att

 
Postado : 22/01/2015 8:51 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Dá pra usar a camera tb né ?

 
Postado : 22/01/2015 12:12 pm
(@trindade)
Posts: 0
New Member
 

Boa tarde, lennoxx.

Vi sua duvida, eu também já quebrei a cabeça para enviar imagem no corpo do e-mail.
Da uma olhada neste arquivo se ajuda:

 
Postado : 22/01/2015 1:37 pm
(@fehras)
Posts: 0
New Member
 

Trindade,

Seu comentário meu ajudou 100% =*

 
Postado : 12/02/2015 3:51 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Amigos, me permitam entrar nesse tópico, pois fiquei deveras curioso com o assunto. Tentei usar a planilha do TRINDADE mas ela dá erro na rotina abaixo, na hora de setar a variavel ts

Function GetBoiler(ByVal sFile As String) As String
    
    Dim fso As Object
    Dim ts As Object
   
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set ts = fso.GetFile(sFile).OpenAsTextStream(1, -2)
        GetBoiler = ts.readall
        ts.Close
        
End Function
 
Postado : 13/02/2015 3:41 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Em TEMPO: Ja entendi, era a assinatura do Outlook que causava esse problema

 
Postado : 13/02/2015 4:19 pm
(@armando)
Posts: 0
New Member
 

Boa tarde, lennoxx.

Vi sua duvida, eu também já quebrei a cabeça para enviar imagem no corpo do e-mail.
Da uma olhada neste arquivo se ajuda:

boa noite amigo Trindade,
achei legal este codigo funcionou algumas vezes
agora da com o seguinte erro
Set ts = fso.GetFile(sFile).OpenAsTextStream(1, -2)
voce tem aguma dica que pode estar gerando este erro?

ficarei muito agradecido pelo seu retorno
att
armando

 
Postado : 02/03/2015 6:44 pm