How do you get a reference to the mail item in the current open window in Outlook using VBA?
15,751
Solution 1
Apparently this is the code to get the current open item:
If TypeName(Application.ActiveWindow) = "Inspector" Then
Set Item = Application.ActiveWindow.CurrentItem
Solution 2
I did it like this. Declare the Item as a MailItem instead of an Object and then you get help from IntelliSense.
Dim CurrentMessage As MailItem
Set CurrentMessage = ActiveInspector.CurrentItem
CurrentMessage.HTMLBody = "[Insert HTML here]"
Author by
Matt Connolly
Updated on June 18, 2022Comments
-
Matt Connolly almost 2 years
I have a macro that works very well to place into folders / apply flags / set categories, but it only works on the current item selected in the explorer.
When I get an email alert on my desktop and click on it to open the email message, I would like to be able to run the same macro against that open item, but I can't find any documentation on how to access that object in a similar way to how I access the selected item in the explorer list.
My current selection logic looks like this:
Dim Item As Object Dim SelectedItems As Selection Set SelectedItems = Outlook.ActiveExplorer.Selection For Each Item In SelectedItems With Item 'do stuff End With Next Item