You can do it with a macro containing the following code

Dim strDay As String, strMonth As String, strYear As String, strMonthText As String

Selection.HomeKey wdStory

With Selection.Find

Do While .Execute(FindText:="[0-9]{2}\/[0-9]{2}\/[0-9]{4}", Forward:=True, \_ 

MatchWildcards:=True, Wrap:=wdFindStop, MatchCase:=True) = True 

    strDay = Left(Selection, 2) 

    strMonth = Mid(Selection, 4, 2) 

    strYear = Right(Selection, 4) 

    Select Case strMonth 

        Case "01" 

            strMonthText = " January " 

        Case "02" 

            strMonthText = " February " 

        Case "03" 

            strMonthText = " March " 

        Case "04" 

            strMonthText = " April " 

        Case "05" 

            strMonthText = " May " 

        Case "06" 

            strMonthText = " June " 

        Case "07" 

            strMonthText = " July " 

        Case "08" 

            strMonthText = " August " 

        Case "09" 

            strMonthText = " September " 

        Case "10" 

            strMonthText = " October " 

        Case "11" 

            strMonthText = " November " 

        Case "12" 

            strMonthText = " December " 

    End Select 

    Selection.Text = strDay & strMonthText & strYear 

    Selection.Collapse wdCollapseEnd 

Loop 

End With

Answer from Doug Robbins - MVP - Office Apps and Services on learn.microsoft.com
🌐
Foundant
support.foundant.com › hc › en-us › articles › 4404574044567-Change-the-Date-or-Number-Format-of-a-Merge-Field-GLM-SLM
Change the Date or Number Format of a Merge Field - GLM/SLM – Foundant Technologies
January 9, 2026 - After the current merge field text, enter " \@ " followed by the desired display format in quotation marks. For example, the Merge Date field displays as { MERGEFIELD Merge_Date }. The date format populates as MM/dd/yyyy by default.
Discussions

Formatting Date from words to YYYY-MM-DD
I have a huge list of dates which has the format Dec 1, 2019 , Jan 2, 2019 etc. I need them in YYYY-MM-DD as in the screenshot below: I have attached a sample file as well Date Conversion.ods Please help! More on ask.libreoffice.org
🌐 ask.libreoffice.org
1
0
January 5, 2020
I need help changing my date format to mm-dd-yyyy. but it is not in the choices.
I've been trying to change my date format to mm-dd-yyyy but it is not in the choices. I live in the philippines and we're used to using the date format with the month first. I also have the region set to English (Philippines). Even Microsoft Excel… More on learn.microsoft.com
🌐 learn.microsoft.com
3
314
June 12, 2021
Custom Date Format for Dynamic Date?
When someone asks "is this possible in Word", the answer is at least a qualified "yes". No, it does not have that ability bult in - but how are your programming skills? Because Word templates can be extended using Visual Studio. So it can be done, but not easily and not by most people. To put it another way, you could hire someone to do that for you if the time saved would be worth the expense. If you would like to try it, you can start here: Get started programming document-level customizations for Word Word solutions You can find Visual Studio and download the basic (Community) version here . More on reddit.com
🌐 r/MicrosoftWord
3
2
March 9, 2023
What are the different English date formats?
The date formats are different in US, UK, and Canadian English. Does any other English variety have any other date format? You can see the video, https://youtu. More on preply.com
🌐 preply.com
3
0
June 21, 2020
Top answer
1 of 3
8

Found here:

To insert the date type Alt+Shift+D.

To change the time or date format hit Alt+N+D, click on or scroll to the one you want and use the key combo Alt+D. Hit Enter twice.

2 of 3
3

The format of the date inserted depends on the language in the spellcheck. You can change this language in the Review tab->Language->Set Proofing Language. Here are a few examples of the output in different languages:

  • English (Unites States): 3/8/2017
  • Swedish: 2017-03-08
  • French: 08/03/2017

These formats are the ones that are commonly used in each language. So it seems that your spell checker in Word is in English and your system is in a language that formats dates in the same way as in Swedish. If you're writing a document in English, it's probably best to format dates like in English, and if you're not, you should change the spellcheck language. However, if you really want to write in English and use the 2017-03-08 format, you can temporarily change the spell checker to a language that uses that format (for example Swedish) and then changing it back to English after having inserted the date won't change the date format.

If you want to change the way the date is formatted in a certain language, you can go to the Insert tab->Date and time. Then a window will pop up with a list of ways to format dates and times in that language:

To set one as default, pick one and click on the Default button. When you've done that, that format will be used every time you insert a date using Shift+Alt+D. You can also insert a date or time in a specific format without using it as default by pressing OK. When you set the default for one language, it won't change anything for the other languages.

You can also change the language in which it's formatted by selecting another language in the Language list on the right. However this will also change the language of the spell checker, but as I said, changing the language back after inserting the date won't change the date format.


To summarize, here is what you should do to solve your problem:

  1. Change the spellcheck language to Swedish or any other language that uses the 2017-03-08 format.
  2. Insert a date by pressing Shift+Alt+D.
  3. Change the spellcheck language back to English or whatever language you're writing in.

This is the result:

🌐
Blackbaud
kb.blackbaud.com › articles › Article › 39275
How to change date format in Microsoft Word document
November 29, 2023 - We cannot provide a description for this page right now
🌐
Ask LibreOffice
ask.libreoffice.org › english
Formatting Date from words to YYYY-MM-DD - English - Ask LibreOffice
January 5, 2020 - I have a huge list of dates which has the format Dec 1, 2019 , Jan 2, 2019 etc. I need them in YYYY-MM-DD as in the screenshot below: I have attached a sample file as well Date Conversion.ods Please help!
🌐
WordTips (ribbon)
wordribbon.tips.net › T012197_Changing_the_Format_of_Existing_Dates.html
Changing the Format of Existing Dates (Microsoft Word)
August 24, 2024 - Sub GetDateAndReplace() Dim FoundOne ... it's a date If IsDate(Selection.Text) Then Selection.Text = Format(Selection.Text, "mmmm d, yyyy") Selection.Collapse wdCollapseEnd Else ' not a date - end loop FoundOne = False End If Loop ...
🌐
Wikipedia
en.wikipedia.org › wiki › List_of_date_formats_by_country
List of date formats by country - Wikipedia
1 week ago - The ISO 8601 format YYYY-MM-DD (2026-03-14) is intended to harmonise these formats and ensure accuracy in all situations.
Find elsewhere
🌐
Avantix Learning
avantixlearning.ca › home › how to change the date format of a date field in a word mail merge
How to Change the Date Format of a Date Field in a Word Mail Merge
March 7, 2022 - Right-click the field and choose ... \*MERGEFORMAT from the field code. Enter the switch after the field name (such as \@ "MMMM d/yy")....
Top answer
1 of 1
6

I’ll assume that you are talking about one of the handful of date values that Word offers in fields.  I’ll also assume that you are inserting fields through the ribbon / GUI, and that you know how to do that.  OK, when you’re in the “Field” setting window, and you have selected the date you want (“CreateDate”, (current) Date, “PrintDate” or “SaveDate”), click on “Field Codes”.  An “Advanced field properties” pane will appear, with a “Field Codes:” text box that’s prefilled with the name of the field you selected on the left (which is just its display name in all-caps; e.g., “CREATEDATE”, “DATE”, etc.)

Insert \@ "d'th day of' MMMM, yyyy" after that field name; e.g.,

Click “OK”.

Oh, I’m also assuming that you want the month spelled out.  If you want only the three-letter abbreviation (e.g., “Dec”), use MMM instead of MMMM.

Unfortunately, you’re asking the wrong question.  Yes, this question was asked on the 5th day of December, 2017, and the day before was the 4th.  But the preceding three days were the 1st, 2nd and 3rd (not the 1th, 2th and 3th).  21st, 22nd, 23rd and 31st are also exceptions to the “th” rule (but, perversely, 11th, 12th and 13th are not).  This sequence of fields will produce the correct ordinal numbers for English:

(1)     { set the_date { date } }
(2)     { Set day { the_date \@ “d” } }
(3)     { Set dec { = int(day / 10) } }
(4)     { Set d10 { =mod(day,10) } }
(5)     { Set suffix { If dec = 1 “th” { If d10 = 1 “st” { If d10 = 2 “nd” { If d10 = 3 “rd” “th” } } } } }
(6)     { Set format { Quote “d'” { suffix } “ day of' MMMM, yyyy” } }
(7)     { The_Date \@ { format } }

Line numbers are just for illustration / exposition purposes and are not part of the document / code.  This seems to be case-insensitive (except in the date format, where m is minutes and M is month).  And "straight quotes" () and “curly quotes” () seem to be interchangeable.

  1. Assign the date to a variable (technically, a “bookmark”) called the_date.  Change the last word to createdate, printdate, or savedate if that’s what you want.
  2. Get the day number of the_date (e.g., “Dec 5” → 5) and assign it to the variable day.
  3. Get the ten’s digit of day (e.g., 5 → 0, 17 → 1, 23 → 2) and assign it to the variable dec.
  4. Get the one’s digit of day (e.g., 5 → 5, 17 → 7, 23 → 3) and assign it to the variable d10.
  5. Determine the appropriate ordinal suffix for day.  If dec is 1, then day is between 10 and 19, and the suffix is “th”.  Otherwise, if d10 is 1, 2, or 3, the suffix is “st”, “nd”, or “rd”, respectively.  For all other values, the suffix is “th”.  Then assign it to the variable suffix.
  6. Build a format string like the one I used in the first part of the answer.  Concatenate d', the suffix (suffix) from the previous step, and  day of' MMMM, yyyy.  This uses a trick (using the quote field) that I learned at the Microsoft Community; I don’t fully understand it.
  7. This is basically a repetition of the first part of the answer, but displaying the_date according to the format format.

To use this, copy the following and paste it into your Word document:

set the_date date
Set day the_date \@ "d"
Set dec = int(day / 10)
Set d10 =mod(day,10)
Set suffix If dec = 1 “th” If d10 = 1 “st” If d10 = 2 “nd” If d10 = 3 “rd” “th”
Set format Quote “d'” suffix “ day of' MMMM, yyyy”
The_Date \@ format

(In the above, the capitalization and spacing (e.g., day / 10 vs. day,10) are arbitrary / random (except in the format string).)

  1. On the first line.
  • Select date (or createdate, or whichever one you use) and press Ctrl+F9.  It will change to { date } and may have a gray background.  This same transformation will occur every time you press Ctrl+F9, ultimately looking like the first code block (way above).  Do not type any curly braces!
  • Next, select the entire line and press Ctrl+F9.
  1. On the second line.
  • Select the_date \@ “d” and press Ctrl+F9.
  • Then select the entire line and press Ctrl+F9.
  1. On the third line.
  • Select = int(day / 10) and press Ctrl+F9.
  • Then select the entire line and press Ctrl+F9.
  1. On the fourth line.
  • Select =mod(day,10) and press Ctrl+F9.
  • Then select the entire line and press Ctrl+F9.
  1. On the fifth line.
  • Select If d10 = 3 “rd” “th” (at the end of the line) and press Ctrl+F9.
  • Then select If d10 = 2 “nd” { If d10 = 3 “rd” “th” } and press Ctrl+F9.
  • Then select If d10 = 1 “st” { If d10 = 2 “nd” { If d10 = 3 “rd” “th” } } and press Ctrl+F9.
  • Then select If dec = 1 “th” { If d10 = 1 “st” { If d10 = 2 “nd” { If d10 = 3 “rd” “th” } } } and press Ctrl+F9.
  • Then select the entire line and press Ctrl+F9.
  1. On the sixth line.
  • Select suffix and press Ctrl+F9.
  • Then select Quote “d'” { suffix } “ day of' MMMM, yyyy” (i.e., from Quote to the end of the line) and press Ctrl+F9.
  • Then select the entire line and press Ctrl+F9.
  1. On the seventh line.
  • Select format and press Ctrl+F9.
  • Then select the entire line and press Ctrl+F9.

Note that line 7 is the only one that actually produces any text; the first six are setup and can be moved somewhere like the beginning of the document.  You might want to delete the paragraph breaks between the fields to avoid having them take up a bunch of vertical space.  Then select all the fields (or the entire document, e.g., with Ctrl+A) and press F9 (not Ctrl+F9).  The fields (except for the last one) might all disappear.  If so, this is normal, and you’re done.  If they don’t disappear, press Shift+F9  (again, not Ctrl+F9), and that should do it.


P.S. I checked this on Word 2013, and that’s what the screenshot is from.

🌐
Oracle
docs.oracle.com › cd › E41183_01 › DR › Date_Format_Types.html
Date Format Types
Month abbreviations consist of the first three characters of the month’s name. Months with four-character names, such as June, are not abbreviated · Month-Day-Year with leading zeros (02/17/2009)
🌐
Microsoft Support
support.microsoft.com › en-us › office › format-a-date-and-time-field-47fbbdc1-52fa-416a-b8d5-ba24d881b698
Format a date and time field - Microsoft Support
When you apply a custom format ... the sections with a space. For example, you can combine the General Date and Long Time formats as follows: m/dd/yyyy h:mm:ss....
🌐
Reddit
reddit.com › r/microsoftword › custom date format for dynamic date?
r/MicrosoftWord on Reddit: Custom Date Format for Dynamic Date?
March 9, 2023 -

Our office uses a ton of presaved template forms that we tweak and print for different people. I’ve been slowly updating them to be fillable forms so the formatting doesn’t get wrecked when that information is filled in, and to add dynamic dates so the date automatically updates. However, certain documents require a specific date format (“this 9th day of March A.D. 2023”) and obviously Word doesn’t have a preset format that will allow that. When I’ve tried to find a workaround, I’ve been directed to custom date formats, but they all seem to be variations on MM/DD/YYYY. Is this even possible in Word, or am I wasting my time?

🌐
UiPath Community
forum.uipath.com › help › studio
How can i convert DD/MM(Months in Words) to MM/DD/YYYY format - Studio - UiPath Community Forum
November 24, 2022 - i have this 01 Mo Aug kind horrible format date coulmn and my firend convetted it to DD/MM(Months in word) output is like ths 01Aug,02Aug, and so on The year is 2022 here is what he have done v_arr_ColumnName = …
🌐
ISO
iso.mit.edu › americanisms › date-format-in-the-united-states
Date Format in the United States | ISO
The United States is one of the few countries that use “mm-dd-yyyy” as their date format–which is very very unique! The day is written first and the year last in most countries (dd-mm-yyyy) and some nations, such as Iran, Korea, and China, write the year first and the day last (yyyy-mm-dd).