Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1276to1280
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

DocumentBeforeSave Word

DocumentBeforeSave Word
Markus
Hallo allerseits,
ich habe ein Anliegen, welches in Excel wahrscheinlich einfacher zu lösen ist, als in Word.
Diesmal möchte ich ein Makro in Word ausführen, was bei "Speichern unter" ein Makro ausführt, welches vor dem eigentlichen Speichern den eingegebenen Namen prüft. Und den Speichervorgang abbrechen kann, wenn der Dateiname = "Dokument1" oder "Bitte umbennen!" ist. Ist das in Word möglich?
Dies ist mein bisheriger Code:
Private Sub Document_New()
Set thisApp.appWord = Word.Application
Dim test
test = ActiveDocument.Name
1:
With Dialogs(wdDialogFileSaveAs)
.Name = "Bitte umbenennen!"
.Show
End With
If ActiveDocument.Saved = False Then
If MsgBox("Möchten Sie das Dokument verwerfen?", vbYesNo, "Dokument verwerfen?") = vbYes Then
ActiveDocument.Close savechanges:=False
Else
GoTo 1
End If
End If
ActiveDocument.Close

Vielen Dank im Voraus für eure Unterstützung!!

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: DocumentBeforeSave Word
28.08.2012 19:13:16
fcs
Hallo Markus,
Word kennt kein Before_Save-Ereignis. Also kann man es auch nicht initiieren.
In einer Worddokumentvorlage muss das entsprechende Makro, das das Speichern direkt nach dem Neu-Anlegen des Dokuments erzwingen soll etwa wie folgt aussehen.
Als vorgegebenen Dateinamen sollte man den Anfang des gewünschten Dateinamens vorgeben ggf. ergänzt um eine individuelle Kennzeichnung (z.b. Datum-Zeit im Format JJJJ-MM-DD mmhhss) oder keinen Dateinamen.
Gruß
Franz
'Code unter "ThisDocument" der Word-dokumentvorlage
Option Explicit
Private Sub Document_New()
Dim test, strName As String
test = ActiveDocument.Name
1:
With Application.FileDialog(msoFileDialogSaveAs)
.Title = "Bitte neuen Dateinamen für Word-Dokumet wählen/eingeben"
.InitialFileName = "MyFileName" & Format(Now, "YYYY-MM-DD hhmmss")
If .Show = -1 Then
strName = .SelectedItems(1)
strName = Mid(strName, InStrRev(strName, "\") + 1)
strName = Left(strName, InStrRev(strName, ".doc") - 1)
If strName = test Then
If MsgBox("Gewählter Dateiname: " & strName & vbLf _
& "Unzulässiger Dateiname. Neueingabe?", vbYesNo, "Unzulässiger Dateiname") = vbYes  _
Then
GoTo 1
Else
ActiveDocument.Close savechanges:=False
End If
Else
ActiveDocument.SaveAs FileName:=.SelectedItems(1), addtorecentfiles:=True
End If
Else
If MsgBox("Möchten Sie das Dokument verwerfen?", vbYesNo, "Dokument verwerfen?") = vbYes  _
Then
ActiveDocument.Close savechanges:=False
Else
GoTo 1
End If
End If
End With
'  ActiveDocument.Close
End Sub

Anzeige
AW: DocumentBeforeSave Word
29.08.2012 15:22:52
Markus
Hallo Franz,
super, hab deinen Code ausprobiert und er macht genau das was ich benötige!! :)
Vielen, vielen Dank!!!
Viele Grüße
Markus

AW: DocumentBeforeSave Word
29.08.2012 15:24:44
Markus
Hallo Franz,
super, ich habe deinen Code ausprobiert und er macht genau das was ich benötige! :)
Vielen, vielen Dank!!
Viele Grüße
Markus

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige