Trovare le posizioni con MATCH
Individui la posizione di un valore all'interno di una riga o di una colonna
Trovare le posizioni con MATCH è una lezione Excel Formulas Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Excel Formulas Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Excel Formulas Academy include 4 lezioni in totale.
Presentazione della funzione MATCH
Se INDEX recupera un valore in base alla posizione, MATCH svolge il compito opposto: indica in quale posizione si trova un valore.
Si forniscono a MATCH un valore da cercare e un intervallo in cui effettuare la ricerca; la funzione restituisce un numero, cioè la posizione in cui è stato trovato quel valore.
MATCH non restituisce il valore in sé, ma solo la sua posizione. Questo numero è esattamente ciò di cui INDEX ha bisogno per funzionare.
La sintassi di MATCH
MATCH accetta tre argomenti:
- lookup_value — il valore che si desidera trovare
- lookup_array — l'intervallo in cui effettuare la ricerca
- match_type — il tipo di corrispondenza: 0, 1 o -1
Una chiamata tipica è =MATCH("Cherry", B2:B6, 0). Lo 0 finale significa "trovare una corrispondenza esatta".
Per le ricerche di uso quotidiano, si utilizza quasi sempre 0.
=MATCH("Cherry", B2:B6, 0)Interpretare il risultato
Supponga che B2:B6 contenga Apple, Banana, Cherry, Date, Fig. L'esecuzione di =MATCH("Cherry", B2:B6, 0) restituisce 3.
Perché 3? Perché Cherry è il terzo elemento dell'intervallo. MATCH conta dall'inizio di B2:B6 e trova Cherry in posizione 3.
Si noti che la risposta è un numero di posizione, non la parola Cherry. Nella prossima lezione questa posizione verrà fornita a INDEX per recuperare il valore effettivo.
=MATCH("Cherry", B2:B6, 0)Perché match_type 0 è importante
Il terzo argomento determina il modo in cui MATCH effettua la ricerca:
- 0 — corrispondenza esatta; il valore deve essere trovato precisamente, in qualsiasi ordine
- 1 — il valore più grande minore o uguale al valore cercato; i dati devono essere ordinati in modo crescente
- -1 — il valore più piccolo maggiore o uguale al valore cercato; i dati devono essere ordinati in modo decrescente
Per trovare un elemento specifico, come un codice prodotto o un nome, utilizzi sempre 0. Le altre modalità sono destinate agli intervalli numerici ordinati.
=MATCH("East", A2:A20, 0)MATCH funziona anche con i numeri
MATCH funziona altrettanto bene con i numeri che con il testo. Se C2:C8 contiene gli ID degli ordini e si desidera sapere dove si trova l'ID 5042, si scrive =MATCH(5042, C2:C8, 0).
Se 5042 si trova nella quarta riga di quell'intervallo, MATCH restituisce 4.
Il valore da cercare può anche essere un riferimento di cella. =MATCH(E1, C2:C8, 0) trova qualunque ID sia stato digitato in E1, quindi la ricerca si aggiorna quando si modifica E1.
=MATCH(E1, C2:C8, 0)Cercare in una riga
MATCH non fa differenza tra un intervallo disposto verticalmente e uno disposto orizzontalmente. Si limita a contare le posizioni.
Supponga che la riga 1 contenga le intestazioni dei mesi in B1:M1: Jan, Feb, Mar e così via. Per individuare in quale colonna si trova "Mar", si scrive =MATCH("Mar", B1:M1, 0), che restituisce 3.
Questo utilizzo orizzontale è essenziale per le ricerche a due dimensioni, in cui si individuano separatamente la posizione di una riga e quella di una colonna.
=MATCH("Mar", B1:M1, 0)Quando MATCH non trova il valore
Se il valore cercato non esiste nell'intervallo, MATCH restituisce l'errore #N/A, che significa semplicemente "non disponibile".
Ad esempio, =MATCH("Mango", B2:B6, 0) applicata a un elenco senza Mango restituisce #N/A.
Si tratta di un comportamento normale, non di una formula danneggiata. In seguito si racchiuderanno le ricerche in IFNA o IFERROR per visualizzare un messaggio comprensibile invece dell'errore non elaborato.
=MATCH("Mango", B2:B6, 0)La corrispondenza esatta ignora l'ordine
Un grande vantaggio di match_type 0 è che i dati non devono essere ordinati. MATCH analizza l'intervallo e restituisce la posizione della prima corrispondenza esatta trovata.
Quindi, sia che l'elenco delle regioni sia in ordine alfabetico, sia che sia completamente disordinato, =MATCH("West", A2:A20, 0) individua comunque correttamente West.
È proprio questa libertà a rendere la corrispondenza esatta la scelta predefinita per quasi tutte le ricerche reali.
=MATCH("West", A2:A20, 0)Corrispondenza approssimativa per dati ordinati
Match_type 1 è utile per fasce e livelli. Con un elenco crescente e ordinato di soglie, MATCH trova il valore più grande che sia ancora minore o uguale al valore cercato.
Se A2:A6 contiene 0, 100, 500, 1000, 5000 e si esegue =MATCH(750, A2:A6, 1), si ottiene 3, perché 500 è la soglia più alta che non supera 750.
È così che le tabelle dei voti e dei prezzi associano un valore alla fascia corretta.
=MATCH(750, A2:A6, 1)MATCH da sola raramente basta
Da sola, MATCH comunica soltanto un numero di posizione, che non è molto utile come risposta finale. "Il cliente si trova nella riga 7" è solo un passaggio intermedio.
Di solito si desiderano i dati in quella posizione: l'indirizzo email, il saldo o lo stato del cliente.
Ecco perché MATCH quasi mai viene utilizzata da sola. Nella prossima lezione la posizione restituita da MATCH verrà inserita direttamente in INDEX per recuperare il valore effettivo che interessa.
=MATCH(E1, A2:A100, 0)Due MATCH per due dimensioni
È possibile eseguire MATCH due volte per determinare separatamente una riga e una colonna. Una MATCH individua la posizione della riga cercando in una colonna di etichette, mentre l'altra individua la posizione della colonna cercando in una riga di intestazioni.
Ad esempio, per trovare la riga che contiene "East" si utilizza =MATCH("East", A2:A10, 0), mentre per trovare la colonna che contiene "Q3" si utilizza =MATCH("Q3", B1:E1, 0).
Insieme, questi due numeri descrivono una cella precisa, pronta per essere utilizzata da INDEX.
=MATCH("East", A2:A10, 0)Verifica rapida
Verifichi di aver compreso che cosa restituisce MATCH.
Riepilogo: MATCH individua le posizioni
Ha appreso che MATCH restituisce la posizione di un valore all'interno di un intervallo:
=MATCH(lookup_value, lookup_array, match_type)- Utilizzi 0 per le corrispondenze esatte; i dati non devono essere ordinati
- Utilizzi 1 con dati crescenti per trovare la fascia o il livello corretto
- Funziona sia verticalmente sia orizzontalmente e restituisce
#N/Aquando non trova corrispondenze
MATCH fornisce la posizione; INDEX trasforma una posizione in un valore. Ora li combinerà in un'unica potente formula di ricerca.
=MATCH("Cherry", B2:B6, 0)Domande Frequenti
La lezione «Trovare le posizioni con MATCH» è gratuita?
Sì — il testo completo di «Trovare le posizioni con MATCH» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Excel Formulas Academy, passa a CoddyKit PRO. Il corso Excel Formulas Academy include 4 lezioni in totale.
Cosa imparerò in «Trovare le posizioni con MATCH»?
Individui la posizione di un valore all'interno di una riga o di una colonna Eserciti Excel Formulas Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Excel Formulas Academy?
Non è richiesta alcuna esperienza precedente. Excel Formulas Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.
Quanto tempo richiede la lezione «Trovare le posizioni con MATCH»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Excel Formulas Academy?
Sì. Ogni lezione Excel Formulas Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Prelevare valori con INDEX
- Trovare le posizioni con MATCH
- Combinare INDEX e MATCH
- Perché INDEX-MATCH è migliore di VLOOKUP