Ich möchte das aktive geöffnete MailItem erhalten (ob es eine neue Mail oder eine empfangene Mail ist). Ich muss etwas Inhalt zu dieser Mail hinzufügen, wenn der Benutzer mein Makro ausführt. Ich verwende Outlook 2003 und VBA.Arbeiten mit der aktuellen offenen E-Mail
Ich fand dies: How do you get a reference to the mail item in the current open window in Outlook using VBA? Es funktioniert jedoch nicht, weil TypeName(Application.ActiveWindow)
auf nichts eingestellt ist. Ich habe auch versucht Set Mail = Application.ActiveInspector.currentItem
, aber es funktioniert auch nicht.
Es muss etwas, was ich über die ActiveInspector Sache nicht verstehe.
Wie gewünscht, dann ist dies das Verfahren/Makro in einem eigenen Modul befindet, aufgerufen, wenn der Anwender auf einer Menü-Taste in der Application_Startup()
Methode hinzugefügt:
Sub myMacro()
Dim NewMail As Outlook.MailItem
Set NewMail = Application.ActiveInspector.currentItem
End Sub
Wenn nichts ausgewählt ist, wird "ActiveInspector" tatsächlich "Nichts" sein. Ich weiß nicht, wie "ActiveWindow" "Nichts" sein könnte. Wo setzt du diesen Code ein und wie rufst du ihn an? –
Der Code befindet sich in einem Modul. Die Prozedur wird aufgerufen, wenn der Benutzer das Makro manuell ausführt oder auf eine Menüschaltfläche klickt, durch die das Makro ausgeführt wird. – dnLL
Können Sie den Code für die gesamte Methode veröffentlichen? –