Formula di Excel: le date di formattazione condizionale si sovrappongono -

Formula generica

=SUMPRODUCT((start_date=start_dates))>1

Sommario

Per evidenziare le celle in cui le date si sovrappongono, puoi utilizzare la formattazione condizionale con una formula basata sulla funzione SUMPRODUCT. Nell'esempio mostrato la formula in E6 sud è:

=SUMPRODUCT(($C6=$C$5:$C$9))>1

Questa è la stessa formula utilizzata per evidenziare intere righe nella tabella utilizzando una regola di formattazione condizionale basata su formula.

Spiegazione

Considera per un momento come funzionano le date sovrapposte. Affinché un progetto si sovrapponga alle date di altri progetti, devono essere soddisfatte due condizioni:

1. La data di inizio deve essere minore o uguale (<=) ad almeno un'altra data di fine e all'elenco.

2. La data di fine del progetto deve essere maggiore o uguale a (> =) almeno un'altra data di inizio nell'elenco.

Se entrambe queste condizioni sono vere, le date del progetto devono sovrapporsi a un altro progetto in quell'elenco.

La funzione SUMPRODUCT è perfetta per questo tipo di test perché gestisce elegantemente i confronti di array.

Per controllare la data di inizio di un progetto contro tutte le date di fine, usiamo questa espressione:

($C6<=$D$5:$D$9)

Per controllare la data di fine di un progetto contro tutte le date di fine, usiamo questa espressione:

($D6>=$C$5:$C$9)

Le matrici risultanti di valori TRUE FALSE vengono moltiplicate l'una per l'altra all'interno di SUMPRODUCT. Questo forza automaticamente i risultati VERO e FALSO in 1 e 0, quindi la formula viene risolta in questo modo:

=SUMPRODUCT((0;1;1;1;1)*(1;1;1;0;0))>1 =SUMPRODUCT((0;1;1;0;0))>1 =TRUE

Articoli interessanti...