Hallo, gibt es eine Möglichkeit, dass Word beim abspeichern eines Dokumentes dem Dateinamen Datum und Name des "Veränderers" einfügt? Hier arbeiten oft mehrere Leute hintereinander an einem Dokument und ich bin immer ein paar Tage nicht da, sodass ich Dokumente zuhause bearbeite und dann einfach auf den Rechner ziehe. So passiert es, dass sich eine Veränderung eines Kollegen dann in Rauch auflöst. Habt Ihr nen Tipp? Gruß Tim Förderer
Office - Word, Excel und Co. 9.753 Themen, 41.598 Beiträge
Hallo Tim,
Das wäre entweder etwas anders (für explizite Doks) mit der Versionsführung (s. Menü Datei, Vorsicht bei automat. Versionserstellung => Dateigröße), Änderungsverfolgung oder - bedingt - mit VBA-Programmierung möglich, wobei sich dann u.a. die Fragen stellen würden
- nur in best. Dok, allen einer best. Vorlage, allen?
- Windows-Anmeldename oder in Word eingetragener Benutzername?
- bei jedem Speichern?
- Was ist mit bereits angehängten Angaben => Dateinamenslänge!
Vermutlich sollten aber eher andere Mechanismen bzgl. gemeinsamer Dokumentbearbeitung und/oder deines Kopiervorgangs in Betracht gezogen werden, denn wie würdest du denn vorgehen, um die unterschiedlichen Änderungen zusammen zu führen?
Gruß
Uli
Hi Uli,
nur in bestimmten Dokumenten den Windows Anmeldenamen also z.B. DokumentTim03.05.2003.doc
Nicht bei jedem speichern sonst ist nach einem Arbeitstag die Platte voll. So ne Art zusätzliches Speichern (in meiner Computer-Naivität stelle ich mir neben Speichern, Speichern unter, einene Button "Speichern mit Dartum oder so". Gibts da was?
Gruß Tim
Hallo Tim,
Probiere es mit einer Routine (in normal.dot oder globalem Add-In) wie folgt:
Sub SpeichernMitUsernameUndDatum()
If Documents.Count Const TITEL = "Dokument speichern mit Username und Datum"
Dim objDok As Document
Dim strOldName As String, strNewName As String, strPath As String
Dim blnNoSaveAs As Boolean
On Error Resume Next
Set objDok = ActiveDocument
With objDok
strPath = .Path
If strPath = "" Then
MsgBox Chr(34) & .Name & Chr(34) & " wurde noch nicht gespeichert." _
& vbCrLf & vbCrLf & "Speichern Sie das Dokument zunächst mit normalen Namen.", vbInformation, TITEL
Dialogs(wdDialogFileSaveAs).Show
Exit Sub
End If
strOldName = .Name
If InStr(strOldName, " " & Environ("USERNAME") & " " & Format(Date, "dd.mm.yyyy")) Then
strNewName = strOldName
Else
strNewName = Left(.Name, Len(.Name) - 4)
' sollte Environ("USERNAME") nicht zuverlässig sein, müsste eine WIN-API her
strNewName = strNewName & " " & Environ("USERNAME") & " " & Format(Date, "dd.mm.yyyy") & Right(strOldName, 4)
End If
If Right(strPath, 1) Application.PathSeparator Then strPath = .Path & Application.PathSeparator
strNewName = strPath & strNewName
If Dir(strNewName) "" Then
If MsgBox(Chr(34) & strNewName & Chr(34) & " existiert bereits." _
& vbCrLf & vbCrLf & "Soll die Datei überschrieben werden?", vbQuestion + vbYesNo + vbDefaultButton2, TITEL) _
= vbNo Then blnNoSaveAs = True
End If
If Not blnNoSaveAs Then .SaveAs strNewName ' ggf. weitere Parameter
If Err 0 Then
MsgBox "Es ist ein Fehler aufgetreten:" _
& vbCrLf & vbCrLf & Err.Description, vbCritical, TITEL
End If
End With
End Sub
Bedenke ggf., dass so diese Version das akt. Dok wird und die vorherige ggf. nicht mit aktuellem Inhalt gespeichert ist (was aber noch einbaubar wäre).
Wenn das gut funktioniert, kannst du dir für das Makro über "Extras- Anpassen - Befehle - Makros" einen Button und/oder Menüpunkt anlegen und diesen ggf. noch anpassen. Diese Anpassung sollte in der gleichen *.dot erfolgen (Listenfeld im Dialog beachten)
Gruß
Uli