{ IF { CreateDate \@ "ddd" } = "Mon" "{ CreateDate \@ "dddd d MMMM yyyy" }" }
"{QUOTE
{SET Delay 1}
{SET Weekday 0}
{SET a{=INT((14-{CREATEDATE \@ M})/12)}}
{SET b{={CREATEDATE \@ yyyy}+4800-a}}
{SET c{={CREATEDATE \@ M}+12*a-3}}
{SET d{CREATEDATE \@ d}}
{SET jd{=d+INT((153*c+2)/5)+365*b+INT(b/4)-INT(b/100)+INT(b/400)-32045+Delay}}
{SET jd{=INT(jd/7)*7+Weekday}}
{SET e{=INT((4*(jd+32044)+3)/146097)}}
{SET f{=jd+32044-INT(146097*e/4)}}
{SET g{=INT((4*f+3)/1461)}}
{SET h{=f-INT(1461*g/4)}}
{SET i{=INT((5*h+2)/153)}}
{SET dd{=h-INT((153*i+2)/5)+1}}
{SET dd{=((dd<8)+(dd>14)*(dd<22))*7+dd}}
{SET mm{=i+3-12*INT(i/10)}}
{SET Limit{=IF((mm=2),28+((MOD(yy,4)=0)+(MOD(yy,400)=0)-(MOD(yy,100)=0)),IF((mm=4)+(mm=6)+(mm=9)+(mm=11)=1,30,31))}}
{SET yy{=100*e+g-4800+INT(i/10)}}
{IF{mm}> 28 "{SET dd{=dd+14-Limit}}{SET mm{=MOD(mm,12)+1}}{SET yy{=yy+(mm=1)}}"}
"{mm}-{dd}-{yy}" \@ "dddd, d MMMM yyyy"}" }
{ IF { CreateDate \@ "ddd" } = "Mon" "{ CreateDate \@ "dddd d MMMM yyyy" }" }
"{QUOTE
{SET Delay 1}
{SET Weekday 0}
{SET a{=INT((14-{CREATEDATE \@ M})/12)}}
{SET b{={CREATEDATE \@ yyyy}+4800-a}}
{SET c{={CREATEDATE \@ M}+12*a-3}}
{SET d{CREATEDATE \@ d}}
{SET jd{=d+INT((153*c+2)/5)+365*b+INT(b/4)-INT(b/100)+INT(b/400)-32045+Delay}}
{SET jd{=INT(jd/7)*7+Weekday}}
{SET e{=INT((4*(jd+32044)+3)/146097)}}
{SET f{=jd+32044-INT(146097*e/4)}}
{SET g{=INT((4*f+3)/1461)}}
{SET h{=f-INT(1461*g/4)}}
{SET i{=INT((5*h+2)/153)}}
{SET dd{=h-INT((153*i+2)/5)+1}}
{SET dd{=((dd<8)+(dd>14)*(dd<22))*7+dd}}
{SET mm{=i+3-12*INT(i/10)}}
{SET Limit{=IF((mm=2),28+((MOD(yy,4)=0)+(MOD(yy,400)=0)-(MOD(yy,100)=0)),IF((mm=4)+(mm=6)+(mm=9)+(mm=11)=1,30,31))}}
{SET yy{=100*e+g-4800+INT(i/10)}}
{IF{mm}> 28 "{SET dd{=dd+14-Limit}}{SET mm{=MOD(mm,12)+1}}{SET yy{=yy+(mm=1)}}"}
"{mm}-{dd}-{yy}" \@ "dddd, d MMMM yyyy"}" }
It is based on one from Paul Edstein (macropod)'s tutorial. The date shown will be in the format Monday 9 December 2024 without the ordinal. I do not have the ability to format it that way. It is likely a bit more complex than would be needed.
Here is a CreateDate field formatted to use the ordinal form for the day of the month: { CreateDate \@ "dddd" } { CreateDate \@ "d" \* ordinal } of { CreateDate \@ "MMMM yyyy" }
.
You should not try to type this field! Here is a link to a document containing the field and the process I used to construct it. You could copy and paste from it if it will meet your needs.
Otherwise, you could use this Add-In from MVP Graham Mayor to create the field from the text.
Here is my article on the Microsoft Answers site on Dealing with Fields.
See also the vba solution suggested at How to have Word VBA TypeText 45 days after today's date, but have it display the following Monday?