Die Outlook-BCC-Eingabeaufforderung VBA wird nicht automatisch ausgeführt

493
Jeroen Bulten

Ich bin noch ziemlich neu bei VBA (also tut mir leid, wenn dies eine dumme Frage ist), obwohl ich bereits einige Jahre kleine Anwendungen für ähnliche Schaltflächen in Excel oder etwas programmiere. Aber dieses ist mir nie klar gewesen; Ich möchte diese BCC-Eingabeaufforderungsfunktion in einer automatischen Schleife für Outlook implementieren. Wenn ich das Makro ausführen, funktioniert es einwandfrei, bis ich Outlook neu starte. Warum muss ich dieses Makro immer wieder neu aktivieren, wenn ich Outlook starte? Ich habe es in ThisOutlooksession abgelegt, alle Makros aktiviert (übrigens; muss dies für immer aktiviert werden? Scheint mir nicht sicher), aber kein Erfolg. Wenn mir jemand helfen könnte, wäre das toll! Danke im Voraus.

Public WithEvents myOlApp As Outlook.Application  Public Sub Initialize_handler() Set myOlApp = CreateObject("Outlook.Application")   End Sub  Private Sub myOlApp_ItemSend(ByVal Item As Object, Cancel As Boolean)   Dim prompt As String prompt = "The BCC Field is empty!"    If Item.BCC = "" Then   If msgbox(prompt, vbYesNo + vbQuestion, "BCC Field") = vbNo Then Cancel = True End If End If  End Sub 
0

2 Antworten auf die Frage

1
niton

Automatisch ausführen Initialize_handler:

Private Sub Application_startup() Initialize_handler End Sub 

Sie können mit vereinfachen:

Private Sub Application_startup() Set myolApp = CreateObject("Outlook.Application") End Sub 

Sie können es vereinfachen, indem Sie Ihren gesamten Code löschen und stattdessen diesen verwenden:

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)  Dim prompt As String prompt = "The BCC Field is empty!"  If Item.BCC = "" Then If MsgBox(prompt, vbYesNo + vbQuestion, "BCC Field") = vbNo Then Cancel = True End If End If  End Sub 
0
thims

Verwenden Sie Application_Startup()statt Initialize_handler().