Calcolo delle date con i campi (Microsoft Word)
Aidan ha chiesto se è possibile calcolare le date utilizzando i campi. Sembra che voglia una data che sia due settimane nel futuro e ha pensato che ci doveva essere un modo semplice per calcolare tale data futura utilizzando i campi. Sfortunatamente, non esiste un modo semplice. Sebbene Word ti consenta di eseguire calcoli semplici utilizzando valori numerici nei campi, non ti consente di eseguire tali calcoli utilizzando date anziché numeri.
È tuttavia possibile separare le date nelle loro parti intrinseche (mesi, giorni e anni) e quindi eseguire i calcoli, ma questo introduce un’intera serie di nuovi problemi. All’improvviso devi preoccuparti di cosa succede quando “rotoli” oltre la fine di un mese o anno. La matematica coinvolta nel fare un tale calcolo non è banale. Ad esempio, considera il seguente campo composto:
{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 \@ "yy"|, 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"}}, yyyy"}{QUOTE "{NextMonth \@ "MMMM"} {= {REF Delay} + {DATE \@ "dd"} — {DaysInMonth}}, {IF {DATE \@ "MM"} <> 12 {DATE \@ "yyyy"}{DATE \@ "{= 1 + {DATE \@ "yyyy"} \# "xxxx"}" }}}}"}
Ciò restituirà la data entro due settimane (specificata nella prima riga in cui è impostato il valore Delay. Lo svantaggio, ovviamente, è la natura composta del campo: ci sono oltre 30 campi diversi solo all’interno di questo campo composto! l’implementazione, per quanto formidabile possa sembrare, non gestirà correttamente gli anni bisestili in tutti i casi (non gestirà correttamente gli anni bisestili in anni di secolo divisibili per 400)
Esiste un modo semplice per calcolare le date future? Sì, è sufficiente utilizzare le macro. Con solo un paio di semplici istruzioni puoi fare un breve lavoro con calcoli di date altrimenti difficili. Questo è stato trattato in un Suggerimenti di parole precedente; puoi anche trovare informazioni nella seguente parola Pagina MVP:
http://wordmvp.com/FAQs/MacrosVBA/DateOfPrevMonth.htm
WordTips è la tua fonte di formazione su Microsoft Word conveniente.
(Microsoft Word è il software di elaborazione testi più popolare nel mondo.) Questo suggerimento (8660) si applica a Microsoft Wor d 2007, 2010, 2013, 2016, 2019 e Word in Office 365. Puoi trovare una versione di questo suggerimento per l’interfaccia del menu precedente di Word qui: