Modulname auslesen?!

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Modulname auslesen?!
von: Andre
Geschrieben am: 16.03.2005 12:24:50
Hi zusammen,
mit folgendem Befehl kann ich den Namen des Moduls auslesen, in der sich die momentane Prozedur befindet:
Application.VBE.ActiveCodePane.CodeModule.Parent.Name
Schön und gut, aber irgendwie will das nicht funktionieren, wenn man diese Zeile aus dem auto_open-Ereignis heraus aufruft!
Das heißt, das Makro


Sub test()
msgbox Application.VBE.ActiveCodePane.CodeModule.Parent.Name
End Sub

funktioniert nach Aufruf über eine Schaltfläche z.B., aber nicht folgendermaßen:

Sub auto_open()
msgbox Application.VBE.ActiveCodePane.CodeModule.Parent.Name
End Sub

Auch wenn erste Makro durch das auto_open-Ereignis aufgerufen wird haut es nicht mehr hin:

Sub auto_open()
call test
End Sub


Sub test()
msgbox Application.VBE.ActiveCodePane.CodeModule.Parent.Name
End Sub

Weiß jemand ob ich das Problem irgendwie lösen kann?
Gruß Andre
Bild

Betrifft: AW: Modulname auslesen?!
von: Domke, Frank
Geschrieben am: 16.03.2005 12:35:31
Hallo Andre,
wenn Du das Modul "Private Sub Workbook_Open()" aus "DieserArbeitsmappe" aufrufst, dann weist Du doch, dass das Modul "DieserArbeitsmappe" heißt, oder wo steht Deine Prozedur?
Was willst Du mit der Ausgabe erreichen?
Gruß
Frank.
Bild

Betrifft: AW: Modulname auslesen?!
von: Frank Sohn
Geschrieben am: 16.03.2005 12:46:38
Hallo,

auto_open ist zu früh!
ActiveCodePane ist "nothing" ! logischerweise meckert Excel

Gruss
Franky
Bild

Betrifft: AW: Modulname auslesen?!
von: bst
Geschrieben am: 16.03.2005 12:53:22
Auch Hallo,
> mit folgendem Befehl kann ich den Namen des Moduls auslesen,
> in der sich die momentane Prozedur befindet:

Du irrst. Siehe VBA-Hilfe:
Gibt das aktive oder letzte aktive CodePane-Objekt zurück oder legt es fest. Schreib-/Lesezugriff.
Hat nichts damit zu tun wo Dein Teil liegt.
Und, siehe Frank's Antwort. Versuch's auch mal hiermit:
MsgBox Application.VBE.ActiveCodePane Is Nothing
cu, Bernd
Bild

Betrifft: AW: Modulname auslesen?!
von: Andre
Geschrieben am: 16.03.2005 13:26:11
Danke euch.
Mein Problem ist, das meine Makros alle auf dem auto_open-Ereignis aufbaut (sprich, auto_open ruft die erste UF und man bewegt sich nur noch auf Basis dieser UF!).
Der Befehl funzt aber nicht, wenn das nachfolgende Makro in dem dieser steht aus auto_open aufgerufen worden ist.
Weiß denn jemand Rat, wie ich trotzdem den Modulnamen auslesen kann?
Ich würde gerne meine Fehlerroutine "vereinfachen" und den Namen des Moduls (am liebsten auch den Namen des Makros!?) an eine Variabel übergeben.
Gruß Andre
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Array sortieren spezial"