Restituzione di valori a sinistra di un CERCA.VERT (Microsoft Excel)
Sam usa spesso la funzione CERCA.VERT. È molto utile, ma c’è una grave limitazione: la ricerca può fare riferimento solo alle colonne a destra. Ciò significa che Sam non può utilizzare, come terzo parametro per CERCA.VERT, un valore negativo per fare riferimento a una colonna a sinistra. Si chiede se ci sia un modo per aggirare questa limitazione.
In realtà ci sono tre modi per aggirare questa limitazione: ristrutturazione, utilizzo di INDICE e utilizzo di SCEGLI. Analizzerò ciascuno di questi metodi, a turno.
Ristrutturare i tuoi contenuti
Questo potrebbe essere l’approccio meno desiderabile, ma lo tolgo subito. Se ritieni di dover restituire valori a sinistra della tua ricerca abbastanza spesso, potresti prendere in considerazione la ristrutturazione del foglio di lavoro in modo che i valori siano a destra della formula.
Un metodo alternativo di ristrutturazione consiste nell’utilizzare una colonna helper a destra della formula. Questa colonna helper deve semplicemente fare riferimento ai valori di ritorno effettivi. Ad esempio, se i valori di ritorno sono nella colonna A e la formula è nella colonna E, potresti aggiungere una colonna helper a J.
La formula in J1 sarebbe semplicemente = A1. Copialo, quindi usa la colonna J come valori di ritorno nelle formule nella colonna E.
Usando INDEX e MATCH
Forse l’approccio più comune al problema che Sam sta riscontrando è usare una combinazione delle funzioni INDICE e CONFRONTA invece di CERCA.VERT. Ad esempio, supponiamo di avere la seguente formula CERCA.VERT:
=VLOOKUP(G1,$C$1:$E$100,3,TRUE)
Questo cerca nell’intervallo C1: C100 il valore in G1 (come corrispondenza approssimativa) e ottiene il valore corrispondente in E1: E100. Questa formula è equivalente alla seguente formula:
=INDEX($E$1:$E$100,MATCH(G1,$C$1:$C$100,1))
Quindi, se vuoi ottenere una colonna a sinistra della tua colonna di ricerca (ad esempio A1: A100), potresti usare qualcosa come:
=INDEX($A$1:$A$100,MATCH(G1,$C$1:$C$100,1))
Se vuoi una corrispondenza esatta restituita dalla ricerca, tutto ciò che devi fare è cambiare l’1 finale nella funzione MATCH in uno 0, in questo modo:
=INDEX($A$1:$A$100,MATCH(G1,$C$1:$C$100,0))
Utilizzando CERCA.VERT e SCEGLI
Se si desidera effettivamente continuare a utilizzare la funzione CERCA.VERT nella formula, è possibile “ingannarla” nel recuperare i valori a sinistra includendo anche la funzione SCEGLI.
Per illustrare ciò, supponiamo che i valori di ricerca siano nella colonna D e i valori restituiti siano nella colonna A. Nella cella G1 è il valore di ricerca. La seguente formula restituirà i valori corretti:
=VLOOKUP(G1,CHOOSE({1,2},$D$1:$D$100,$A$1:$A$100),2,FALSE)
La funzione SCEGLI restituisce un array costituito dalle celle indicate.
La funzione CERCA.VERT restituisce quindi un valore dalla seconda colonna di quell’array, che è semplicemente la colonna A, a sinistra della colonna D.
ExcelTips è la tua fonte di formazione economica su Microsoft Excel.
Questo suggerimento (13608) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 e Excel in Office 365.