Forzare le date in avanti (Microsoft Excel)
Roger tiene traccia di http://www.formville.com/C2_free-invoice-forms.html[invoice”s in un foglio di lavoro di Excel. Tutte le fatture devono essere inviate con una data di scadenza del 28 del mese e Roger si è chiesto se ci fosse un modo per forzare una data per “saltare sempre in avanti” alla successiva istanza del 28 del mese.
Il modo più pulito per forzare l’inoltro delle date è creare una formula che esaminerà una data in una cella e quindi forzerà quella data alla successiva data desiderata, ad esempio il 28. La seguente formula è buona per iniziare:
=IF(DAY(A1)>28,DATE(YEAR(A1),MONTH(A1)+1,28),DATE(YEAR(A1),MONTH(A1),28))
Questa formula esamina la data nella cella A1. Se il valore GIORNO della data è maggiore di 28, la formula costruisce e restituisce una data uguale al 28 del mese successivo. Se è minore o uguale a 28, viene restituito il 28 del mese corrente.
Tuttavia, esiste un modo ancora più breve per rendere accettabile una formula, uno che elimina completamente la funzione IF:
=DATE(YEAR(A1),MONTH(A1)+(DAY(A1)>28),28)
Utilizza l’anno corrente come anno e il giorno è sempre 28. Il mese utilizza un calcolo booleano. Se il giorno è maggiore di 28, (Giorno (A1)> 28) sarà VERO e verrà calcolato come 1, aggiungendo quindi 1 al mese corrente. Se è minore o uguale a 28 sarà FALSO e verrà calcolato come 0, calcolando solo il mese corrente.
Se non vuoi essere “severo” dando ad alcune persone solo un giorno (il 27/04/2012 darà una data di scadenza il 28/04/2012), potresti pensare di dare loro almeno una settimana con la formula:
=DATE(YEAR(A1),MONTH(A1)+(DAY(A1)>21),28)
Questo darebbe il 28 del mese corrente dal 1 ° al 21, ma per le date successive salterà al 28 del mese successivo.
ExcelTips è la tua fonte di formazione economica su Microsoft Excel.
Questo suggerimento (2410) si applica a Microsoft Excel 97, 2000, 2002 e 2003. Puoi trovare una versione di questo suggerimento per l’interfaccia a barra multifunzione di Excel (Excel 2007 e versioni successive) qui: