meierjo
Goto Top

Excel-Vorlage über VBA aufrufen

Hallo

Ich lege auf dem Desktop eine Excel-Mappe mit Makros als Vorlage ab(zB Mappe.xltm)
Wenn ich nun diese Datei pr doppelclick öffne, erstellt Excel eine neue Datei namens Mappe1.xlsm.

Gibt's eine Möglichkeit, aus Mappe1.xlsm mit VBA die Quelldatei Mappe.xltm zu öffnen?
Hat die Arbeitsmappe irgendwie eine Verbindung zur Vorlage?

Danke Gruss meierjo

Content-ID: 2492510767

Url: https://administrator.de/contentid/2492510767

Ausgedruckt am: 08.11.2024 um 09:11 Uhr

MirkoKR
MirkoKR 13.04.2022 um 15:16:16 Uhr
Goto Top
Hi.

Das klingt etwas unklar...

Die per Doppelklick aus der xltm erzeugte xlsm ist ja eine Kopie der xltm .

Deshalb ja xltm - t= Template / Vorlage ...

.. wozu da noch eine vba-Verbindung aus der xlsm zur Original- xltm?

.
Meierjo
Meierjo 13.04.2022 um 15:40:42 Uhr
Goto Top
Hallo

Ich lege die Mappe.xltm an, damit mehrere User gleichzeitig drauf zugreifen können, und keine Felhermeldung a là "Diese Arbeitsmappe wird bearbeitet von ...."
Und Zugriff auf die Quelle benötige ich, weil ich zb mehrere dieser Dateien nebeneinander öffnen will. Wenn ich dies via VBA erledigen kann, muss ich nicht immer mühsam alle Fenster verkleinern, um die Quelldatei doppelclicken zu können
Ich hoffe, mein Vorhaben ist nun verständlicher

Gruss
1915348599
1915348599 13.04.2022 aktualisiert um 15:44:31 Uhr
Goto Top
Nutze die Workbooks.Add Methode und übergebe den Templatepfad als Parameter
https://docs.microsoft.com/de-de/office/vba/api/excel.workbooks.add
Workbooks.Add "c:\pfad\template.xltm"  
Meierjo
Meierjo 13.04.2022 um 15:50:58 Uhr
Goto Top
Hallo Pretty

Danke für die Rückmeldung.
Diese Methodeist mir bekannt. Problem dabei ist nur, wenn die Datei wo anders hin gespciehrt wird (zb von einem anderen Benutzer im Netzwerk), muss der Template-Pfad händisch geändert werden. Dies wollte ich eigentlich vermeiden

Gruss
1915348599
1915348599 13.04.2022 aktualisiert um 15:57:33 Uhr
Goto Top
Zitat von @Meierjo:

Hallo Pretty

Danke für die Rückmeldung.
Diese Methodeist mir bekannt. Problem dabei ist nur, wenn die Datei wo anders hin gespciehrt wird (zb von einem anderen Benutzer im Netzwerk), muss der Template-Pfad händisch geändert werden. Dies wollte ich eigentlich vermeiden

Gruss

Kannst du ja automatisch mit dem FileSystemobject ermitteln ...
MirkoKR
MirkoKR 13.04.2022 um 16:00:51 Uhr
Goto Top
Zitat von @Meierjo:

Hallo Pretty

Diese Methodeist mir bekannt. Problem dabei ist nur, wenn die Datei wo anders hin gespciehrt wird (zb von einem anderen Benutzer im Netzwerk), muss der Template-Pfad händisch geändert werden. Dies wollte ich eigentlich vermeiden


Dein Anliegen ist [mir] immer noch nicht ganz klar!

Es geht um eine Original.xltm oder mehrere?

Warum sollten/dürfen User die Original.xltm woanders hin speichern wollen/dürfen? ...

Gibt's eine Möglichkeit, aus Mappe1.xlsm mit VBA die Quelldatei Mappe.xltm zu öffnen?

Ich lege die Mappe.xltm an, damit mehrere User gleichzeitig drauf zugreifen können, und keine Felhermeldung a là "Diese Arbeitsmappe wird bearbeitet von ...."

... mit der Erlaubnis wäre dein Konzept doch hinfällig?
Meierjo
Meierjo 13.04.2022 um 16:11:12 Uhr
Goto Top
Hallo

Kannst du ja automatisch mit dem FileSystemobject ermitteln ...

Wie kann ich damit den Pfad der Quelle ermitteln? Ist mir nicht bekannt

Gruss
Meierjo
Meierjo 13.04.2022 um 16:13:00 Uhr
Goto Top
Hallo

Es geht um eine Original.xltm oder mehrere?
Ja, es geht um eine xltm Datei

Warum sollten/dürfen User die Original.xltm woanders hin speichern wollen/dürfen? ...
Kann ich ja nicht verbieten, dass sie diese Datei zb bei sich auf den Desktop kopieren --> und somit hat sich der Pfad zur Quelle schon geändert

Gruss
MirkoKR
Lösung MirkoKR 13.04.2022 aktualisiert um 16:32:02 Uhr
Goto Top
Zitat von @Meierjo:

Hallo

Es geht um eine Original.xltm oder mehrere?
Ja, es geht um eine xltm Datei

Warum sollten/dürfen User die Original.xltm woanders hin speichern wollen/dürfen? ...
Kann ich ja nicht verbieten, dass sie diese Datei zb bei sich auf den Desktop kopieren --> und somit hat sich der Pfad zur Quelle schon geändert

Gruss

Naja, wenn jeder sich eine auf den Desktop kopieren darf, und etwas an der Original.xltm geändert wird, dann ost dein Versions-Chaos perfekt...

... weil dann sicherlich keiner nachschaut ob sich an der Original - Original.xltm was geändert hat.

Es sollte daher allenfalls eine Verknüpfung zur Original.xltm auf dem Desktop liegen ...

... oder eine Verknüpfung zum Ordner mit der Original.xltm ...

.
1915348599
Lösung 1915348599 13.04.2022 aktualisiert um 16:45:20 Uhr
Goto Top
Leg da einfach ein VBS hin und erzeuge damit die einzelnen Mappen aus der Vorlage, dort hast du automatisch den aktuellen Skriptpfad.
scriptdir = CreateObject("Scripting.Filesystemobject").GetParentFolderName(WScript.ScriptFullName)