Office: Datum +1 Tag Aktualisierung springt nicht auf 01.09. sondern auf 32.08.

Helfe beim Thema Datum +1 Tag Aktualisierung springt nicht auf 01.09. sondern auf 32.08. in Microsoft Word Hilfe um das Problem gemeinsam zu lösen; Hallo! Ich hab ein Problem und hoffe, dass ihr mir helfen könnt. Ich habe die Formel { ={ Date \@ "dd" }+1 }. { Date \@ "MMMM yyyy" } in ein Word... Dieses Thema im Forum "Microsoft Word Hilfe" wurde erstellt von Levis82, 31. August 2021.

  1. Levis82 Neuer User

    Datum +1 Tag Aktualisierung springt nicht auf 01.09. sondern auf 32.08.


    Hallo! Ich hab ein Problem und hoffe, dass ihr mir helfen könnt. Ich habe die Formel { ={ Date \@ "dd" }+1 }. { Date \@ "MMMM yyyy" } in ein Word Dokument eingegeben und jetzt schreibt er bei der Aktualisierung wenn ich auf "STRG + P" drücke, beim Datum den 32.08. kann mir jemand vielleicht sagen, wo da der Fehler liegt? Danke im Voraus für eure Hilfe!
     
    Levis82, 31. August 2021
    #1
  2. Exl121150 Erfahrener User
    Hallo,

    wenn der heutige Tag der 31.08.2021 ist, wirst du mit deiner Feldfunktion immer den 32. erhalten. Wo der Fehler liegt? Microsoft hat das so in Word nicht vorgesehen.

    Es gibt mehrere Möglichkeiten, einen Datumstext auf der Basis des heutigen Datums zu errechnen und zu erstellen/einzufügen. Eine davon ist: eine Dokumentvariable mit vergebbaren Namen zu erstellen, der man einen errechneten Datumswert zuweisen kann.
    Angenommen, dieser Dokumentvariablenname sei "MorgigesDatum". Dann kann man dieses morgige Datum mit entsprechend wählbarer Formatierung wie folgt einfügen:
    { DOCVARIABLE "MorgigesDatum" \@ "dddd, dd. MM. yyyy" \* MERGEFORMAT }
    { DOCVARIABLE "MorgigesDatum" \@ "dddd, dd. MMMM yyyy" \* MERGEFORMAT }

    was zu folgender Textanzeige führt:
    Mittwoch, 01. 09. 2021
    Mittwoch, 01. September 2021


    Der 1. Schritt besteht in der Erstellung der VBA-Logik für die Variable im aktiven Dokument (oder in der Dateivorlage):
    Dazu folgende Makros in ein allgemeines Codemodul des aktiven Projektes (oder der Dateivorlage) kopieren:
    Code:
    Option Explicit
    
    'Im aktiven Dokument erzeuge die Dokumentvariable "MorgigesDatum",
    'falls sie dort noch nicht existieren sollte:
    Sub DokVariableHinzufuegen()
      On Error Resume Next
      ActiveDocument.Variables.Add Name:="MorgigesDatum"
      ActiveDocument.BuiltInDocumentProperties
    End Sub
    
    Public Sub DokVariableVersorgen()
      Dim rgStory As Range
     
      'Dokumentenvariable "MorgigesDatum" wird mit der fortlauf.Tageszahl d.morgigen Tages belegt:
      ActiveDocument.Variables("MorgigesDatum").Value = Datieren(1)
     
      'Im aktiven Dokument aktualiesiere ALLE Stellen mit Dokumentvariablennamen
      For Each rgStory In ActiveDocument.StoryRanges
        Call Update_StoryDocVars(rgStory)
        While Not (rgStory.NextStoryRange Is Nothing)
          Set rgStory = rgStory.NextStoryRange
          Call Update_StoryDocVars(rgStory)
        Wend
      Next rgStory
    End Sub
    Private Sub Update_StoryDocVars(oStory As Range)
      Dim oField As Field
      For Each oField In oStory.Fields
         If oField.Type = wdFieldDocVariable Then oField.Update
      Next oField
    End Sub
    '
    'Mit "Datieren(1)" wird die fortlauf.Tageszahl des morgigen Tages ermittelt.
    'Mit "Datieren(7)" wird die fortlauf.Tageszahl des Tages heute in 1 Woche ermittelt.
    '
    Private Function Datieren(d As Integer) As Date
      'Date = Laufende Tageszahl für den heutigen Tag
      '       zB. 31.08.2021 = 44439
      '           Datieren(1) = 44439+1 = 44440
      Datieren = Date + d
    End Function
    
    Der 2. Schritt besteht darin, dass per VBA die Dokumentenvariable "MorgigesDatum" stets zuverlässig erzeugt wird. Dafür muss, wenn die Word-Datei erstellt bzw. geöffnet wird, eine automatische Erstellung erfolgen. Deswegen ist folgender VBA-Code in das Codemodul "ThisDocument" des aktiven Projektes (oder der Dateivorlage) einzufügen:
    Code:
    Option Explicit
    
    Private Sub Document_New()
      Call DokVariableHinzufuegen
    End Sub
    
    Private Sub Document_Open()
      Call DokVariableHinzufuegen
    End Sub
    
    Der 3. Schritt muss im aktiven Dokument (bzw. in der Dateivorlage) erfolgen im Menüband > Tabulator "Einfügen" > Gruppe "Text" > DropDownButton "Schnellbausteine" > Befehl "Feld...", sodass der Feld-Dialog angezeigt wird.
    In der Combobox "Kategorien" den Eintrag "Dokumentautomation" auswählen.
    Im Listenfeld "Feldnamen" den Eintrag "DocVariable" auswählen, sodass daneben in der Spalte "Feldeigenschaften" das Textfeld "Neuer Name:" angezeigt wird. Dort den Namen der Dokumentvariablen "MorgigesDatum" eintippen:
    Datum +1 Tag Aktualisierung springt nicht auf 01.09. sondern auf 32.08. upload_2021-8-31_16-13-23.png
    Mit Button "OK" abschließen.
    Der 4. Schritt besteht schließlich im Einfügen/Formatierung der Dokumentenvariablen an der gewünschten Stelle, zB.:
    { DOCVARIABLE "MorgigesDatum" \@ "dddd, dd. MM. yyyy" \* MERGEFORMAT }
    { DOCVARIABLE "MorgigesDatum" \@ "dddd, dd. MMMM yyyy" \* MERGEFORMAT }


    Eine Beispiel-Worddokument (komprimiert mit WinZip) liegt bei.
     
    Exl121150, 31. August 2021
    #2
    1 Person gefällt das.
  3. Levis82 Neuer User
    Ich danke für die Mühe bei der Erstellung dieses Beitrags. Ich habe versucht nach dieser Anleitung ein Makro zu erstellen, jedoch bin ich damit ein wenig überfordert. Ich habe den Text für das Makro kopiert, aber es tut sich nichts. Was das Datumsformat betrifft, so würde ich zB nur 01.09.2021 als Anzeige brauchen. Ich habe Bilder angehängt! Danke nochmal
     
    Zuletzt bearbeitet: 1. September 2021
  4. Exl121150 Erfahrener User

    Datum +1 Tag Aktualisierung springt nicht auf 01.09. sondern auf 32.08.

    Hallo,

    ich habe gesehen, dass du die Makros in die falschen Codemodule gespeichert hast.

    Folgende Makros gehören in ein allgemeines Codemodul (zB. "Modul1") gespeichert, jedoch keinesfalls in ein Klassenmodul:
    Code:
    Option Explicit
    
    'Im aktiven Dokument erzeuge die Dokumentvariable "MorgigesDatum",
    'falls sie dort noch nicht existieren sollte:
    Sub DokVariableHinzufuegen()
      On Error Resume Next
      ActiveDocument.Variables.Add Name:="MorgigesDatum", Value:=Datieren(1)
    ' ActiveDocument.BuiltInDocumentProperties
    End Sub
    
    Public Sub DokVariableVersorgen()
      Dim rgStory As Range
     
      'Dokumentenvariable "MorgigesDatum" wird mit der fortlauf.Tageszahl d.morgigen Tages belegt:
      ActiveDocument.Variables("MorgigesDatum").Value = Datieren(1)
     
      'Im aktiven Dokument aktualiesiere ALLE Stellen mit Dokumentvariablennamen
      For Each rgStory In ActiveDocument.StoryRanges
        Call Update_StoryDocVars(rgStory)
        While Not (rgStory.NextStoryRange Is Nothing)
          Set rgStory = rgStory.NextStoryRange
          Call Update_StoryDocVars(rgStory)
        Wend
      Next rgStory
    End Sub
    Private Sub Update_StoryDocVars(oStory As Range)
      Dim oField As Field
      For Each oField In oStory.Fields
         If oField.Type = wdFieldDocVariable Then oField.Update
      Next oField
    End Sub
    '
    'Mit "Datieren(1)" wird die fortlauf.Tageszahl des morgigen Tages ermittelt.
    'Mit "Datieren(7)" wird die fortlauf.Tageszahl des Tages heute in 1 Woche ermittelt.
    '
    Private Function Datieren(d As Integer) As Date
      'Date = Laufende Tageszahl für den heutigen Tag
      '       zB. 31.08.2021 = 44439
      '           Datieren(1) = 44439+1 = 44440
      Datieren = Date + d
    End Function
    Sub FutureDate()
        Selection.TypeText Text:=Format(Date + 1, "dddd, d. mmmm yyyy")
    End Sub
    
    Ich habe diese Makros nochmals leicht modifiziert und ergänzt. Bitte daher diese Version übernehmen. Sie ist auch in der beiliegenden Zip-Version so enthalten.

    Und auch die folgenden beiden Makros sind zwar Ereignis-Prozeduren des Word-Dokumentenobjektes, aber sie gehören trotzdem nicht in ein normales Klassenmodul, sondern in die vorgegebene Klasse "ThisDocument"
    Code:
    Option Explicit
    
    Private Sub Document_New()
      Call DokVariableHinzufuegen
    End Sub
    Private Sub Document_Open()
      Call DokVariableHinzufuegen
    End Sub
    
    Datum +1 Tag Aktualisierung springt nicht auf 01.09. sondern auf 32.08. upload_2021-9-2_15-51-21.png
    Im Word-Dokument habe ich dir Hinweise eingefügt zur Verwendung dieser Makros (Punkte 1) und 2)).
     
    Exl121150, 2. September 2021
    #4
    1 Person gefällt das.
  5. Levis82 Neuer User
    Vielen Dank für die rasche Rückmeldung und die nochmalige Erklärung! Ich werde, das Ganze morgen nochmal probieren. Wenn ich auf einem Dokument +1 Tag und Minus -1 Tag brauche, muss ich dann wahrscheinlich ein zweites Makro anlegen, oder? LG
     
  6. Levis82 Neuer User
    das Datum sollte sich auch beim öffnen des Dokuments automatisch aktualisieren. Ich habe ein Dokument, bei dem ich das Datum von gestern eintragen muss, das Datum von heute und das Datum von morgen. Derzeit setzen wir im ausgedruckten Dokument die Datum mit einem Stempel in die Felder und nun würde ich diese gerne gleich mit den richtigen Datumsangaben ausdrucken ohne den lästigen Stempel!

    Das heutige Datum aktualisiert sich immer schön beim öffnen, aber das ist auch einfach auszuwählen in Word! ☺️
     
    Zuletzt bearbeitet: 2. September 2021
  7. Exl121150 Erfahrener User
    Hallo,

    in der beiliegenden Word-Datei (im Zip-Archiv) habe ich dir 4 DocVariablen eingefügt (GestrigesDatum, HeutigesDatum, MorgigesDatum, In_1_Woche). Diese werden beim Öffnen des Dokumentes erzeugt und mit den entsprechenden Datumswerten belegt. Sie können an beliebigen Stellen im Dokument eingesetzt werden und werden nach dem Öffnen der Datei mit den aktuellen Wert angezeigt.
     
    Exl121150, 3. September 2021
    #7
  8. Levis82 Neuer User

    Datum +1 Tag Aktualisierung springt nicht auf 01.09. sondern auf 32.08.

    Ich habe das Ganze jetzt eingefügt und es hat funktioniert! Jetzt hoffe ich, dass es am Montag, wenn ich das Dokument öffne, sich alles von selbst aktualisiert. Ich gebe dann Bescheid. Vielen vielen Dank nochmal für die Hilfe! Ich hätte das sonst nicht geschafft! :-)
     
  9. Levis82 Neuer User
    Funktioniert alles! Einfach Klasse!
     
Thema:

Datum +1 Tag Aktualisierung springt nicht auf 01.09. sondern auf 32.08.

Die Seite wird geladen...
  1. Datum +1 Tag Aktualisierung springt nicht auf 01.09. sondern auf 32.08. - Similar Threads - Datum Tag Aktualisierung

  2. Strom und Gasverbrauch: Fehlende Tage automatisch in Tabelle hinzufügen

    in Microsoft Excel Hilfe
    Strom und Gasverbrauch: Fehlende Tage automatisch in Tabelle hinzufügen: Hallo! ich habe seit 5 Jahren in meiner Wohnung immer mal wieder meinen Strom und Gas Zähler notiert. Allerdings habe ich dies sehr unregelmäßig gemacht, sodass die Auswertung in Excel nicht...
  3. Zeitüberschneidungen verschiedener Tage automatisch erkennen

    in Microsoft Excel Hilfe
    Zeitüberschneidungen verschiedener Tage automatisch erkennen: Hallo ihr Lieben, meine Mutter trägt ihre Arbeitszeiten regelmäßig händisch in eine Excel-Tabelle ein. Dabei steht in Spalte A das Datum, in Spalte B die Anfangszeit des Arbeitspakets und in...
  4. Tag und Monat in Datum suchen

    in Microsoft Excel Hilfe
    Tag und Monat in Datum suchen: Hallo zusammen, ich suche und versuche schon eine Weile rum, komme aber nicht weiter. Und zwar suche ich eine Formel, mit der ich den Tag und den Monat des heutigen Tages in einer Spalte mit...
  5. EXCEL Rechnen mit ZEITangaben (Jahre Monate Tage)... kein Datum...

    in Microsoft Excel Hilfe
    EXCEL Rechnen mit ZEITangaben (Jahre Monate Tage)... kein Datum...: Hallo liebe Excel Freaks. Ich knofel an einem Problem und habe keine wirkliche Lösung :( Ich habe in einzelnen Zellen jeweils Zahlen stehen - also in Zelle A1 zB 5 in Zelle B1 7 und in Zelle...
  6. Tag/Datum/Jahr zusammenfügen

    in Microsoft Access Hilfe
    Tag/Datum/Jahr zusammenfügen: In dem Feld "Tag" soll immer der 1 stehen. Standartwert 1 -> Felddatentyp Zahl In dem Feld "Tag(Monat), soll der Monat manuell eingeben werden ->Felddatentyp Text In dem Feld "Tag(Jahr), soll...
  7. Wandernde Summenbildung "Fixpunkt" Datum - Ausgaben letzte 7 Tage

    in Microsoft Excel Hilfe
    Wandernde Summenbildung "Fixpunkt" Datum - Ausgaben letzte 7 Tage: Hallo Excel-Ritter, ich brauche eure Hilfe. Ich werkel momentan an einem Haushaltsbuch in Excel. Bin da bis jetzt einigermaßen Zufrieden mit und würde es beim ersten Testlauf auch gerne...
  8. Bestelldatum plus 3 Tage ausser Freitag und Samstag

    in Microsoft Excel Hilfe
    Bestelldatum plus 3 Tage ausser Freitag und Samstag: Hallo Zusammen Neu hier und schon ein Problem Möchte ein Bestellformular erstellen. Dabei soll immer beim Öffnen das „Heute Datum“ unter Bestelltag erscheinen. Unter Lieferdatum soll dann ein...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden