Quando si programmano macro di Excel, è necessario sapere che le date vengono memorizzate internamente, all’interno di variabili, come numeri di serie. Il numero di serie rappresenta il numero di giorni trascorsi da una “data di base” iniziale, in particolare dal 1° gennaio 100. Ciò significa che è possibile eseguire calcoli matematici con i numeri di serie, se lo si desidera. Puoi, ad esempio, trovare il numero di giorni tra due date semplicemente sottraendo le date l’una dall’altra.
Se vuoi essere più elaborato nei calcoli della data, puoi usare la funzione DateDiff. Questa funzione consente, ad esempio, di determinare il numero di settimane o mesi tra due date. Per utilizzare la funzione per trovare questo tipo di informazioni, dovresti fare come segue:
iNumWeeks = DateDiff("ww", dFirstDate, dSecondDate)
iNumMonths = DateDiff("m", dFirstDate, dSecondDate)
La prima riga determina il numero di settimane tra le due date e la seconda determina il numero di mesi tra di esse.
Ricorda che la funzione DateDiff è una funzione macro (VBA), non una funzione del foglio di lavoro. Excel gestisce un intervallo di date nei fogli di lavoro che iniziano con il 1° gennaio 1900. In VBA, invece, le date possono iniziare (come già indicato) nell’anno 100. Ciò significa che le macro possono gestire un intervallo di date molto più ampio, comprese le date precedenti a quelle gestite in modo nativo da Excel.