Zugriff auf Konstanten in anderem Modul
21.06.2005 15:37:34
Martin
konnte folgendes Problem nicht durch Recherche lösen:
Ich möchte aus alten XLS-Dateien mit VB-Programmen Daten übernehmen. In jedem VBA-Programm gibt es eine Konstante auf Modul-Ebene mit der Versions-Nummer.
z.B.
Const myVersion = "V7b"
Ich möchte diese Konstante auslesen, um auf Versionsunterschiede reagieren zu können. Die Module heissen in allen Varianten gleich ("Modul1").
Der einfachste Ansatz:
Dim WBnew As Workbook, WBold As Workbook
Set WBnew = ActiveWorkbook ' MyVersion = "V8"
NewVersion = MyVersion
Workbooks.Open "test.xls", False, True
Set WBold = ActiveWorkbook ' MyVersion = "V7b"
OldVersion = MyVersion
Liefert auch für OldVersion "V8"
Alle Versuche genau auf die alte Version zuzugreifen, ergibt einen Laufzeitfehler 438 'Objekt unterstützt diese Eigenschaft oder Methode nicht!'
OldVersion = WBold.MyVersion
OldVersion = WBold.VBProject.MyVersion
OldVersion = WBold.VBProject.VBComponents("Modul1").MyVersion
. . .
Vielleicht kann mir ja jemand das Brett vorm Kopf wegreissen.
Vorab vielen Dank,
Martin