Formula di Excel: l'elenco contiene duplicati -

Sommario

Formula generica

=SUMPRODUCT(COUNTIF(data,data)-1)>0

Sommario

Un intervallo contiene valori duplicati? Se vuoi testare un intervallo (o un elenco) per i duplicati, puoi farlo con una formula che utilizza COUNTIF insieme a SUMPRODUCT.

Nell'esempio, è presente un elenco di nomi nell'intervallo B3: B11. Se vuoi testare questo elenco per vedere se ci sono nomi duplicati, puoi usare:

=SUMPRODUCT(COUNTIF(B3:B11,B3:B11)-1)>0

Spiegazione

Lavorando dall'interno verso l'esterno, CONTA.SE ottiene prima un conteggio di ogni valore in B3: B11 nell'intervallo B3: B11. Poiché forniamo un intervallo (array) di celle per i criteri, CONTA.SE come risultato restituisce un array di conteggi. Nell'esempio mostrato questo array ha questo aspetto:

(1; 2; 1; 1; 1; 1; 1; 2; 1)

Il prossimo 1 viene sottratto, il che restituisce un array come questo:

(0; 1; 0; 0; 0; 0; 0; 1; 0)

Notare che ogni 1 nella matrice (cioè gli elementi che compaiono solo una volta) è stato convertito in zero.

Successivamente, SUMPRODUCT aggiunge gli elementi in questo array e restituisce il risultato, che in questo caso è il numero 2, che viene quindi verificato per un valore> 0.

Ogni volta che un elenco contiene duplicati, ci saranno almeno due 1 nell'array sommati da SUMPRODUCT, quindi un risultato finale TRUE significa che l'elenco contiene duplicati.

Gestire le celle vuote

Le celle vuote nell'intervallo faranno sì che la formula sopra generi risultati errati. Per filtrare celle vuote o vuote, puoi utilizzare la seguente alternativa:

=SUMPRODUCT((COUNTIF(list,list)-1)*(list""))>0

Qui usiamo l'elenco delle espressioni logiche "" per forzare a zero tutti i valori associati alle celle vuote.

Buoni collegamenti

Lista di controllo per numeri duplicati (Chandoo)

Articoli interessanti...