Formula di Excel: l'intervallo contiene un valore non in un altro intervallo -

Formula generica

=SUMPRODUCT(--(ISNA(MATCH(rngA,rngB,0))))>0

Sommario

Per verificare se un intervallo contiene valori (cioè almeno un valore) non in un altro intervallo, è possibile utilizzare la funzione SUMPRODUCT con MATCH e ISNA.

Nell'esempio mostrato, la formula in F6 è:

=SUMPRODUCT(--(ISNA(MATCH(lista,listb,0))))>0

Spiegazione

Normalmente, la funzione CONFRONTA riceve un singolo valore di ricerca e restituisce una singola corrispondenza, se presente. In questo caso, tuttavia, stiamo dando a MATCH un array per il valore di ricerca, quindi restituirà un array di risultati, uno per elemento nell'array di ricerca. MATCH è configurato per la "corrispondenza esatta". Se non viene trovata una corrispondenza, MATCH restituirà l'errore # N / A. Dopo l'esecuzione della partita, restituisce qualcosa di simile a questo:

=SUMPRODUCT(--(ISNA((3;5;6;2;#N/A;4))))>0

Ne approfittiamo utilizzando la funzione ISNA per verificare la presenza di eventuali errori # N / A.

Dopo ISNA, abbiamo:

=SUMPRODUCT(--((FALSE;FALSE;FALSE;FALSE;TRUE;FALSE)))>0

Usiamo l'operatore doppio negativo (doppio unario) per convertire i valori VERO FALSO in uno e zeri, che ci dà questo:

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

SUMPRODUCT quindi somma gli elementi nella matrice e il risultato viene confrontato con zero per forzare un risultato VERO o FALSO.

Articoli interessanti...