Come cercare un valore e restituire più valori corrispondenti in Excel?

Questa guida spiega come cercare un valore e restituire più valori corrispondenti in Excel, come mostrato negli screenshot qui sotto:
Cerca un valore e restituisci più valori corrispondenti con una formula matrice
Cerca un valore e restituisci più valori corrispondenti con Filtro
Cerca un valore e restituisci più valori corrispondenti con una Funzione Definita
Cerca un valore e restituisci più valori corrispondenti con una formula matrice
Ecco una lunga formula matrice che può aiutarti a cercare un valore e restituire più valori corrispondenti.
1. Inserisci il valore che desideri cercare in una cella vuota. Vedi screenshot:
2. Nella cella adiacente, digita questa formula =SE(ERRORE(INDICE($A$1:$B$7,PICCOLO(SE($A$1:$A$7=$D$4,RIF.RIGA($A$1:$A$7)),RIF.RIGA(1:1)),2)),"",
INDICE($A$1:$B$7,PICCOLO(SE($A$1:$A$7=$D$4,RIF.RIGA($A$1:$A$7)),RIF.RIGA(1:1)),2)) al suo interno, e premi Shift + Ctrl + Enter insieme, quindi trascina il Auto Riempimento per riempire le celle verso il basso fino alla prima cella vuota. Vedi screenshot:
Nota: Nella formula sopra, $A$1:$B$7 indica l'intervallo dati, $A$1:$A$7 rappresenta l'intervallo di colonne in cui cerchi un certo valore, $D$4 indica la cella in cui hai digitato il valore da cercare nel passaggio 1, 2 indica la ricerca dei valori corrispondenti nella seconda colonna.
Cerca un valore e restituisci più valori corrispondenti con Filtro
In Excel, puoi anche utilizzare la funzionalità Filtro per risolvere questo problema.
1. Seleziona l'intervallo di colonne in cui desideri cercare il valore e clicca su Dati > Filtro. Vedi screenshot:
2. Quindi fai clic sul pulsante freccia nella prima cella dell'intervallo selezionato e seleziona solo il valore che desideri cercare nell'elenco a discesa. Vedi screenshot:
3. Clicca OK, ora vedrai che solo il valore cercato e i suoi valori corrispondenti sono stati filtrati.
Cerca un valore e restituisci più valori corrispondenti con una Funzione Definita
Se sei interessato alle Funzioni Definite, puoi risolvere il problema anche con una Funzione Definita.
1. Premi Alt + F11 per aprire la finestra Microsoft Visual Basic For Applications.
2. Clicca Modulo > Inserisci per inserire una finestra Modulo e copia il seguente codice VBA all'interno della finestra.
VBA: Cerca un valore e restituisci più valori corrispondenti.
Function MyVlookup(pWorkRng As Range, pRng As Range, pColumnIndex As Integer, Optional pType As String = "v")
'Updateby20140827
Dim xRow As Single
Dim xCol As Single
Dim arr() As Variant
ReDim arr(0)
For i = 1 To pRng.Rows.Count
If pWorkRng = pRng.Cells(i, 1) Then
arr(UBound(arr)) = pRng.Cells(i, pColumnIndex)
ReDim Preserve arr(UBound(arr) + 1)
End If
Next
If pType = "h" Then
xCol = Range(Application.Caller.Address).Columns.Count
For i = UBound(arr) To xCol
arr(UBound(arr)) = ""
ReDim Preserve arr(UBound(arr) + 1)
Next
ReDim Preserve arr(UBound(arr) - 1)
MyVlookup = arr
Else
xRow = Range(Application.Caller.Address).Rows.Count
For i = UBound(arr) To xRow
arr(UBound(arr)) = ""
ReDim Preserve arr(UBound(arr) + 1)
Next
ReDim Preserve arr(UBound(arr) - 1)
MyVlookup = Application.WorksheetFunction.Transpose(arr)
End If
End Function
3. Chiudi la finestra e digita questa formula in una cella =MyVlookup(A10,$A$2:$B$7,2) (A10 indica il valore da cercare, $A$2:$B$7 indica l'intervallo dati, 2 indica il numero dell'indice della colonna). Premi Shift + Ctrl + Enter. Trascina quindi la maniglia di riempimento verso il basso nelle celle, posiziona il cursore nella Barra delle formule e premi nuovamente Shift + Ctrl + Enter.
Suggerimento: Se desideri restituire i valori in celle orizzontali, puoi digitare questa formula =MyVlookup(A10, $A$2:$B$7, 2, "h").
I migliori strumenti per la produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un'efficienza mai vista prima. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...
Office Tab porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, invece che in nuove finestre.
- Aumenta la tua produttività del50% e riduce centinaia di clic del mouse ogni giorno!