Generieren einer Datumsliste (Microsoft Word)
Für einige Dokumente ist es hilfreich, eine Liste mit Daten zu haben, die Sie als Grundlage für Ihre Arbeit verwenden können. Beispielsweise müssen Sie möglicherweise einen Bericht erstellen, in dem alle Daten bis zum Jahresende sowie der Name einer Person oder ein Projektname rechts vom Datum aufgeführt sind.
Der Ausgangspunkt ist natürlich das Abrufen der Liste der Daten.
Es gibt verschiedene Möglichkeiten, wie Sie die Liste erstellen können. Eine einfache Methode ist die Verwendung von Excel in Verbindung mit Word. Die AutoFill-Funktion von Excel macht das Erstellen einer Liste von Daten erstaunlich einfach. Sobald Sie die Liste in Excel haben, können Sie sie kopieren und in das Word-Dokument einfügen oder mithilfe des Seriendrucks die Daten im Dokument zusammenführen (sofern dieser Ansatz für Ihre Anforderungen geeignet ist).
Wenn Sie Excel aus irgendeinem Grund nicht verwenden möchten, ist die beste Lösung die Verwendung eines Makros. Das folgende Makro erstellt sehr schnell eine Liste aller Daten für das Jahr 2021:
Sub PrintYearDays() Dim DateToday As Date Dim T As Integer 'Because the date is going to be changed, save it DateToday = Date Date = #12/31/2020# For T = 1 To 365 Selection.TypeText Text:=Format(Date + T, _ "mmmm dd yyyy") Selection.TypeParagraph Next T 'Restore today's date Date = DateToday End Sub
Beachten Sie, dass das Makro funktioniert, indem Sie das Datum auf Ihrem System zurücksetzen.
Das heutige aktuelle Datum wird in der DateToday-Variablen gespeichert, und dann wird das Datum auf das Startdatum für Ihren Bereich zurückgesetzt. Wenn das Makro für einen anderen Datumsbereich funktionieren soll, ändern Sie einfach das Startdatum und den Endwert der For … Next-Schleife.
Wenn Sie Datumslisten erstellen müssen und nie genau wissen, wie das Anfangs- und Enddatum im Bereich aussehen wird, ist ein anderer Makroansatz sinnvoller. Das folgende Makro fragt Sie nach einem Anfangs- und einem Enddatum:
Sub ListDates() Dim ListDate as Date Dim StartDate As Date Dim EndDate As Date Dim Repeats As Integer 'Gets user input StartDate = InputBox("Please enter the starting date.", _ "Start Date", "Start Date") EndDate = InputBox("Please enter the ending date.", _ "End Date", "End Date") 'Enters the start date in the document Selection.TypeText Text:=Format(StartDate, _ "dddd, MMMM dd, yyyy") Selection.TypeText (vbCr & vbLf) 'Determines the number of dates to print Repeats = DateDiff("d", StartDate, EndDate) 'Loops to print the list of dates For i = 1 To Repeats ListDate = DateAdd("d", i, StartDate) Selection.TypeText Text:=Format(ListDate, _ "dddd, MMMM dd, yyyy") Selection.TypeParagraph Next i End Sub
Die von Ihrer Eingabe festgelegten Variablen StartDate und EndDate bestimmen, wie oft die For … Next-Schleife wiederholt wird.
_Hinweis: _
Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der WordTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.
WordTips ist Ihre Quelle für kostengünstige Microsoft Word-Schulungen.
(Microsoft Word ist die weltweit beliebteste Textverarbeitungssoftware.) Dieser Tipp (13155) gilt für Microsoft Word 2007, 2010, 2013, 2016, 2019 und Word in Office 365. Eine Version dieses Tipps finden Sie für ältere Menüoberfläche von Word hier: