Endre formatet for eksisterende Datoer

April 20  by Eliza

Aileen arbeider med en rekke dokumenter som har datoen i numerisk format, slik som 9/22/12. Hun trenger å konvertere disse datoene til et annet format, spesielt 22. september 2012. Hun lurer på om det er en enkel måte å gjøre endringen uten å måtte skrive inn hver dato.

Svaret avhenger i stor grad på innholdet i den datoen du er i endring. Datoer i et Word-dokument kan enten være rett tekst eller et felt. Du kan fortelle om datoen er et felt ved å flytte innsettingspunktet et sted inne datoen. Hvis det er et felt, deretter hele dato bør være skyggelagt i lys grå når innsettingspunktet er innenfor datoen.

Hvis datoen er et felt, så kan du høyreklikke på datoen og velg Rediger Feltet fra den resulterende hurtigmenyen. Du kan deretter endre feltet, inkludert å velge en annen dato format i listen Feltegenskaper.

Hvis datoen er vanlig tekst (ikke et felt), så må du se til en annen løsning. Det er mulig å gå gjennom dokumentet og manuelt skrive inn alle datoene, men Aileen allerede funnet ut at en slik tilnærming er langtekkelig. Det er der en makro kan komme godt med: å kurere tedium av programmatisk å gjøre det du ellers ville gjort for hånd.

Følgende makro vil gå gjennom et dokument, søker etter alle datoer i formatet m / d / åååå. (Det kan være enten ett eller to sifre for enten måned eller dag, men må være fire sifre for året.) Hvis en dato samsvarer med dette mønsteret er funnet, blir det konvertert til formatet mmmm d, åååå.

Sub GetDateAndReplace ()
Dim FoundOne Som boolsk

Selection.HomeKey Enhet: = wdStory, Extend: = wdMove
FoundOne = True 'sløyfe minst en gang

Gjør Mens FoundOne 'løkke til ingen dato er funnet
Med Selection.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "([0-9] {1,2}) [/] ([0-9] {1,2}) [/] ([0-9] {4})"
.Format = True
.forward = True
.MatchWildcards = True
Avslutt med

Selection.Find.Execute Erstatt: = wdReplaceNone

'Sjekk finner å være sikker på at det er en dato
Hvis IsDate (Selection.Text) Deretter
Selection.Text = Format (Selection.Text, "mmmm d, åååå")
Selection.Collapse wdCollapseEnd
Else 'ikke en date - end sløyfe
FoundOne = False
End If
Loop
End Sub

WordTips er din kilde for kostnadseffektiv Microsoft Word trening. (Microsoft Word er den mest populære tekstbehandlingsprogrammet i verden.) Dette tipset (12197) gjelder for Microsoft Word 2007 og 2010. Du kan finne en versjon av dette tipset for den eldre menygrensesnittet i Word her: Endre formatet for eksisterende datoer.