Word.Tips.Net WordTips (Menu Interface)

Automatically Inserting Tomorrow's Date

Please Note: This article is written for users of the following Microsoft Word versions: 97, 2000, 2002, and 2003. If you are using a later version (Word 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Word, click here: Automatically Inserting Tomorrow's Date.

Let's say that you work for a company and that your job is to prepare reports or press releases that will be distributed the next day. On every one of these documents you need to make sure that tomorrow's date appears. After doing this for a while, you may start searching about for a way to automatically insert tomorrow's date into a new document. It would be even better if this automatic feature could be included as part of a template. Thus, when you create a new document based on the template, it automatically has tomorrow's date in the proper place.

Your first inclination might be to simply change the system date that is on your computer. If you increase the system date by one day, then by being out of kilter with the rest of the world by one day, you can easily insert the date you need. While this would do the job, it will definitely affect all other uses of the date on that system, as well.

There is a relatively easy solution within Word, however. The following macro, when saved in the template using the name AutoNew, replaces a bookmark called MyDate with tomorrow's date. The cool thing about the macro is that it doesn't just insert a date at the beginning of the file, but gives you control over the exact placement anywhere within the file.

Sub AutoNew()
    With ActiveDocument.Bookmarks("MyDate").Range
        .InsertBefore Format(Date + 1, "dd mmmm yyyy")
    End With
End Sub

The format in which the date appears can be modified by altering the "dd mmmm yyyy" string to achieve the desired format. More information on format strings is available in the online VBA documentation.

To use the macro, all you need to do is make sure that the template includes some text that is bookmarked using the name MyDate. Save the template, and then any new documents you create based on that template will automatically include tomorrow's date in place of the bookmark.

WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (1312) applies to Microsoft Word 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Word (Word 2007 and later) here: Automatically Inserting Tomorrow's Date.

Related Tips:

Create Custom Apps with VBA! Discover how to extend the capabilities of Office 2013 (Word, Excel, PowerPoint, Outlook, and Access) with VBA programming, using it for writing macros, automating Office applications, and creating custom applications. Check out Mastering VBA for Office 2013 today!


Leave your own comment:

  Notify me about new comments ONLY FOR THIS TIP
Notify me about new comments ANYWHERE ON THIS SITE
Hide my email address
*What is 5+3 (To prevent automated submissions and spam.)
           Commenting Terms

Comments for this tip:

Don Farrell    04 Mar 2016, 06:16
Finally got it working.

I needed to populate the next day's date in 5 different places across a 14 page legal sized document.

To get it to work properly, I had to create 5 unique bookmarks, then create the macro to go to each bookmark and populate the date.

Here is the macro:

Sub NewDate()
 With ActiveDocument.Bookmarks("MyDate1").Range
        .InsertBefore Format(Date + 1, "mm/dd/yyyy")
    End With
        With ActiveDocument.Bookmarks("MyDate2").Range
        .InsertBefore Format(Date + 1, "mm/dd/yyyy")
    End With
        With ActiveDocument.Bookmarks("MyDate3").Range
        .InsertBefore Format(Date + 1, "mm/dd/yyyy")
    End With
    With ActiveDocument.Bookmarks("MyDate4").Range
        .InsertBefore Format(Date + 1, "mm/dd/yyyy")
    End With
    With ActiveDocument.Bookmarks("MyDate5").Range
        .InsertBefore Format(Date + 1, "mm/dd/yyyy")
    End With
End Sub

The AutoOpen did not work in my case because if the template had to be updated and saved, it was saved with the populated dates which caused problems the next time the template was opened.

So I named the macro "NewDate" per a previous Wordtip. Now the template can be opened and edited without engaging the macro and when needed the macro can be "run".

I still need to figure out how to set the font to Times-Roman, bold, underline, can anyone help me with that, please?
Chris W    07 Feb 2015, 04:21
Hi Allen,
Thanks for the tips here; I needed to add dates for the next 4 days in a forecast form and your instruction was very useful.
I ended up saving the macro in this file only and calling it "AutoOpen" so that the dates are inserted as soon as the file is opened; then when saving the user saves using the same filename with a date added to the end (_ddmmyy).
Thanks for the info!.
Rgds, Chris.

Our Company

Sharon Parq Associates, Inc.

About Tips.Net

Contact Us


Advertise with Us

Our Privacy Policy

Our Sites


Beauty and Style




DriveTips (Google Drive)

ExcelTips (Excel 97–2003)

ExcelTips (Excel 2007–2016)



Home Improvement

Money and Finances


Pests and Bugs

Pets and Animals

WindowsTips (Microsoft Windows)

WordTips (Word 97–2003)

WordTips (Word 2007–2016)

Our Products

Helpful E-books

Newsletter Archives


Excel Products

Word Products

Our Authors

Author Index

Write for Tips.Net

Copyright © 2016 Sharon Parq Associates, Inc.