Access Modul umbenennen
Ich möchte ein Modul in Access via VBS umbenennen.
Hallo Gemeinde...
Das Problem ist wie folgt:
Ich habe eine Datenbank mit einem Modul "Global" - hier sind Pfade hinterlegt die auf den Server zeigen ....
Jetzt möchte ich dieses Modul gerne gegen ein anderes Modul austauschen.
Das ganze mit einem VB-Script!
Ich Google schon den halben Nachmittag, kann aber nichts brauchbares finden.
Habe folgende Wege probiert:
adodb.connection
adox.catalog
Auf die Tabellen zu kommen ist kein Problem! Aber an die Module komm ich zum verrecken nicht ran....
Könnte es über das access.application Objekt gehen. Habe da aber gar keine Idee....
Ein Tipp würde mir schon reichen....
Danke.
MfG Sam
Das Problem ist wie folgt:
Ich habe eine Datenbank mit einem Modul "Global" - hier sind Pfade hinterlegt die auf den Server zeigen ....
Jetzt möchte ich dieses Modul gerne gegen ein anderes Modul austauschen.
Das ganze mit einem VB-Script!
Ich Google schon den halben Nachmittag, kann aber nichts brauchbares finden.
Habe folgende Wege probiert:
adodb.connection
adox.catalog
Auf die Tabellen zu kommen ist kein Problem! Aber an die Module komm ich zum verrecken nicht ran....
Könnte es über das access.application Objekt gehen. Habe da aber gar keine Idee....
Ein Tipp würde mir schon reichen....
Danke.
MfG Sam
Please also mark the comments that contributed to the solution of the article
Content-Key: 166361
Url: https://administrator.de/contentid/166361
Printed on: April 20, 2024 at 02:04 o'clock
6 Comments
Latest comment
Moin SamTrex,
ich denke, da liegt ein Missverständnis vor.
Das Access-Modul "<Global>" (so wird es z.B. im Objektkatalog in der Modulansicht angezeigt) ist kein 57 Zeilen langes VBA-Skript, sondern ein virtuelles Konstrukt, eine gedankliche Zusammenfassung aller Konstanten, Properties und (einiger weniger) Methoden und Prozeduren, die mit dem Schlüsselwort Global deklariert wurden.
Unter anderem sind dort jede Menge Access-VBA-Konstanten definiert, aber auch "global verfügbare" Prozeduren/Methoden/Funktionen wie GetWeekDay() oder Year().
Dem entsprechend kannst du dieses "Modul namens Global" nicht austauschen, umbenamsen oder grün einfärben.
Sondern musst einzeln alle "Global" deklarierten Variablen dort umbenennen, wo du sie definiert hast.
Wenn du sie also in einem Modul "MeineConnections" als "Global dbverbindung1" oder "Global servernameProduktiv" stehen hast, dann kannst und musst du in diesem Modul ändern oder dieses Modul komplett ersetzen, wenn das mehr deiner Mentalität entspricht.
Grüße
Biber
ich denke, da liegt ein Missverständnis vor.
Das Access-Modul "<Global>" (so wird es z.B. im Objektkatalog in der Modulansicht angezeigt) ist kein 57 Zeilen langes VBA-Skript, sondern ein virtuelles Konstrukt, eine gedankliche Zusammenfassung aller Konstanten, Properties und (einiger weniger) Methoden und Prozeduren, die mit dem Schlüsselwort Global deklariert wurden.
Unter anderem sind dort jede Menge Access-VBA-Konstanten definiert, aber auch "global verfügbare" Prozeduren/Methoden/Funktionen wie GetWeekDay() oder Year().
Dem entsprechend kannst du dieses "Modul namens Global" nicht austauschen, umbenamsen oder grün einfärben.
Sondern musst einzeln alle "Global" deklarierten Variablen dort umbenennen, wo du sie definiert hast.
Wenn du sie also in einem Modul "MeineConnections" als "Global dbverbindung1" oder "Global servernameProduktiv" stehen hast, dann kannst und musst du in diesem Modul ändern oder dieses Modul komplett ersetzen, wenn das mehr deiner Mentalität entspricht.
Grüße
Biber
Moin SamTrex,
okay.... das Ziel wird langsam klarer.
Also - klar, die Access.Module kannst du natürlich weder sehen noch ändern, wenn du irgendeine AdoDB-Connection gegen eine "Datenbank" aufmachst.
Dazu müsstest du (wahrscheinlich) ein CreateObject() auf das Object Access.Application aufmachen und in dessen Hierarchiebaum abwärts wackeln...
->Möchte ich aber gar nicht weiter verfolgen eigentlich.
Weil... für mich wäre doch die Konsequenz, wenn du da halbwegs data driven dynamisch die jeweils "gültigen" Quellen/Servernamen/Tabellennamen zuspielen willst -> Pack es raus aus den Modulen in Parameter- oder Ini-Dateien.
Ist doch eh kein Stil unter erwachsenen Codern, Datei und Servernamen fest in einer Appz zu verdrahten.
Du wirst doch wohl ein paar Namen aus einer Paar-Zeilen-Plaintextdatei auslesen können, oder?
Na also...
Grüße
Biber
okay.... das Ziel wird langsam klarer.
Also - klar, die Access.Module kannst du natürlich weder sehen noch ändern, wenn du irgendeine AdoDB-Connection gegen eine "Datenbank" aufmachst.
Dazu müsstest du (wahrscheinlich) ein CreateObject() auf das Object Access.Application aufmachen und in dessen Hierarchiebaum abwärts wackeln...
->Möchte ich aber gar nicht weiter verfolgen eigentlich.
Weil... für mich wäre doch die Konsequenz, wenn du da halbwegs data driven dynamisch die jeweils "gültigen" Quellen/Servernamen/Tabellennamen zuspielen willst -> Pack es raus aus den Modulen in Parameter- oder Ini-Dateien.
Ist doch eh kein Stil unter erwachsenen Codern, Datei und Servernamen fest in einer Appz zu verdrahten.
Du wirst doch wohl ein paar Namen aus einer Paar-Zeilen-Plaintextdatei auslesen können, oder?
Na also...
Grüße
Biber