Как получить ссылку на почтовый элемент в текущем открытом окне в Outlook, используя VBA? - PullRequest
7 голосов
/ 09 ноября 2010

У меня есть макрос, который очень хорошо работает для размещения в папках / применения флагов / установки категорий, но он работает только с текущим элементом, выбранным в проводнике.

Когда я получаю оповещение по электронной почте на своем рабочем столе и нажимаю на него, чтобы открыть сообщение электронной почты, я хотел бы иметь возможность запустить тот же макрос для этого открытого элемента, но я не могу найти какую-либо документацию покак получить доступ к этому объекту аналогично тому, как я получаю доступ к выбранному элементу в списке проводника.

Моя текущая логика выбора выглядит следующим образом:

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

Ответы [ 2 ]

10 голосов
/ 09 ноября 2010

Видимо, это код для получения текущей открытой позиции:

If TypeName(Application.ActiveWindow) = "Inspector" Then
    Set Item = Application.ActiveWindow.CurrentItem
7 голосов
/ 04 февраля 2013

Я так и сделал.Объявите Предмет как MailItem вместо Объекта, и тогда вы получите помощь от IntelliSense.

Dim CurrentMessage As MailItem
Set CurrentMessage = ActiveInspector.CurrentItem
CurrentMessage.HTMLBody = "[Insert HTML here]" 
...