Makros aus (Haupt) - Mappe verwenden

Bild

Betrifft: Makros aus (Haupt) - Mappe verwenden
von: Horsti
Geschrieben am: 05.09.2015 12:53:52

Hallo allerseits,
Ich möchte Makros, welche in verschiedenen Mappen verwendet werden, in einer Haupt-Mappe abspeichern und sie von der entsprechenden Mappe starten. Ich weiß dass es so etwas gibt, aber finde keinen Ansatz mit fachlichen Bezeichnungen, wonach ich recherchieren kann. Die Haupt-Mappe hat, so weit ich weiß, hinten nicht kein*.xls, so wie die üblichen Dateien. Wenn mir jemand Hinweise, Links o.ä. geben könnte, um mich da reinzufitzen, wäre ich dankbar.
Gruß
Horsti

Bild

Betrifft: AW: Makros aus (Haupt) - Mappe verwenden
von: Hajo_Zi
Geschrieben am: 05.09.2015 12:58:27
speichere Sie in der Personl.xls


Bild

Betrifft: AW: Makros aus (Haupt) - Mappe verwenden
von: Horsti
Geschrieben am: 05.09.2015 14:31:12
Hallo Hajo,
danke. Nun kommen die Problemchen.
Wenn ich eine gewöhnliche Mappe öffne (die Makros habe ich alle gelöscht und in die personsl.xls gepackt)werden in "DieseArbeitsmappe" alle möglichen Makros abgeklappert, die bei Start ausgeführt werden sollen. Da kommt promt der Hinweis: Sub oder Funktion nicht definiert, weil, die gibt es ja nicht mehr in der normalen Mappe. Gehört hinter diesen Makros noch irgend ein Verweis, dass er in der personsl.xls zu finden ist? Oder wie macht man es?
Gruß Horsti

Bild

Betrifft: AW: Makros aus (Haupt) - Mappe verwenden
von: Hajo_Zi
Geschrieben am: 05.09.2015 14:45:08
ich würde vermuten
Application.Run "PERSONL.XlS!MarkBerIdenfiz"
Gruß Hajo

Bild

Betrifft: AW: Makros aus (Haupt) - Mappe verwenden
von: Horsti
Geschrieben am: 05.09.2015 15:00:30
aja, also Application.Run "PERSONL.XlS!Makrosowieso".
Da ich so an die Tausend Makros habe - gibt es da evt. eine Möglichkeit vor die entsprechenden Makros das "PERSONL.XlS! schreiben zu lassen?
Gruß Horsti

Bild

Betrifft: AW: Makros aus (Haupt) - Mappe verwenden
von: Daniel
Geschrieben am: 05.09.2015 15:27:45
HI
der VBA-Editor hat eine ERSETZEN-Funktion.
damit könntest du beispielsweise Makrosowieso im ganzen Code einer Datei (Auswahl "projektweit") durch PERSONL.XlS!Makrosowieso ersetzen lassen.
oder wenn du vorher die Makros mit Call Makrosowieso gestartet hast, kannst du jetzt für alle Makros gleichzeitig das Call durch Application.Run "PERSONL.XLS! ersetzen (wobei dir dann wahrscheinlich das abschliessende " fehlt.
der VBA-Quellcode ist eigentlich ein einfacher Text.
diesen kannst du auch mit jedem beliebigen Textverarbeitungsprogramm erstellen oder überarbeiten und dann in den VBA-Editor zurückkopieren.
du kannst sogar in einem Exceltabellenblatt den Quellcode erstellen und hierbei auch Formeln und ähnliches verwenden.
Gruss Daniel

Bild

Betrifft: AW: Makros aus (Haupt) - Mappe verwenden
von: Horsti
Geschrieben am: 05.09.2015 15:38:30
Hallo Daniel,
danke. An die Variante mit Call dachte ich schon. Aber ich habe fast alle Makros ohne das Call oder Application.Run davorsteht und laufen auch. Deshalb war die Frage, ob es mit einem VBA-Code z.B. die Möglichkeit gibt, jegliche Makros von den geschriebenen Codes zu unterscheiden und dann das entsprechende ran- oder dahinter zusetzen.
Gruß Horsti

Bild

Betrifft: AW: Makros aus (Haupt) - Mappe verwenden
von: Daniel
Geschrieben am: 05.09.2015 16:04:45
Hi
nein, gibt es nicht.
du musst dann im Prinzip jeden Makronamen duch Application.Run "MakroName" ersetzen.
um das autmatisch für alle Makros zu machen, gibt es keine fertige Funktion.
du müsstest als ein Makro schreiben, welches deine Makrotexte durchgeht und die entsprechenden Ersetzungen durchführt.
hierzu gibts im alten Office-Loesung.de - Forum ein Tutorial "Code mit Code manipulieren"
wenn dir das zu komplex ist, kannst du dir den Code auch Modulweise in ein Tabellenblatt kopieren, dort dann per einfachem Excelmakro die Änderungen durchführen und dann den Code wieder zurück ins Modul kopieren.
Das Makro dazu wirst du dir wahrscheinlich selber schreiben müssen, weil das wird wahrscheinlich zu aufwendig, als dass dir das jemand für lau hier im Forum macht.
Da fällt mir dann auch noch eine mögliche Alternative ein:
hast du schon mal versucht, die Makros in ein AddIn zu schreiben und dieses zu installieren?
zumnidest die selbstgeschriebenen Funktionen stehen dann in Excel wie normale Funktionen in allen Dateien zu verfügung und können dort ohne Angabe der Quelldatei direkt verwendet werden.
Könnte ja für einfache Makros genauso funktionieren.
ich hab das zwar auch noch nie gemacht und kann dir also auch nicht konkret sagen wie es funktioniert, aber du hast mal ein Stichwort nach dem du suchen kannst.
Gruss Daniel

Bild

Betrifft: AW: Makros aus (Haupt) - Mappe verwenden
von: Horsti
Geschrieben am: 05.09.2015 16:26:57
Hallo Daniel,
die AddIN- Variante könnte wirklich interessant sein. Ich habe es aber noch nicht versucht.
Danke erstmal für deine Ausführungen.
Gruß Horsti

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Makros aus (Haupt) - Mappe verwenden"