Hi Sem
The Slipstick website helpfully has the answer for you, in parts. First, check out the "
Checking for missing attachments before sending a message" article. Here, you will see the following code snippet:
Code:
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
If InStr(1, Item.Body, "attach", vbTextCompare) > 0 Then
If Item.Attachments.Count = 0 Then
answer = MsgBox("There's no attachment, send anyway?", vbYesNo)
If answer = vbNo Then Cancel = True
End If
End If
End Sub
The important part of the code is
If InStr(1, Item.Body, "attach", vbTextCompare) > 0 Then
. The INSTR function will check the body of the email for the word "attach"; if it finds the word, it will return the location of the character in that word within the string being search (item.body). However, this won't give you the number of instances that the search term appears in the email body. You would need to add more code if you wanted to use this approach.
Second, an alternative approach would be to use regular expressions to parse the body of the email. You should look at "
Use RegEx to extract text from an Outlook email message". I would suggest putting your code in the
Application_ItemSend
event, as above, then using the RegEx test method to see if the word/phrase exists in the email body. If it does, then execute the regex, and get the number of matches.
I hope that helps.