Microsoft Excel

Herbers Excel/VBA-Archiv

Pfad von Vorlage bestimmen | Herbers Excel-Forum


Betrifft: Pfad von Vorlage bestimmen von: JogyB
Geschrieben am: 02.12.2009 12:14:57

Hallo zusammen,

wenn ich eine xlt-Datei öffne, gibt es dann eine Möglichkeit, den Dateinamen inkl. Pfad der Vorlagendatei mittels VBA herauszufinden?

Es geht mir darum, dass die Vorlagendatei in regelmäßigen Abständen aktualisiert werden muss, das soll aber nur passieren, wenn auch wirklich die korrekte Vorlage geöffnet wurde.

Danke und Gruss,
Jogy

  

Betrifft: AW: Pfad von Vorlage bestimmen von: Tino
Geschrieben am: 02.12.2009 12:28:34

Hallo,
ich glaube wenn du eine Vorlage normal öffnest hat Excel keine Beziehung mehr zur eigentlichen Vorlagedatei mehr.
Du könntest aber den Pfad und den Dateinamen der Vorlage in eine Zelle schreiben.

In etwa so.

kommt als Code in DieseArbeitsmappe

Option Explicit 
 
Private Sub Workbook_BeforeClose(Cancel As Boolean) 
With ThisWorkbook 
    If ThisWorkbook.Name Like "*.xlt" Then 
     .Sheets("Tabelle1").Range("A1") = .FullName 
     .Save 
    End If 
End With 
End Sub 
 
 



Gruß Tino


  

Betrifft: AW: Pfad von Vorlage bestimmen von: JogyB
Geschrieben am: 02.12.2009 13:03:44

Hi.

Könnte ich machen, nur hilft das zum einen nicht, wenn jemand anders das kopiert, zum anderen müßte ich bei jeder alten Version der Vorlage die Updatefunktion rausnehmen, damit ich beim Testen nicht aus Versehen was überschreibe.

Vielleicht hat ja jemand noch eine Lösung, ansonsten muss ich mal schauen, wie ich das mache.

Gruss, Jogy


  

Betrifft: AW: Pfad von Vorlage bestimmen von: Luschi
Geschrieben am: 02.12.2009 17:09:05

Hallo JogyB,

im Gegensatz zu WinWord gibt es in Excel bis 2003 überhaupt keine Verbindung zwischen der Vorlage und der daraus neu entstehenden xls-Datei.
Selbst der Lösungsvorschlag von Tino funktioniert nicht, da es in der xlt-Datei kein Ereignis gibt , daß angestoßen wird, wenn aus der Vorlagendatei eine neue xls-Datei erstellt wird.
Merkwürdigerweise gibt es im eingebauten 'BuiltinDocumentProperties'-Objekt jeder Arbeitsmappe eine Eigenschaft 'Template' (also Vorlage), doch dieser Wert ist leer und wird von Excel nicht gepflegt.
Hier könnte nur eine AddIn-Lösung helfen, wo über den Datei-Öffnen-Dialog die xlt-Vorlagendatei ausgewählt wird und dann vom AddIn die Eigenschaft 'BuiltinDocumentProperties-Template-Eigenschaft' der neuen Datei gefüllt wird.
An solchen Kleinigkeiten merkt man, daß Word und Excel nur Halbgeschwister sind und die Entwicklerteams hier eigene Wege gehen.
Ich teste das Ganze mal heute Abend mit Excel 2007, aber ich befürchte, daß auch da das gleiche Dilemma vorliegt.

Gruß von Luschi
aus klein-Paris


  

Betrifft: AW: Pfad von Vorlage bestimmen von: Tino
Geschrieben am: 02.12.2009 18:04:42

Hallo,
ich dachte auch mehr daran den Pfad in die Zelle zu schreiben wenn die Vorlage
bearbeitet oder angelegt wird.
Dies schützt natürlich nicht davor wenn die xlt verschoben und danach nicht nochmal bearbeitet wird.

Gruß Tino


  

Betrifft: AW: Pfad von Vorlage bestimmen von: JogyB
Geschrieben am: 03.12.2009 10:20:28

Hi.

Danke für die Infos... ich habe es jetzt so gelöst, dass ich eine versteckte Datei mit der Versionsnummer als Dateinamen im Vorlagenverzeichnis anlege und mittels der überprüfe, ob die korrekte Dateiversion geladen ist. Wenn ja, dann gibt es ein Update, wenn nein, dann nicht.

Das ist keine 100%ige Lösung, aber da die Nutzer an der Datei eh nichts ändern können (ja, ich weiß, die Sicherungsmechanismen lassen sich umgehen, aber mir geht es nicht um Böswilligkeit, sondern um Versehen) und auch nur bei zwei Nutzern (inkl. mir) das Update überhaupt ausgeführt wird, sollte das ausreichen. Ging mir hauptsächlich darum, dass ich nicht mal eine - bei mir lokal liegende - alte Version ausführe und damit die neue Version im Netzwerk überschreibe.

Gruss, Jogy


Beiträge aus den Excel-Beispielen zum Thema "Pfad von Vorlage bestimmen"