Restituisci data di fine mese - Suggerimenti per Excel

Sommario

Tony ha scritto con una domanda che sembra semplice, ma richiede una formula abbastanza complicata:

Sto eseguendo Excel 97 e voglio che alcune delle celle con formattazione della data nella colonna "K" restituiscano una data che è la fine del mese quando inserisco un giorno qualsiasi di quel mese in "G". Ho provato EMONTH da una versione precedente di Excel ma non l'ho fatto funzionare in questa versione.

Esistono alcuni modi per risolvere molti problemi in Excel. Sono sicuro che qualcuno troverà qualcosa di più semplice, ma al momento mi viene in mente questa formula:

=DATE(YEAR(E1),1+MONTH(E1),1)-1

La funzione DATE () generalmente accetta tre argomenti: un anno, un mese e un giorno. Quindi, il 13 dicembre 2001 potrebbe essere inserito come =DATE(2001,12,13).

Anche la funzione data è abbastanza indulgente. Se si specifica un numero di mesi non valido, ad esempio 13, verrà fornita la data corretta. =DATE(2001,13,1)sarà il 1 ° gennaio 2002. Ciò lo rende un'ottima funzione quando è necessario aggiungere o sottrarre alla data corrente.

Per risolvere questo problema, è più facile trovare il primo giorno del mese successivo e poi sottrarre un giorno. Questo è più semplice, perché sappiamo che la porzione del giorno del primo del mese successivo è sempre 1. Mentre, se provassi a trovare l'ultimo giorno di questo mese, dovresti controllare gli anni bisestili, ecc. pasticcio.

Se hai una data in E1, YEAR (E1) restituirà la parte dell'anno della data. Mese (E1) +1 restituirà la parte relativa al mese della data e la farà avanzare al mese successivo. L'argomento finale, l'1, selezionerà il primo giorno del mese successivo. Poi, finalmente, ne sottraggo uno da quella data per convertire 1/1/2002 in 12/31/2001.

Aggiornare

Grazie a Steve H. per questa risposta pronta all'uso. È insolito considerare lo "0 °" di un mese, ma funziona!

=DATE(YEAR(E1),1+MONTH(E1),0)

Articoli interessanti...