it-swarm.com.de

"Unter oder Funktion nicht definiert" beim Ausführen eines VBA-Skripts in Outlook

Als ersten Schritt beim Erstellen eines VBA-Skripts zur Größenänderung eines aktuell ausgewählten Bildes auf 100% x 100% versuche ich, das Beispiel in http://msdn.Microsoft.com/en-us/library/ee814736 zu reproduzieren (v = office.14) .aspx . Das Makro ist sehr einfach:

Sub Test()
   MsgBox ("Hello world")
End Sub

Das VBA-Skript wurde einfach in "Project1" erstellt, das standardmäßig geöffnet wird, wenn Sie Alt + F11 drücken. Beim Ausführen des VBA-Skripts erhalte ich jedoch weiterhin die Fehlermeldung "Sub oder Funktion nicht definiert" (Abbildungen 1 und 2).

Wie kann ich das VBA-Skript für Outlook "zugänglich" machen?

Running the "Test" macro in Microsoft Outlook Abbildung 1 Ausführen des Makros "Test" in Microsoft Outlook

enter image description here Abbildung 2 Fehler "Unterfunktion oder nicht definierte Funktion" mit Modulbaum im Hintergrund

6
Kurt Peek

Ich habe das Problem gelöst, indem ich die Anweisungen auf msdn.Microsoft.com genauer befolgt habe. Dort wird angegeben, dass das neue Makro erstellt werden muss, indem Sie Entwickler -> Makros auswählen, einen neuen Makronamen eingeben und auf "Erstellen" klicken. Wenn Sie das Makro auf diese Weise erstellen, konnte ich es ausführen (siehe Meldungsfeld unten).

enter image description here

4
Kurt Peek

Dies beantwortet wahrscheinlich nicht Ihre Frage, aber ich hatte dieselbe Frage und sie hat meine beantwortet.

Ich änderte Private Function in Public Function und es funktionierte.

1
Emwat

Dieser Fehler "Unter oder Funktion nicht definiert" wird jedes Mal angezeigt, wenn ein Fehler beim Kompilieren im Skript auftritt. Überprüfen Sie die Syntax Ihres Skripts erneut.

Ich denke, deshalb, wenn Sie msqbox anstelle von msgbox verwendet haben, wird der Fehler ausgegeben.

1
Arpit Jain

Ich hatte eine ähnliche Situation mit diesem Problem. In diesem Fall hätte es so ausgesehen

Sub Test()
   MsqBox ("Hello world")
End Sub

Das Problem war, dass ich viel mehr Code dort hatte und nicht erkennen konnte, dass in "MsqBox" (q statt g) ein Rechtschreibfehler aufgetreten ist und daher ein Fehler aufgetreten ist. Das war wirklich irreführend, aber da kann man das hinbekommen Bei so einem Fehler wird vielleicht jemand anderes feststellen, dass dies durch eine falsche Schreibweise wie diese verursacht wurde ...

1
Arturas M

Ich denke, Sie müssen Ihre Bibliotheken aktualisieren, damit Ihr VBA-Code funktioniert, wenn Sie MS Outlook verwenden

0
user3287522

Ich muss das hinzufügen, wenn der Modulname und der Subname gleich sind, haben Sie ein solches Problem. Ändern Sie den Modulnamen in mod_Test anstelle von "Test", was dem Sub entspricht. 

0
Kangqiao Zhao