ich möchte in ein Word Dokument ein Datum einfügen. Datums-/Feldfunktion kenne ich.
Allerdings möchte ich nicht das aktuelle Datum einfügen, sondern eines, das einige Tage in der Vergangenheit liegt. Also: date minus X.
Bisher habe ich noch keinen Hinweis, ob oder wie das geht.
wie das in Word funktionieren soll, konnte ich leider nicht rauskriegen. Ich würde aber diese Datumsgeschichte in Excel lösen und das Word-Dokument als Serienbrief mit der Excel-Tabelle verbinden. Vielleicht hilft dir diese Idee ja weiter.
du kannst in Word ein Feld einfügen mit dem aktuellen Datum. Das formatiers Du dann mit Schriftfarbe weiss. Dann legst Du dieses Feld als Textmarke ( Name: datum ) an. Dann kannst Du an beliebiger Stelle über Tabelle Formel eine Formel einfügen die mit diese Textmarke rechnet.
=Datum-7
Ich habe nur noch nicht raus wie ich das Problem mit der formatierung des Ergebnis lösen kann. Vielleicht hat ja ein anderer eine Idee.
Ciao
Robert
Hallo,
ich möchte in ein Word Dokument ein Datum einfügen.
Datums-/Feldfunktion kenne ich.
Allerdings möchte ich nicht das aktuelle Datum einfügen,
sondern eines, das einige Tage in der Vergangenheit liegt.
Also: date minus X.
Bisher habe ich noch keinen Hinweis, ob oder wie das geht.
in Word (zumindest bis Word97) kann man die Datums-Felder mathematisch nicht so umwandeln, dass man einfach 3 Tage abzieht, da die Datumsfelder Text im gewünschten datumsformat produzieren.
Die sauberste Lösung ist wahrscheinlich ein Makro, dass das aktuelle System-Datum ausliest, 3 Tage abzieht, und das Ergebnis im gewünschten Format an der gewünschten Position einträgt.
Im folgenden Beispiel ist die Einfügeposition als Textmarke definiert. Es werden zunächst 10 Zeichen gelöscht (der alte Datums-Text) und dann das neue Datum eingetragen. Die Textmarke muß natürlich manuell im Text eingefügt werden!
Die Datei kann man jetzt noch so einrichten, dass dieses Makro beim Öffnen der Datei automatisch gestartet wird oder bei einem anderen Ereignis.
Sub Datum\_Minus3()
' Fügt das aktuelle Datum abzuglich 3 Tagen an der Textmarke "Datum" ein.
'
Dim Datum As Date
Selection.GoTo What:=wdGoToBookmark, Name:="Datum"
Selection.Delete Unit:=wdCharacter, Count:=10 'altes Datum (10 Zeichen) löschen
Datum = Now - 3
Selection.TypeText Text:=Format(Datum, "DD.MM.YYYY")
End Sub
Gruß
Franz
> <small>[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]</small>
ich kann ja nur Vermutungen anstellen. Ich hab es bei mir nochmals ausprobiert, es funktioniert unter Word97 ohne Probleme.
Hast Du in deinem Text, in dem das Datum eingefügt werden soll, auch eine Textmarke mit dem Namen „Datum“ eingefügt?
Dazu schreibst Du an der vorgesehen Position ein Datum, z.B. 30.11.2005. Dann den Cursor vor der 1. Ziffer des Datums positionieren und via Menü Einfügen --> Textmarke --> Name:smiley:atum
die Textmarke einfügen.
Das Makro muss Du in ein Modul des Dokuments oder der Normal.Dot einfügen. ggf. muss Du für das Dokument im VBA-Editor erst noch ein Modul einfügen.
Normalerweise kann man den Makro-Text hier im Forum markieren, kopieren und direkt im VBA-Editor einfügen. So vermeidet man Tippfehler.
Hier nochmals der Makrocode:
Sub Datum\_Minus3()
' Fügt das aktuelle Datum abzüglich 3 Tagen an der Textmarke "Datum" ein.
'
Dim Datum As Date
Selection.GoTo What:=wdGoToBookmark, Name:="Datum"
Selection.Delete Unit:=wdCharacter, Count:=10 'altes Datum (10 Zeichen) löschen
Datum = Now - 3
Selection.TypeText Text:=Format(Datum, "DD.MM.YYYY")
End Sub
In dieser Form kann man das Makro jetzt manuell aufrufen.
Soll das Datum automatisch z.B. beim Öffnen der Datei aktualisiert werden. Dann muß im VBA-Editor für das Dokument unter „ThisDocument“ noch folgendes Makro eingetragen werden:
Private Sub Document\_Open()
Call Datum\_Minus3
End Sub
Gruß
Franz
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]