INDICE e CORRISPONDENZA su più colonne
Per cercare un valore confrontando su più colonne, una formula matriciale basata sulle INDICE e CORRISPONDENZA che incorpora MMULT, TRASPOSTA, e COLONNA ti sarà utile.
Come cercare un valore confrontando su più colonne?
Per inserire la classe corrispondente di ogni studente come mostrato nella tabella sopra, dove le informazioni sono elencate su più colonne, puoi prima utilizzare il trucco delle funzioni MMULT, TRASPOSTA e COLONNA per produrre un array matrice. Poi la funzione CORRISPONDENZA ti darà la posizione del tuo valore di ricerca, che verrà passato a INDICE per recuperare il valore che stai cercando nell'array.
Sintassi Generica
=INDICE(intervallo_restituito,(CORRISPONDENZA(1,MMULT(--(intervallo_ricerca=valore_ricerca),TRASPOSTA(COLONNA(intervallo_ricerca)^0)),0)))
√ Nota: Questa è una formula matriciale che richiede di essere inserita con Ctrl + Maiusc + Invio.
- intervallo_restituito: L'intervallo da cui vuoi che la formula restituisca le informazioni sulla classe. Qui si riferisce all'intervallo della classe.
- valore_ricerca: Il valore che la formula utilizza per trovare le informazioni sulla classe corrispondente. Qui si riferisce al nome dato.
- intervallo_ricerca: L'intervallo di celle in cui è elencato il valore_ricerca; L'intervallo con i valori da confrontare con il valore_ricerca. Qui si riferisce all'intervallo dei nomi.
- tipo_corrispondenza 0: Forza CORRISPONDENZA a trovare il primo valore che è esattamente uguale al valore_ricerca.
Per trovare la classe di Jimmy, copia o inserisci la formula sottostante nella cella H5, e premi Ctrl + Maiusc + Invio per ottenere il risultato:
=INDICE($B$5:$B$7,(CORRISPONDENZA(1,MMULT(--($C$5:$E$7=G5),TRASPOSTA(COLONNA($C$5:$E$7)^0)),0)))
√ Nota: I segni del dollaro ($) sopra indicano riferimenti assoluti, il che significa che gli intervalli di nomi e classi nella formula non cambieranno quando sposterai o copierai la formula in altre celle. Tieni presente che non dovresti aggiungere segni di dollaro al riferimento di cella che rappresenta il valore di ricerca, poiché vuoi che sia relativo quando lo copi in altre celle. Dopo aver inserito la formula, trascina la maniglia di riempimento verso il basso per applicare la formula alle celle sottostanti.
Spiegazione della formula
=INDICE($B$5:$B$7,(CORRISPONDENZA(1,MMULT(--($C$5:$E$7=G5),TRASPOSTA(COLONNA($C$5:$E$7)^0)),0)))
- --($C$5:$E$7=G5): Questo segmento controlla ogni valore nell'intervallo $C$5:$E$7 se sono uguali al valore nella cella G5, e genera un array VERO e FALSO come questo:
{TRUE,FALSE,FALSE;FALSE,FALSE,FALSE;FALSE,FALSE,FALSE}.
Il doppio negativo convertirà quindi i VERO e FALSO in 1 e 0 per produrre un array come questo:
{1,0,0;0,0,0;0,0,0}. - COLONNA($C$5:$E$7): La funzione COLONNA restituisce i numeri di colonna per l'intervallo $C$5:$E$7 in un array come questo: {3,4,5}.
- TRASPOSTA(COLONNA($C$5:$E$7)^0) = TRASPOSTA({3,4,5}^0): Dopo aver elevato alla potenza 0, tutti i numeri nell'array {3,4,5} verranno convertiti in 1: {1,1,1}. La funzione TRASPOSTA converte quindi l'array di colonne in un array di righe come questo: {1;1;1}.
- MMULT(MMULT(--($C$5:$E$7=G5),,TRASPOSTA(COLONNA($C$5:$E$7)^0))) = MMULT(MMULT({1,0,0;0,0,0;0,0,0},,{1;1;1})): La funzione MMULT restituisce il prodotto matriciale dei due array come questo: {1;0;0}.
- CORRISPONDENZA(1,MMULT(--($C$5:$E$7=G5),TRASPOSTA(COLONNA($C$5:$E$7)^0)),0) = CORRISPONDENZA(1,{1;0;0},0): Il tipo_corrispondenza 0 forza la funzione CORRISPONDENZA a restituire la posizione della prima corrispondenza di 1 nell'array {1;0;0}, che è 1.
- INDICE($B$5:$B$7$B$5:$B$7,,,(CORRISPONDENZA(1,MMULT(--($C$5:$E$7=G5),,,TRASPOSTA(COLONNA($C$5:$E$7)^0)),0))) = INDICE($B$5:$B$7$B$5:$B$7,,,1): La funzione INDICE restituisce il primo valore nell'intervallo di classe $B$5:$B$7, che è A.
Per cercare facilmente un valore confrontando su più colonne, puoi anche utilizzare il nostro add-in Excel professionale Kutools per Excel. Vedi le istruzioni qui per portare a termine la missione.
Funzioni correlate
La funzione INDICE di Excel restituisce il valore visualizzato in base a una data posizione da un intervallo o un array.
Funzione CORRISPONDENZA di Excel
La funzione CORRISPONDENZA di Excel cerca un valore specifico in un intervallo di celle e restituisce la posizione relativa del valore.
La funzione MMULT di Excel restituisce il prodotto matriciale di due array. L'array risultante ha lo stesso numero di righe di array1 e lo stesso numero di colonne di array2.
La funzione TRASPOSTA di Excel ruota l'orientamento di un intervallo o array. Ad esempio, può ruotare una tabella disposta orizzontalmente in righe in verticale in colonne o viceversa.
La funzione COLONNA restituisce il numero di colonna in cui appare la formula o restituisce il numero di colonna del riferimento dato. Ad esempio, la formula =COLONNA(BD) restituisce 56.
Formule correlate
Ricerca con criteri multipli con INDICE e CORRISPONDENZA
Quando si gestisce un grande database in un foglio di calcolo Excel con diverse colonne e didascalie di riga, è sempre complicato trovare qualcosa che soddisfi criteri multipli. In questo caso, puoi utilizzare una formula matriciale con le funzioni INDICE e CORRISPONDENZA.
Ricerca bidirezionale con INDICE e CORRISPONDENZA
Per cercare qualcosa sia nelle righe che nelle colonne in Excel, o diciamo per cercare un valore all'intersezione di una riga e colonna specifiche, possiamo utilizzare l'aiuto delle funzioni INDICE e CORRISPONDENZA.
Cerca il valore corrispondente più vicino con criteri multipli
In alcuni casi, potrebbe essere necessario cercare il valore corrispondente più vicino o approssimativo basandosi su più di un criterio. Con la combinazione delle funzioni INDICE, CORRISPONDENZA e SE, puoi farlo rapidamente in Excel.
I migliori strumenti per la produttività di Office
Kutools per Excel - Ti aiuta a distinguerti dalla massa
Kutools per Excel vanta oltre 300 funzionalità, garantendo che ciò di cui hai bisogno sia a portata di clic...
Office Tab - Abilita la lettura e la modifica a schede in Microsoft Office (include Excel)
- Un secondo per passare tra decine di documenti aperti!
- Riduci centinaia di clic del mouse ogni giorno, dì addio al dolore al polso.
- Aumenta la tua produttività del 50% durante la visualizzazione e la modifica di più documenti.
- Porta le schede efficienti in Office (include Excel), proprio come Chrome, Edge e Firefox.