Microsoft Office Forums

Go Back   Microsoft Office Forums > >

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #3  
Old 07-08-2014, 09:29 PM
flatop flatop is offline Adapt a script used in Word to highlight words, to work in Outlook? Windows 7 64bit Adapt a script used in Word to highlight words, to work in Outlook? Office 2010 32bit
Novice
Adapt a script used in Word to highlight words, to work in Outlook?
 
Join Date: Jul 2013
Posts: 5
flatop is on a distinguished road
Default

Quote:
Originally Posted by niton View Post
From http://www.outlookcode.com/threads.a...essageid=33313

For the original you have to pass a mailitem

Code:
 
Sub CustomMailMessageRule(myMail As Outlook.mailItem)
 
Dim strID As String
Dim objMail As Outlook.mailItem
Dim wordToSearch As String
Dim strData As String
 
strID = myMail.EntryID
 
Set objMail = Application.Session.GetItemFromID(strID)
 
wordToSearch = "the"
 
If InStr(1, objMail.HTMLBody, wordToSearch, vbTextCompare) > 0 Then
strData = objMail.HTMLBody
strData = Replace(strData, wordToSearch, "<FONT style=" & Chr(34) & "BACKGROUND-COLOR: yellow" & Chr(34) & ">" & wordToSearch & "</FONT>")
objMail.HTMLBody = strData
'objMail.Save
End If
Set objMail = Nothing
End Sub
You may prefer this which works on the current open item.

Code:
 
Sub SearchMailMessageHighlight()
    Dim strID As String
    Dim objMail As Outlook.mailItem
 
    Dim wordToSearch As String
    Dim strData As String
 
    ' Must have an open message
    Set objMail = Application.ActiveInspector.currentItem
 
    objMail.Display ' In case it is behind something or minimized
 
    wordToSearch = InputBox(Prompt:="Enter search string.", Title:="SearchMailMessage", Default:="the")
 
    If InStr(1, objMail.HTMLBody, wordToSearch, vbTextCompare) > 0 Then
 
        strData = objMail.HTMLBody
 
        strData = Replace(strData, wordToSearch, "<FONT style=" & Chr(34) & "BACKGROUND-COLOR: yellow" & Chr(34) & ">" & wordToSearch & "</FONT>")
        objMail.HTMLBody = strData
 
        'To reverse highlighting when testing
        'strData = Replace(strData, wordToSearch, "<FONT style=" & Chr(34) & "BACKGROUND-COLOR: white" & Chr(34) & ">" & wordToSearch & "</FONT>")
        'objMail.HTMLBody = strData
 
        'objMail.save
 
    End If
    Set objMail = Nothing
End Sub
Niton, thank you for replying to my post. I have been able to get your second option to work on Outlook Post items; however, I need to make the script loop so that it searches for multiple words as shown in my first post. Do you know how this can be accomplished? I am researching to see if I can find out to do it, but wanted to see if you already know how it can be accomplished. Thanks again.
Reply With Quote
 

Thread Tools
Display Modes


Similar Threads
Thread Thread Starter Forum Replies Last Post
Adapt a script used in Word to highlight words, to work in Outlook? Find and highlight multiple words in MS Word document AtaLoss Word VBA 37 09-22-2021 12:04 PM
Adapt a script used in Word to highlight words, to work in Outlook? VBA to highlight words if used too much aolszewski Word VBA 3 11-23-2013 02:07 AM
permanently highlight searched words in word 2013 arjay Word 4 08-16-2013 09:29 AM
Adapt a script used in Word to highlight words, to work in Outlook? Highlight all underlined words zdodson Word VBA 1 07-11-2013 04:53 PM
Adapt a script used in Word to highlight words, to work in Outlook? Macro to highlight words bertietheblue Word VBA 9 07-01-2013 12:39 PM

Other Forums: Access Forums

All times are GMT -7. The time now is 12:41 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.
Search Engine Optimisation provided by DragonByte SEO (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
MSOfficeForums.com is not affiliated with Microsoft