Copiar colar print de um Userform (excel) no corpo do e-mail Lotus Notes

Anônima
2010-03-31T13:29:21+00:00

Bom dia à todos, estou precisando fazer um printscreen de um formulário que eu desenvoli no excel VBA e colar sua imagem no corpo do e-mail do Notes Lotus, se alguem puder me ajudar.

Antecipo meus agradecimentos

Microsoft 365 e Office 365 | Instalar, resgatar, ativar | Para uso doméstico | Outro

Pergunta bloqueada. Essa pergunta foi migrada da Comunidade de Suporte da Microsoft. É possível votar se é útil, mas não é possível adicionar comentários ou respostas ou seguir a pergunta.

0 comentários Sem comentários

9 respostas

Classificar por: Mais útil
  1. Anônima
    2015-03-27T17:57:57+00:00

    fcvelho, boa tarde!

    Executei o comando que você sugeriu e funciona perfeitamente. Só há um problema, vou descrevê-lo talvez possa me auxiliar.

    Criei um sistema para registro de ligações e quando a pessoa não esta ou não atende o sistema envia um e-mail com o print da tela do e-form. O problema é que o print é salvo na pasta e o arquivo é substituído e não gerada uma nova imagem com o print, então se a pessoa receber um recado as 11:00 da manhã e outro as 14:00, o segundo print irá sobrepor o 1º e os 2 e-mails terão as mesmas informações.

    Talvez algum comando para inserir neste código, que gere sempre um novo print, é possível?

    Desde já agradeço.

    Esta resposta foi útil?

    0 comentários Sem comentários
  2. Anônima
    2015-03-04T18:35:20+00:00

    fcvelho,

    Não testei ainda seu código com o IBM Lotus Notes, mas pelo que li nas linhas, esse código é para Outlook. Considerando o código do RogerioPontes (que é pra Notes) e o seu, acredito que eu deva substituir o body dele...

    .Body = "Favor não deletar a mensagem sem antes responder" & vbCrLf & vbCrLf & _

    "Nº N.Fiscal: " & vbCrLf & _

    "Data de envio: " & vbCrLf & vbCrLf & _

    "OS: " & UserForm7.TextBox5.Value & vbCrLf & _

    "Descrição: " & UserForm7.TextBox6.Value & vbCrLf & _

    "Fornecedor: " & UserForm7.TextBox7.Value & vbCrLf & _

    "CNPJ: " & UserForm7.TextBox8.Value & vbCrLf & _

    "Orçamento: " & UserForm7.TextBox9.Value & vbCrLf & _

    "Prazo SLA: " & UserForm7.TextBox10.Value & vbCrLf & _

    "Peso: " & UserForm7.TextBox11.Value & vbCrLf & _

    "Armazem OI: " & UserForm7.TextBox12.Value & vbCrLf & _

    "C.Custo: " & UserForm7.TextBox13.Value & vbCrLf & _

    "Aos cuidados de: " & UserForm7.TextBox14.Value & vbCrLf & _

    "Telefone: " & UserForm7.TextBox15.Value & vbCrLf & _

    " " & vbCrLf & _

    " " & vbCrLf & _

    " " & vbCrLf & _

    "at" & vbCrLf & _

    "Rogério Pontes" & vbCrLf & _

    "GEMAL "

    ... pelo body do seu:

    Dim strImagePath As String

    strImagePath = Environ("Save") & "C:\GEF\DEF\print.png" 'Local onde vai ser salvo

    Application.SendKeys "(%{1068})" ' Comando que executa o AltPrintScreen

    .HTMLBody = "Mensagem" & "<BR><BR>" & _

    "<img src='M:\GEF\DEF\Logistica\Solicitação de Prachas\Print\print.png'>" 'Caminho que se encontra a imagem a ser colada no corpo do e-mail.

    ... mas por serem aplicações diferentes, talvez as funções também sejam diferentes.

    Sabe dizer se/como consigo fazer esse ajuste?

    Muito obrigado.

    Esta resposta foi útil?

    0 comentários Sem comentários
  3. Anônima
    2013-11-14T11:21:25+00:00

    Galera, não sei se ainda pode ser útil para vocês... Mas segue um exemplo que fiz e esta funcionando 100%

    Dim cob As Excel.ChartObject

      Dim wks As Excel.Worksheet

      Dim shp As Excel.Shape

      Dim cht As Excel.Chart

      Dim objOutlook As Object 'Outlook.Application

      Dim objMailItem As Object 'Outlook.MailItem

      Dim strImagePath As String

      strImagePath = Environ("Save") & "C:\GEF\DEF\print.png" 'Local onde vai ser salvo

      Application.SendKeys "(%{1068})" ' Comando que executa o AltPrintScreen

      DoEvents

      Application.Wait Now + TimeSerial(0, 0, 1)

      Application.ScreenUpdating = False

      Set wks = Workbooks.Add(xlWBATWorksheet).Worksheets(1)

      wks.Paste

      Set shp = wks.Shapes(1)

      Set cht = wks.ChartObjects.Add(0, 0, shp.Width, shp.Height).Chart

      cht.Paste

      cht.Export strImagePath, "png"

      wks.Parent.Close savechanges:=False

      Application.ScreenUpdating = True

      Set OutApp = CreateObject("Outlook.Application")

        OutApp.Session.Logon

        Set OutMail = OutApp.CreateItem(0)

        On Error Resume Next

        With OutMail

        .To = ""

        .cc = ""

        .BCC = ""

        .Subject = "Titulo"

        .Attachments.Add "C:\GEF\DEF\print.png"

        .HTMLBody = "Mensagem" & "<BR><BR>" & _

        "<img src='M:\GEF\DEF\Logistica\Solicitação de Prachas\Print\print.png'>" 'Caminho que se encontra a imagem a ser colada no corpo do e-mail.

        .Send 'or use .Display

    End With

        Set OutMail = Nothing

        Set OutApp = Nothing

    Espero que possa ter ajudado.

    Abraço

    Esta resposta foi útil?

    0 comentários Sem comentários
  4. Anônima
    2011-07-11T23:24:26+00:00

    Caro Rogério,  estou com o mesmo problema neste momento.  Você conseguiu ?

    Esta resposta foi útil?

    0 comentários Sem comentários