Como facer Vlookup en Excel - exemplos de fórmulas

  • Comparte Isto
Michael Brown

O titorial explica como facer que Excel VLOOKUP distinga entre maiúsculas e minúsculas, demostra algunhas outras fórmulas que distinguen maiúsculas e minúsculas do texto e sinala os puntos fortes e limitacións de cada función.

Supoño que todas O usuario de Excel sabe que función realiza unha busca vertical en Excel. Certo, é BUSCAR V. Non obstante, moi poucas persoas saben que a BUSCAR V de Excel non distingue entre maiúsculas e minúsculas, o que significa que trata as letras minúsculas e MAIÚSCULAS como os mesmos caracteres.

Aquí tes un exemplo rápido que demostra a incapacidade de BUSCAR V para distinguir maiúsculas e minúsculas. Supoña que se ten "factura" na cela A2 e "Factura" en A4. A seguinte fórmula captará "factura" porque aparece primeiro na matriz de busca e devolverá un valor coincidente de B2.

=VLOOKUP("Bill", A2:B4, 2, FALSE)

Máis adiante neste artigo, mostrareiche un xeito de facer que BUSCARV distinga entre maiúsculas e minúsculas. Tamén exploraremos algunhas outras funcións que poden facer unha coincidencia entre maiúsculas e minúsculas en Excel.

    Fórmula de BUSCAR V que distingue entre maiúsculas e minúsculas

    Como se mencionou anteriormente, unha fórmula habitual de BUSCAR V non recoñece a letra maiúscula. Non obstante, hai unha forma de facer que Excel VLOOKUP distinga entre maiúsculas e minúsculas, como se demostra no seguinte exemplo.

    Supoña que tes Identificacións de artigos na columna A e queres extraer o prezo e comentar o artigo. das columnas B e C. O problema é que os ID inclúen caracteres tanto en minúscula como en maiúscula. Por exemplo, os valores en A4 (001Tvci3u) e A5 (001Tvci3U) só difiren eno último carácter, "u" e "U", respectivamente.

    Ao buscar "001Tvci3 U ", unha fórmula estándar VLOOKUP produce $90 que está asociado con "001Tvci3 u " porque aparece antes de "001Tvci3 U " na matriz de busca. Pero isto non é o que queres, non?

    =VLOOKUP(F2, A2:C7, 2, FALSE)

    Para realizar unha busca que distingue entre maiúsculas e minúsculas en Excel, combinamos a BUSCAR V, ESCOLLE e EXACTA. funcións:

    BUSCARV(VERDADEIRO, ESCOLLER({1,2}, EXACTO( valor_busca, matriz_busca), matriz_retorno), 2, 0)

    Esta fórmula xenérica funciona perfectamente en todas as situacións. Incluso podes buscar de dereita a esquerda , algo que unha fórmula de BUSCAR V normal non pode facer. Parabéns a Pouriya por suxerir esta solución sinxela e elegante!

    No noso caso, as fórmulas reais son as seguintes.

    Para tirar o prezo en F3:

    =VLOOKUP(TRUE, CHOOSE({1,2}, EXACT(F2, A2:A7), B2:B7), 2, FALSE)

    Para buscar o comentario F4:

    =VLOOKUP(TRUE, CHOOSE({1,2}, EXACT(F2, A2:A7), C2:C7), 2, FALSE)

    Nota. En todas as versións de Excel que non sexan Excel 365, isto só funciona como unha fórmula matricial, polo que lembra premer Ctrl + Maiús + Intro para completala correctamente. En Excel 365, debido á compatibilidade con matrices dinámicas, tamén funciona como unha fórmula normal.

    Como funciona esta fórmula:

    A parte principal que fai o truco é a fórmula CHOOSE con EXACT anidado:

    CHOOSE({1,2}, EXACT(F2, A2:A7), C2:C7)

    Aquí, a función EXACT compara o valor en F2 con cada valor en A2:A7 e devolve VERDADEIRO se son exactamente iguais, incluíndo a letra maiúscula.FALSO en caso contrario:

    {FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}

    Para o argumento número_índice de CHOOSE, usamos a constante matricial {1,2}. Como resultado, a función combina os valores lóxicos da matriz anterior e os valores de C2:C7 nunha matriz bidimensional como esta:

    {FALSE,155;FALSE,186;FALSE,90;TRUE,54;FALSE,159;FALSE,28}

    A función BUSCAR V tómaa de alí e busca o valor de busca (que é VERDADEIRO) na 1a columna da matriz bidimensional (representada polos valores lóxicos) e devolve unha coincidencia na 2a columna, que é o prezo que estamos a buscar:

    VLOOKUP(TRUE, {FALSE,155;FALSE,186;FALSE,90;TRUE,54;FALSE,159;FALSE,28}, 2, 0)

    Fórmula XLOOKUP con distinción entre maiúsculas e minúsculas

    Os subscritores de Microsoft 365 poden facer unha busca en Excel cunha fórmula aínda máis sinxela. Como podes supoñer, estou a falar dun sucesor máis poderoso de BUSCARV: a función BUSCAR XL.

    Debido a que BUSCAR XL opera nas matrices de busca e devolución por separado, non necesitamos o truco de matriz bidimensional do anterior. exemplo. Simplemente, use EXACT para o argumento lookup_array :

    XLOOKUP(TRUE, EXACT( lookup_value , lookup_array ), return_array , " Non atopado")

    O último argumento ("Non atopado") é opcional. Só define que valor devolver se non se atopa ningunha coincidencia. Se o omites, devolverase un erro estándar #N/A no caso de que a fórmula non atope nada.

    Para a nosa táboa de mostra, estas son as fórmulas XLOOKUP que distinguen entre maiúsculas e minúsculas.

    Para obter o prezo en F3:

    =XLOOKUP(TRUE, EXACT(F2, A2:A7), B2:B7, "Not found")

    Para extraer ocomentario F4:

    =XLOOKUP(TRUE, EXACT(F2, A2:A7), C2:C7, "Not found")

    Como funciona esta fórmula:

    Como no exemplo anterior, EXACT devolve unha matriz de valores TRUE e FALSE, onde TRUE representa coincidencias que distinguen entre maiúsculas e minúsculas. XLOOKUP busca na matriz anterior o valor VERDADEIRO e devolve unha coincidencia da return_array . Teña en conta que se hai dous ou máis valores exactamente iguais na columna de busca (incluída a letra maiúscula), a fórmula devolverá a primeira coincidencia atopada.

    Limitación de BUSQUEDA XL : só dispoñible en Excel 365 e Excel 2021.

    SUMPRODUCT: busca que distingue entre maiúsculas e minúsculas para devolver números coincidentes

    Como entendes polo encabezado, SUMPRODUCT é outra función de Excel que pode facer unha busca que distingue entre maiúsculas e minúsculas. , pero só pode devolver valores numéricos . Se este non é o teu caso, vai ao exemplo INDEX MATCH que ofrece unha solución para todos os tipos de datos.

    Como probablemente sabes, o SUMPRODUCT de Excel multiplica os compoñentes nas matrices especificadas e devolve a suma dos produtos. Dado que queremos unha busca que distingue entre maiúsculas e minúsculas, usamos a función EXACTA para obter a primeira matriz:

    =SUMPRODUCT((EXACT(A2:A7,F2) * (B2:B7)))

    Lamentablemente, a función SUMAPRODUTO non pode devolver coincidencias de texto xa que os valores de texto non se poden multiplicar. Neste caso, obterás un #VALOR! erro como na cela F4 da captura de pantalla a continuación:

    Como funciona esta fórmula:

    Como no exemplo de BUSCAR V, o EXACTO comprobacións de funciónso valor en F2 contra todos os valores en A2:A7 e devolve VERDADEIRO para coincidencias que distinguen entre maiúsculas e minúsculas, FALSO en caso contrario:

    SUMPRODUCT(({FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}*{155;186;90;54;159;28}))

    Na maioría das fórmulas, Excel avalía VERDADEIRO a 1 e FALSO a 0 Entón, cando SUMPRODUCT multiplica os elementos das dúas matrices nas mesmas posicións, todas as non coincidencias (FALSO) convértense en ceros:

    SUMPRODUCT({0;0;0;54;0;0})

    Como resultado, a fórmula devolve un número de columna B que corresponde á coincidencia exacta que distingue entre maiúsculas e minúsculas na columna A.

    Limitación de SUMPRODUCT : só pode devolver valores numéricos.

    INDEX MATCH: busca que distingue entre maiúsculas e minúsculas. todos os tipos de datos

    Finalmente, estamos preto de conseguir unha fórmula de busca que distingue entre maiúsculas e minúsculas sen limitacións que funcione en todas as versións de Excel e en todos os conxuntos de datos.

    Este exemplo é o último non só porque o mellor gárdase para o último, pero tamén porque o coñecemento que adquiriu nos exemplos anteriores pode axudarche a comprender mellor a fórmula INDEX DE COINCIDENCIAS que distingue entre maiúsculas e minúsculas.

    A combinación das funcións INDEX e MATCH úsase a miúdo. en Ex cel como unha alternativa máis flexible e versátil a VLOOKUP. O seguinte artigo fai un bo traballo (esperemos que :) explicando como funcionan estas dúas funcións xuntas - Usando INDEX MATCH en lugar de VLOOKUP.

    Aquí só che recordarei os puntos clave:

    • A función MATCH busca o valor de busca na matriz de busca especificada e devolve a súa posición relativa.
    • O relativoA posición do valor de busca vai directamente ao argumento núm_fila da función ÍNDICE que lle indica que devolva un valor desa fila.

    Para que a fórmula recoñeza maiúsculas e minúsculas, só tes que cómpre engadir unha función máis á clásica combinación INDEX MATCH. Obviamente, necesitas a función EXACT de novo:

    INDEX( matriz_retorno , MATCH(TRUE, EXACT( valor_busca , matriz_busca ), 0))

    A fórmula real en F3 é:

    =INDEX(B2:B7, MATCH(TRUE, EXACT(A2:A7, F2), 0))

    En F4, estamos a usar esta:

    =INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0))

    Lembra que só funciona como unha fórmula matricial en todas as versións que non sexan Excel 365, así que asegúrese de introducila premendo as teclas Ctrl + Maiús + Intro xuntos. Se se fai correctamente, a fórmula incluirase entre chaves como se mostra na seguinte captura de pantalla:

    Como funciona esta fórmula:

    Como en todos os exemplos anteriores, EXACT devolve VERDADEIRO para cada valor de A2:A7 que coincida exactamente co valor de F2. Dado que usamos TRUE para o lookup_value de MATCH, devolve unha posición relativa da coincidencia exacta que distingue entre maiúsculas e minúsculas, que é precisamente o que INDEX necesita para devolver unha coincidencia de B2:B7.

    Fórmula de busca avanzada que distingue entre maiúsculas e minúsculas

    A fórmula INDEX MATCH mencionada anteriormente parece perfecta, non? Pero de feito, non o é. Déixeme mostrar por que.

    Supoñamos que unha cela da columna de retorno correspondente ao valor de busca está en branco. Que devolverá a fórmula? Nada.E agora, vexamos o que realmente devolve:

    =INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0))

    Vaia, a fórmula devolve un cero! Quizais non sexa realmente importante cando se trata unicamente de valores de texto. Non obstante, se a túa folla de traballo contén números e algúns deles son ceros reais, isto é un problema.

    En realidade, todas as outras fórmulas de busca comentadas anteriormente se comportan do mesmo xeito. Pero agora queres unha fórmula impecable, non si?

    Para que a fórmula INDEX MATCH que distinga entre maiúsculas e minúsculas sexa absolutamente perfecta, engádesa na función SE que verifica se unha cela de retorno está en branco e non devolve nada en este caso:

    =IF(INDIRECT("C"&(1+MATCH(TRUE,EXACT(A2:A7, F2), 0)))"", INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0)), "")

    Na fórmula anterior:

    • "C" é a columna de retorno.
    • "1" é o número que converte unha posición relativa da cela devolta pola función MATCH nun enderezo real da cela .

    Por exemplo, a matriz de busca na nosa función MATCH é A2:A7, o que significa que a posición relativa da cela A2 é "1", porque esta é a primeira cela da matriz. Pero en realidade, a matriz de busca comeza na fila 2. Para compensar a diferenza, engadimos 1, polo que a función INDIRECTA devolverá un valor da cela da dereita.

    As capturas de pantalla a continuación demostran o INDEX mellorado que distingue entre maiúsculas e minúsculas. Fórmula MATCH en acción.

    Se a cela de retorno está baleira, a fórmula non mostra nada (unha cadea baleira):

    Se a cela de retorno contén un cero , a fórmula devolve 0:

    Se o prefiremostrar algunha mensaxe cando unha cela de retorno está en branco, substitúe unha cadea baleira ("") no último argumento de IF por algún texto:

    =IF(INDIRECT("C"&(1+MATCH(TRUE, EXACT(A2:A7, F2), 0)))"", INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0)), "There is nothing to return, sorry.")

    Facer a BUSQUEDA VL que distingue entre maiúsculas e minúsculas dun xeito sinxelo

    Os usuarios da nosa Ultimate Suite for Excel dispoñen dunha ferramenta especial que facilita a busca en táboas grandes e complexas e sen estrés. O mellor é que Combina dúas táboas ten unha opción que distingue entre maiúsculas e minúsculas, e o seguinte exemplo móstraa en acción.

    Supoña que queres extraer Qty. desde a táboa Buscar á táboa Principal baseándose en ID de elemento únicos:

    O que fai é executar as táboas de combinación asistente e realice estes pasos:

    1. Seleccione a táboa principal na que extraer novos datos.
    2. Seleccione a táboa de busca onde buscar os novos datos.
    3. Escolla unha ou máis columnas clave (ID do elemento no noso caso). E asegúrate de marcar a caixa Coincidencia entre maiúsculas e minúsculas .

  • O asistente guiarache polos tres pasos restantes nos que especificas que columnas actualizar, que columnas engadir e escolle algunhas opcións adicionais se é necesario.
  • Un momento despois, obterás o resultado desexado :)

    Así é como buscar en Excel tendo en conta o caso do texto. Grazas por ler e espero verte no noso blogue a vindeira semana!

    Caderno de prácticas para descargar

    Exemplos de BUSCAR VL que distinguen maiúsculas e minúsculas (ficheiro .xlsx)

    Michael Brown é un entusiasta da tecnoloxía dedicada á súa paixón por simplificar procesos complexos mediante ferramentas de software. Con máis dunha década de experiencia na industria tecnolóxica, perfeccionou as súas habilidades en Microsoft Excel e Outlook, así como en Follas de cálculo e Documentos de Google. O blog de Michael está dedicado a compartir o seu coñecemento e experiencia con outros, proporcionando consellos e titoriais fáciles de seguir para mellorar a produtividade e a eficiencia. Tanto se es un profesional experimentado como un principiante, o blog de Michael ofrece valiosas ideas e consellos prácticos para sacar o máximo proveito destas ferramentas de software esenciais.