Wie kann man in Word 8.0 einen Speicherort für Dateien mit einer
bestimmten Dokumentenvorlage festlegen.
z.B. alle Dokumente die auf BANK.DOT basieren sollen in C:BANK
gespeichert werden. Das kannst Du über zwei Makros lösen, die die Befehle Speichern sowie
SpeichernUnter ersetzt. Kopiere dazu die folgenden Makros in Deine
Normal.dot
Zunächst das Ersatzmakro für Speichern:
Public Sub DateiSpeichern()
If ActiveDocument.Path = „“ Then
ActiveDocument.Save
Else
DateiSpeichernUnter
End If
End Sub
Dieses Makro prüft, ob das Dokument schon einmal gespeichert wurde,
in dem es die Path-Eigenschaft auswertet – nur Dokumente, die noch
nie gespeichert worden sind, haben eine leere Path-Eigenschaft.
Wurde das Dokument schon einmal gespeichert, wird es einfach erneut
gespeichert, sonst wird das benutzerdefinierte SpeichernUnter-Makro
aufgerufen. Dieser kleine Umweg muß leider sein, weil sonst das be-
nutzerdefinierte Makro nicht über den Speichern-Button der Symbol-
leiste gestartet werden würde.
Nun zum SpeichernUnter-Makro. In diesem muß ein Zusammenhang zwischen
dem Namen der Vorlage und dem Speicher-Pfad hergestellt werden. Dazu
gibt es verschiedene Möglichkeiten wie z.B. eine ini-Datei oder die
Registry oder …
Ich habe mich hier jetzt für die Dokument-Eigenschaften entschieden.
Dazu mußt Du in jeder Vorlage eine Eigenschaft mit dem Namen „SPfad“
anlegen, in die Du den gewünschten Pfad einträgst. Das Makro sieht
dann so aus:
Public Sub DateiSpeichernUnter()
With Dialogs(wdDialogFileSaveAs)
.Name = GetPfad()
.Show
End With
End Sub
Die Funktion GetPfad() liefert den in der Eigenschaft angegebenen Pfad
oder einen Default-Pfad, wenn die Eigenschaft nicht existiert.
Private Function GetPfad() As String
On Error Resume Next
GetPfad = ActiveDocument.CustomDocumentProperties(„SPfad“).Value
If GetPfad <> „“ Then
If Right(GetPfad, 1) <> „“ Then GetPfad = GetPfad & „“
Else
GetPfad = „C:Default“
End If
End Function
Hinterlasse einen Kommentar
Du musst angemeldet sein, um einen Kommentar schreiben zu können.