automatische Moduleinbidung aus einem Modul heraus

Bild

Betrifft: automatische Moduleinbidung aus einem Modul heraus
von: Markus
Geschrieben am: 30.10.2003 10:44:28

Hallo Ihr,

ich möchte aus einem bestehenden Modul (z.B. Modul1.bas) eine weiteres Modul ("test.bas") einbinden. Dies ist möglich mittels:

Application.VBE.ActiveVBProject.VBComponents.Import("Test.bas")
(Dank an dieser Stelle RAnton).

Leider vergibt Excel an dieser Stelle dem einzubindenen Modul automatisch den Namen "Modul1" bzw., wie in diesem Fall, "Modul11", sofern es schon ein "Modul1" gibt.

Weiß jemand eine Möglichkeit, wie ich die Datei "test.bas" unter Ihren Namen einbinden kann.

Danke
Markus

Bild


Betrifft: AW: automatische Moduleinbidung aus einem Modul heraus
von: WernerB.
Geschrieben am: 30.10.2003 12:33:22

Hallo Markus,

bei mir funktioniert

'Einlesen von Verzeichnis:
sPath = ThisWorkbook.Path & "\"
ThisWorkbook.VBProject.VBComponents.Import sPath & "Test.bas"

'Löschen im Verzeichnis:
Kill sPath & "Macros.bas"


Viel Erfolg wünscht
WernerB.

P.S.: Das Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter (siehe Forums-FAQ).


Bild


Betrifft: Korrektur
von: WernerB.
Geschrieben am: 30.10.2003 12:36:59

Hallo Markus,

zum Löschen:
das im Verzeichnis zu löschende Modul muss natürlich die selbe Bezeichnung haben:

'Einlesen von Verzeichnis:
sPath = ThisWorkbook.Path & "\"
ThisWorkbook.VBProject.VBComponents.Import sPath & "Test.bas"

'Löschen im Verzeichnis:
Kill sPath & "Test.bas"


Gruß WernerB.


Bild


Betrifft: AW: automatische Moduleinbidung aus einem Modul he
von: Markus
Geschrieben am: 30.10.2003 12:47:47

Hallo Werner,

danke für den Tipp, aber Du hast mich wohl falsch verstanden.
Mit Deiner Methode kann ich zwar die Datei "test.bas" ansprechen und einbinden, aber erscheibt diese Datei dann NICHT unter "test.bas", sondern "Modulxx.bas"

Ich möchte aber gerne die Datei unter "test.bas" unter Module sehen...

Vielleicht hast Du ja noch einen anderen Tipp.

Markus


Bild


Betrifft: AW: automatische Moduleinbidung aus einem Modul he
von: WernerB.
Geschrieben am: 30.10.2003 13:25:36

Hallo Markus,

ich hatte Dich schon richtig verstanden. Mit meinem Makro, in dem u.a. auch zwei Module importiert werden, bleiben die beiden (vorher modifizierten) Modulbezeichnungen erhalten.
Allerdings werden diese in eine vom selben Makro neu erstellte Datei importiert, die naturgemäß vorher noch keine anderen Module beinhaltet.
Das von Dir geschilderte Verhalten kenne ich auch von daher, wenn man ein Modul manuell in eine Datei importiert, die bereits Module enthält.
Für dieses Problem habe ich leider keinen Lösungsansatz.


Gruß WernerB.


Bild


Betrifft: AW: automatische Moduleinbidung aus einem Modul he
von: Markus
Geschrieben am: 30.10.2003 14:40:21

Hallo Werner,

wir haben durch probieren eine Lösung gefunden. Z.Info:

Falls man ein Modul einbinden möchte und den Namen innerhalb der Arbeitsmappe selber vergeben möchte, kann man dies machen mit:

Application.VBE.ActiveVBProject.VBComponents.import("test.bas").Name = "PROGRAMM"

Hier wird die Datei "test.bas" importiert und heißt innerhalb der Arbeitsmappe "PROGRAMM"

Vielleicht kannst Du dies ja auch mal gebrauchen.

Vielen Danke noch einmal für die Beteiligung.

Gruß
Markus


Bild


Betrifft: AW: automatische Moduleinbidung aus einem Modul he
von: WernerB.
Geschrieben am: 30.10.2003 15:11:28

Hallo Markus,

vielen Dank für die Rückmeldung und den Hinweis bzw. Deine Lösung.
Vielleicht komme ich tatsächlich irgendwann einmal darauf zurück!


Gruß WernerB.


 Bild

Beiträge aus den Excel-Beispielen zum Thema " automatische Moduleinbidung aus einem Modul heraus"