Я работаю с Excel, пытаясь автоматизировать отправку некоторых писем. Прямо сейчас код создает сообщение электронной почты на основе ячеек рядом с нажатой кнопкой, пересылает сообщение электронной почты в перечисленные в ячейке, а затем вставляет конкретное сообщение тела на основе еще нескольких ячеек. То, что находится в ячейках, на самом деле не важно, но мне нужно выполнить поиск конкретного перенаправленного сообщения на предмет конкретного текста, и, если он найден, ему нужно выделить этот текст.
Мой код выглядит следующим образом:
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 myemailhere@email.com 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
Код работает на 100%. Я просто не знаю правильный синтаксис для поиска и выделения результатов.
В приведенном выше примере, скажем, я хотел найти и выделить слова "Спасибо". Как можно поступить об этом?