Pesquise por um email para encontrar e destacar texto

0

Estou trabalhando com o Excel tentando automatizar o envio de alguns e-mails. No momento, o código cria um email com base nas células próximas ao botão clicado, encaminha o email para o listado em uma célula e, em seguida, insere uma mensagem de corpo específica com base em mais algumas células. O que está nas células não é realmente importante, mas o que eu preciso fazer é pesquisar a mensagem original encaminhada para um texto específico e, se encontrada, ela precisa realçar esse texto.

Meu código é o seguinte:

Sub Asset_email()
Dim olApp As Outlook.Application
Dim olNs As Namespace
Dim Fldr As MAPIFolder
Dim olMail As Outlook.MailItem
Dim i As Integer
Dim olMsg As Outlook.MailItem
Dim r As Range
Dim strLocation As String
Dim o As Outlook.Application
Dim strbody As String

'Dim olAtt As Outlook.Attachments
'Set olAtt = olMsg.Attachments

Set r = ActiveSheet.Buttons(Application.Caller).TopLeftCell
Range(Cells(r.Row, r.Column), Cells(r.Row, r.Column)).Select

Set olApp = New Outlook.Application
Set olNs = olApp.GetNamespace("MAPI")
Set Fldr = olNs.GetDefaultFolder(olFolderInbox).Folders("Asset Notifications Macro")
i = 1


For Each olMail In Fldr.Items
If InStr(olMail.body, ActiveCell.Offset(rowOffset:=0, ColumnOffset:=-3).Value) <> 0 Then
olMail.display



    strbody = "<BODY style=font-size:11pt;font-family:Calibri>Team,<br><br>" & _
              "Please see the notice below regarding " & _
              ActiveCell.Offset(rowOffset:=0, ColumnOffset:=-2).Value & _
              ".<br><br> Feel free to email the CSG team at [email protected] with any questions.<br><br>" & _
                "Thank you!"

With olMail.Forward
.To = ActiveCell.Offset(ColumnOffset:=-1)
.display
SendKeys ("%")
SendKeys ("7")
 'Call Sleep
Application.Wait (Now + TimeValue("0:00:03"))
.HTMLBody = strbody & "<br>" & .HTMLBody

End With
End If
Next
End Sub

O código funciona 100%. Eu simplesmente não sei a sintaxe correta para pesquisar e destacar os resultados.

No exemplo acima, digamos que eu queria encontrar e destacar as palavras "Obrigado". Como alguém faria isso?

    
por JGoldz75 16.06.2015 / 20:25

1 resposta

0

Tente isto:

.HTMLBody = Replace(.HTMLBody, "Thank you", "<FONT style=" & Chr(34) & "BACKGROUND-COLOR: yellow" & Chr(34) & ">" & "Thank you" & "</FONT>")
    
por 16.06.2015 / 22:05