Bene, abbiamo contato valori univoci utilizzando la funzione COUNTIF e SUMPRODUCT. Sebbene questo metodo sia facile, ma è lento quando i dati sono grandi. In questo articolo impareremo come contare valori di testo univoci in Excel con una formula più veloce
Formula generica per contare valori di testo univoci in Excel
=SUM(--(FREQUENCY(MATCH(range,range,0),ROW(first_cell_in_range)+1)>0))
Gamma : l'intervallo da cui si desidera ottenere valori univoci.
prima cella nel raggio d'azione: È il riferimento della prima cella in gamma. Se l'intervallo è A2:A10, allora è A2.
Vediamo un esempio per chiarire le cose.
Esempio: Conta valori di testo univoci Excel
In un foglio Excel, ho questi dati dei nomi nell'intervallo A2: A10. Voglio ottenere il conteggio dei nomi univoci dall'intervallo specificato.
Applica qui la formula generica sopra per contare il testo univoco nell'intervallo excel A2: A10. Ho chiamato A2: A10 come nomi.
=SOMMA(--(FREQUENZA(CONFRONTA(nomi,nomi,0),RIGA(A2)+1)>0))
Restituisce il conteggio totale dei testi univoci nell'intervallo A2:A10.
Come funziona?
Risolviamolo dall'interno.
INCONTRO(nomi,nomi,0): questa parte restituirà la prima posizione di ciascun valore nell'intervallo A2: A10 (nomi) come da proprietà di MATCH.
{1;1;3;3;5;5;7;7;7}.
RIGA successiva(A2:A19): Questo restituisce il numero di riga di ogni cella nell'intervallo A2:A10.
{2;3;4;5;6;7;8;9;10}
ROW(names)-ROW(A2): Ora sottraiamo il primo numero di riga da ogni numero di riga. Questo restituisce un array di numeri di serie a partire da 0.
{0;1;2;3;4;5;6;7;8}
Poiché vogliamo avere un numero di serie a partire da 1, aggiungiamo 1 ad esso.
RIGA(nomi)-RIGA(A2)+1. Questo ci dà una serie di numeri di serie a partire da 1.
{1;2;3;4;5;6;7;8;9}
Questo ci aiuterà a ottenere un conteggio unico a condizione.
Ora abbiamo:
FREQUENZA({1;1;3;3;5;5;7;7;7},{1;2;3;4;5;6;7;8;9}).
Questo restituisce la frequenza di ogni numero in un dato array.{2;0;2;0;2;0;3;0;0;0}
Qui ogni numero positivo indica l'occorrenza di un valore univoco quando i criteri sono soddisfatti. Dobbiamo contare i valori maggiori di 0 in questo array. Per questo lo controlliamo per >0. Questo restituirà VERO e FALSO. Convertiamo vero falso usando -- (operatore binario doppio).
SOMMA(--({2;0;2;0;2;0;3;0;0;0})>0) questo si traduce inSOMMA({1;0;1;0;1;0;1;0;0;0})
E infine otteniamo il conteggio univoco dei nomi nell'intervallo sui criteri come 4.
Come contare il testo univoco nell'intervallo con celle vuote?
Il problema con la formula sopra è che quando hai una cella vuota nell'intervallo, verrà visualizzato l'errore #N/A. Per far fronte a questo abbiamo bisogno di mettere una condizione per controllare le celle vuote.
=SOMMA(--(FREQUENZA(SE(nomi “”,CONFRONTA(nomi,nomi,0)),RIGA(A2)+1)>0))
Questo darà un output corretto. Qui abbiamo incapsulato MATCH con la funzione IF. Puoi leggere la spiegazione completa nell'articolo Come contare i valori univoci in Excel con più criteri?
Quindi sì ragazzi, ecco come ottenere un conteggio del testo univoco in Excel. Fammi sapere se hai dei dubbi su questo o su qualsiasi altro argomento excel/vba avanzato. La sezione commenti è aperta per te.
Download file:
Articoli Correlati:
Come contare i valori univoci in Excel con criteri
Formula di Excel per estrarre valori univoci da un elenco
Conta valori univoci in Excel
Articoli popolari:
La funzione CERCA.VERT in Excel
CONTA.SE in Excel 2016
Come utilizzare la funzione SOMMA.SE in Excel