Beregning Datoer med Fields

June 1  by Eliza

Aidan spurt om det er mulig å beregne datoer ved hjelp av felt. Synes han ønsker en dato som er to uker i fremtiden, og tenkte at det må være en enkel måte å beregne slike en fremtidig dato hjelp felt. Uheldigvis er det ingen enkel måte. Mens Word lar deg gjøre enkle beregninger ved hjelp av numeriske verdier i felt, betyr det ikke at du kan utføre slike beregninger ved hjelp av datoer i stedet for tall.

Du kan imidlertid trekke datoer fra hverandre i sine iboende deler (måneder, dager og år), og deretter gjøre dine beregninger, men dette introduserer helt nye problemer. Plutselig må du være opptatt av hva som skjer når du "rulle" forbi slutten av en måned eller år. Den involvert i å gjøre en slik beregning matematikk er ikke trivielt. Som et eksempel, bør du vurdere følgende sammensatte feltet:

{QUOTE "{SET Delay" 14 "} {SET" DaysInMonth "{IF {DATE \ @" MM "}
<> 2 {= ROUND (30,575 * {DATE \ @ "MM"}, 0) -ROUND (30,575 * {= {DATE \ @
"MM" -1}}, 0)} {IF {= MOD ({DATE \ @ "åå" |, 4)}> 0 "28" "29"}}} {SET
"NextMonth" {IF {DATE \ @ "MM"} = 12 "1/97" "{= {DATE \ @" MM "}
+ 1} / 97}} {IF {= {REF Delay} + {DATE \ @ "dd"}} <= {DaysInMonth}
{DATE \ @ "mmmm {= {REF Delay} + {DATE \ @" dd "}}, åååå"} {QUOTE
"{NextMonth \ @" MMMM "} {= {REF Delay} + {DATE \ @" dd "} -
{DaysInMonth}} {IF {DATE \ @ "MM"} 12 {DATE \ @ "åååå"} {DATE
\ @ "{= 1 + {DATE \ @" åååå "} \ #" xxxx "}"}}}} "}

Dette vil returnere datoen i to ukers tid (nevnt i første linje der Delay verdien er satt. Ulempen er selvfølgelig er det sammensatte natur felt er det over 30 forskjellige felt like innenfor denne forbindelsen feltet! Selv dette implementering, så formidabel som den ser ut, ikke vil håndtere skuddår korrekt i alle tilfeller. (Det vil ikke håndtere skuddår riktig i århundre år delelig med 400.)

Er det en enkel måte å beregne fremtidig dato? Ja, det er-bare bruke makroer. Med bare et par enkle instruksjoner kan du gjøre kort prosess ut av ellers vanskelige datoberegninger. Måten dette er gjort ble dekket i en tidligere WordTips, du kan også finne informasjon på følgende Word MVP side:

http://word.mvps.org/FAQs/MacrosVBA/DateOfPrevMonth.htm

WordTips er din kilde for kostnadseffektiv Microsoft Word trening. (Microsoft Word er den mest populære tekstbehandlingsprogrammet i verden.) Dette tipset (1579) gjelder for Microsoft Word 97, 2000, 2002, og 2003. Du kan finne en versjon av dette tipset for Båndet av Word (Word 2007 og senere) her: Beregning Datoer med Fields.