Funció BUSCAR Excel amb exemples de fórmules

  • Comparteix Això
Michael Brown

El tutorial explica les formes vectorials i matrius de la funció CERCA d'Excel i demostra els usos típics i no trivials de CERCA a Excel amb exemples de fórmules.

Una de les preguntes més freqüents. que cada usuari d'Excel pregunta de tant en tant és això: " Com puc buscar un valor en un full i treure un valor coincident a un altre full? ". Per descomptat, hi pot haver moltes variacions de l'escenari bàsic: és possible que cerqueu la concordança més propera en lloc de la concordança exacta, potser voldreu cercar verticalment en una columna o horitzontalment en una fila, avaluar un o diversos criteris, etc. , l'essència és la mateixa: cal saber com cercar a Excel.

Microsoft Excel ofereix un grapat de maneres diferents de fer la cerca. Per començar, aprenem una funció dissenyada per gestionar els casos més senzills de cerca vertical i horitzontal. Com podeu endevinar fàcilment, parlo de la funció BUSCAR.

    Funció CERCA d'Excel - sintaxi i utilitza

    Al nivell més bàsic, la funció BUSCAR a Excel cerca un valor en una columna o fila i retorna un valor coincident des de la mateixa posició en una altra columna o fila.

    Hi ha dues formes de CERCA a Excel: Vector i Matriu . Cada forma s'explica individualment a continuació.

    Funció CERCADOR Excel - forma vectorial

    En aquest context, un vector fa referència a un rang d'una columna o una fila.La fórmula fa la feina:

    =LOOKUP(VLOOKUP(E2, $A$2:$C$7, 3, FALSE), {"c";"d";"t"}, {"Completed";"Development";"Testing"})

    Com es mostra a la captura de pantalla següent, la fórmula recupera l'estat del projecte de la taula de cerca i substitueix una abreviatura per la paraula corresponent:

    Consell. Si utilitzeu Excel 2016 com a part d'una subscripció a Office 365, podeu utilitzar la funció SWITCH amb finalitats similars.

    Espero que aquests exemples hagin aportat una mica de llum sobre com funciona la funció LOOKUP. Per entendre millor les fórmules, us convidem a descarregar aquests exemples de cerca d'Excel. Al següent tutorial, parlarem d'altres maneres de fer una cerca a Excel i explicarem quina fórmula de cerca s'utilitza millor en quina situació. Us agraeixo la lectura i esperem veure-us al nostre blog la setmana vinent!

    En conseqüència, utilitzeu la forma vectorial de CERCA per cercar un valor especificat en una fila o una columna de dades i extreure un valor de la mateixa posició en una altra fila o columna.

    La sintaxi de la cerca vectorial és de la següent manera:

    LOOKUP(lookup_value, lookup_vector, [result_vector])

    On:

    • Lookup_value (obligatori): un valor per cercar. Pot ser un número, text, valor lògic de VERTADER o FALS, o una referència a una cel·la que conté el valor de cerca.
    • Vector_de_cerca (obligatori): una fila o una columna interval a cercar. S'ha d'ordenar en ordre ascendent .
    • Result_vector (opcional) - interval d'una fila o una columna des del qual voleu retornar el resultat - un valor en la mateixa posició que el valor de cerca. Result_vector ha de tenir la mateixa mida que lookup_range . Si s'omet, el resultat es retorna des de vector_de_cerca .

    Els exemples següents mostren dues fórmules de cerca senzilles en acció.

    Fórmula de cerca vertical - cerca en una- rang de columnes

    Diguem que tens una llista de venedors a la columna D (D2:D5) i els productes que venien a la columna E (E2:E5). Esteu creant un tauler on els vostres usuaris introduiran el nom del venedor a B2 i necessiteu una fórmula que extreu un producte corresponent a B3. La tasca es pot fer fàcilment amb aquesta fórmula:

    =LOOKUP(B2,D2:D5,E2:E5)

    Per entendre millor laarguments, mireu aquesta captura de pantalla:

    Fórmula de cerca horitzontal: cerca en un rang d'una fila

    Si les dades d'origen tenen un disseny horitzontal, és a dir, les entrades resideixen en files en lloc de columnes i, a continuació, proporcionen un rang d'una fila als arguments vector_de_cerca i vector_resultat , com aquest:

    =LOOKUP(B2,E1:H1,E2:H2)

    A la segona part d'aquest tutorial, trobareu alguns exemples més de cerca d'Excel que resolen tasques més complexes. Mentrestant, recordeu els següents fets senzills que us ajudaran a evitar possibles esculls i evitar errors comuns.

    5 coses que hauríeu de saber sobre la forma vectorial d'Excel CERCA

    1. Valors en vector_de_cerca s'ha d'ordenar en ordre ascendent , és a dir, del més petit al més gran o de la A a la Z, en cas contrari, la fórmula de cerca d'Excel pot tornar un error o un resultat incorrecte. Si necessiteu cercar dades no ordenades , feu servir INDEX MATCH o OFFSET MATCH.
    2. Lookup_vector i result_vector han de ser un interval d'una fila o interval d'una columna de la mateixa mida.
    3. La funció CERCA a Excel no distingeix entre majúscules i minúscules , no diferencia text en majúscules i minúscules.
    4. Cerca d'Excel funciona segons la concordança aproximada . Més precisament, una fórmula de cerca cerca primer la concordança exacta. Si no pot trobar el valor de cerca exactament, cerca el següent més petitvalue , és a dir, el valor més gran de lookup_vector que és menor o igual a lookup_value .

      Per exemple, si el vostre valor de cerca és "5", la fórmula el cercarà primer. Si no es troba "5", cercarà "4". Si no es troba "4", cercarà "3", i així successivament.

    5. Si lookup_value és més petit que el valor més petit de vector_cerca , Excel LOOKUP retorna l'error #N/A.

    Funció Excel LOOKUP - forma de matriu

    La forma de matriu de la funció LOOKUP cerca el valor especificat a la primera columna o fila de la matriu i recupera un valor de la mateixa posició a l'última columna o fila de la matriu.

    La cerca de matriu té 2 arguments, tots dos són obligatoris:

    LOOKUP( valor_de_cerca, matriu)

    On:

    • Valor_de_cerca : un valor per cercar en una matriu.
    • Matriu - un rang de cel·les on voleu cercar el valor de cerca. Els valors de la primera columna o fila de la matriu (segons si feu una cerca V o una cerca H) s'han d'ordenar en ordre ascendent. Els caràcters en majúscules i minúscules es consideren equivalents.

    Per exemple, amb els noms del venedor situats a la primera columna de la matriu (columna A) i les dates de comanda a l'última columna de la matriu (columna C). , podeu utilitzar la fórmula següent per cercar el nom i treure la data coincident:

    =LOOKUP(B2,D2:F5)

    Nota. La forma matriu delLa funció CERCA d'Excel no s'ha de confondre amb les fórmules de matriu d'Excel. Tot i que funciona amb matrius, LOOKUP segueix sent una fórmula normal, que es completa de la manera habitual prement la tecla Enter.

    4 coses que hauríeu de saber sobre la forma de matriu d'Excel LOOKUP

    1. Si matriu més files que columnes o el mateix nombre de columnes i files , una fórmula de cerca cerca a la primera columna (cerca horitzontal).
    2. Si matriu més columnes que files , CERCA Excel cerca a la primera fila (cerca vertical). ).
    3. Si una fórmula no pot trobar el valor de cerca, utilitza el valor més gran de la matriu que és menor o igual que valor_de_cerca .
    4. Si el valor de cerca és més petit que el valor més petit de la primera columna o fila de la matriu (segons les dimensions de la matriu), una fórmula de cerca retorna l'error #N/A.

    Nota important! La funcionalitat del formulari de matriu CERCA d'Excel és limitada i no recomanem utilitzar-la. En comptes d'això, podeu utilitzar la funció BUSCAR V o BUSCAR HL, que són les versions millorades per fer cerca vertical i horitzontal, respectivament.

    Com utilitzar la funció CERCA a Excel - exemples de fórmules

    Tot i que existeixen funcions més potents per buscar i combinar a Excel (que és el tema del nostre proper tutorial), LOOKUP és útil en moltes situacions i els exemples següentsdemostrar un parell d'usos no trivials. Tingueu en compte que totes les fórmules següents utilitzen la forma vectorial d'Excel LOOKUP.

    Cerqueu un valor a l'última cel·la no en blanc d'una columna

    Si teniu una columna d'ompliment dinàmica dades, és possible que vulgueu triar l'entrada afegida més recentment, és a dir, obtenir l'última cel·la no buida d'una columna. Per a això, utilitzeu aquesta fórmula genèrica:

    LOOKUP(2, 1/( column ""), column )

    A la fórmula anterior, tots els arguments excepte el la referència de columna són constants. Per tant, per recuperar l'últim valor d'una columna específica, només cal que proporcioneu la referència de columna corresponent. Per exemple, per extreure el valor de l'última cel·la no en blanc de la columna A, utilitzeu aquesta fórmula:

    =LOOKUP(2, 1/(A:A""), A:A)

    Per obtenir l'últim valor d'altres columnes, modifiqueu les referències de la columna tal com es mostra a la captura de pantalla següent: la primera referència és la columna que s'ha de comprovar si hi ha cel·les en blanc/no en blanc i la segona referència és la columna per retornar el valor de:

    Com aquesta fórmula funciona

    A l'argument lookup_value , proporcioneu 2 o qualsevol altre número superior a 1 (en un moment, entendreu per què).

    A l' lookup_vector , poseu aquesta expressió: 1/(A:A"")

    • Primer, feu l'operació lògica A:A"" que compara cada cel·la de la columna A amb una cadena buida i retorna TRUE per a les cel·les buides i FALSE per a les cel·les no buides. En elA l'exemple anterior, la fórmula de F2 retorna aquesta matriu: {VERTADER;CERTADER;CERTADER;CERTADER;FALS...
    • A continuació, dividiu el número 1 per cada element de la matriu anterior. Amb TRUE equivalent a 1 i FALSE equivalent a 0, obtindreu una nova matriu formada per 1 i #DIV/0! errors (el resultat de dividir per 0), i aquesta matriu s'utilitza com a vector_de_cerca . En aquest exemple, és {1;1;1;1;#DIV/0!...}

    Ara, com és que la fórmula retorna l'últim valor no buit d'una columna , atès que lookup_value no coincideix amb cap element de lookup_vector ? La clau per entendre la lògica és que l'Excel LOOKUP cerca amb una coincidència aproximada, és a dir, quan no es troba el valor de cerca exacte, coincideix amb el següent valor més gran a lookup_vector que és més petit que lookup_value . En el nostre cas, lookup_value és 2 i el valor més gran de lookup_vector és 1, de manera que LOOKUP coincideix amb l'últim 1 de la matriu, que és l'última cel·la no buida!

    A l'argument result_vector , feu referència a la columna des de la qual voleu retornar un valor i la vostra fórmula de cerca obtindrà el valor a la mateixa posició que el valor de cerca.

    Consell. Si voleu obtenir el número de la fila que conté l'últim valor, feu servir la funció FILA per recuperar-lo. Per exemple: =LOOKUP(2,1/(A:A""),ROW(A:A))

    Cerqueu un valor a l'última cel·la no en blanc d'una fila

    Si les vostres dades d'origen estan distribuïdes en files en lloc deque les columnes, podeu obtenir el valor de l'última cel·la no buida utilitzant aquesta fórmula:

    LOOKUP(2, 1/( row ""), row )

    De fet, aquesta fórmula no és altra cosa que una lleugera modificació de la fórmula anterior, amb l'única diferència que utilitzeu la referència de fila en lloc de la referència de columna.

    Per exemple, per obtenir el valor de l'última cel·la no buida a la fila 1, utilitzeu aquesta fórmula:

    =LOOKUP(2, 1/(1:1""), 1:1)

    La captura de pantalla següent mostra el resultat:

    Obteniu un valor associada a l'última entrada consecutiva

    Amb només una mica de creativitat, la fórmula anterior es pot personalitzar fàcilment per resoldre altres tasques similars. Per exemple, es pot utilitzar per obtenir un valor associat a l'última instància d'un valor específic en una fila. Això pot semblar una mica obscur, però l'exemple següent farà que les coses siguin més fàcils d'entendre.

    Suposant que teniu una taula resum en què la columna A conté els noms dels venedors i les columnes posteriors contenen dades d'algun tipus per a cada mes. En aquest exemple, una cel·la conté "sí" si un venedor determinat ha tancat almenys un acord en un mes determinat. El nostre objectiu és aconseguir un mes associat a l'última entrada "sí" seguida.

    La tasca es pot resoldre mitjançant la següent fórmula CERCA:

    =LOOKUP(2, 1/(B2:H2="yes"), $B$1:$H$1)

    La lògica de la fórmula és bàsicament la mateixa que es descriu al primer exemple. La diferència és que utilitzeu l'operador "igual a" ("=") en lloc de "no iguala" ("") i operar en files en lloc de columnes.

    La captura de pantalla següent mostra un resultat:

    Buscar com a alternativa als FI imbricats

    A totes les fórmules de cerca que hem comentat fins ara, els arguments lookup_vector i result_vector estaven representats per referències d'interval. Tanmateix, la sintaxi de la funció CERCA d'Excel permet proporcionant els vectors en forma d'una constant de matriu vertical, que us permet replicar la funcionalitat del FI imbricat amb una fórmula més compacta i fàcil de llegir.

    Diguem que teniu una llista d'abreviatures a columna A i voleu substituir-los per noms complets, on "C" significa "Completat", "D" és "Desenvolupament i "T" és "Proves". La tasca es pot realitzar amb la següent funció IF imbricada:

    =IF(A2="c", "Completed", IF(A2="d", "Development", IF(A2="t", "Testing", "")))

    O, utilitzant aquesta fórmula de cerca:

    =LOOKUP(A2, {"c";"d";"t"}, {"Completed";"Development";"Testing"})

    Com es mostra a la captura de pantalla a continuació, ambdues fórmules donen resultats idèntics:

    Nota. Perquè una fórmula de cerca d'Excel funcioni correctament, els valors de lookup_array s'han d'ordenar de la A a la Z o de més petit a més gran.

    Si extreu valors d'una taula de cerca, podeu incrustar una funció Vlookup a l'argument lookup_value per recuperar una coincidència.

    Suposant que el valor de cerca es troba a la cel·la E2, la taula de cerca és A2:C7 i la columna d'interès ("Estat") és la tercera columna de la taula de cerca, la següent

    Michael Brown és un entusiasta de la tecnologia dedicat amb una passió per simplificar processos complexos mitjançant eines de programari. Amb més d'una dècada d'experiència en la indústria tecnològica, ha perfeccionat les seves habilitats en Microsoft Excel i Outlook, així com en Google Sheets i Docs. El bloc de Michael es dedica a compartir els seus coneixements i experiència amb altres persones, oferint consells i tutorials fàcils de seguir per millorar la productivitat i l'eficiència. Tant si sou un professional experimentat com si sou un principiant, el bloc de Michael ofereix valuoses idees i consells pràctics per treure el màxim profit d'aquestes eines de programari essencials.