IF VLOOKUP en Excel: fórmula de Vlookup con condición If

  • Comparte Isto
Michael Brown

O titorial mostra como combinar a función V LOOKUP e IF xuntos para v-lookup coa condición if en Excel. Tamén aprenderá a usar as fórmulas de BUSCAR V. SE ISNA para substituír os erros #N/D polo seu propio texto, cero ou cela en branco.

Aínda que as funcións BUSCAR V e SE son útiles por si soas, xuntas. ofrecen experiencias aínda máis valiosas. Este titorial implica que lembras ben a sintaxe das dúas funcións, se non, podes mellorar o teu coñecemento seguindo as ligazóns anteriores.

    Vlookup with If statement: return True/ Falso, Si/Non, etc.

    Un dos escenarios máis comúns cando combinas If e Vlookup xuntos é comparar o valor devolto por Vlookup cun valor de mostra e devolver Si/Non ou Verdadeiro/Falso como resultado.

    Na maioría dos casos, a seguinte fórmula xenérica funcionaría ben:

    SE(BUSCARV(…) = valor, VERDADEIRO, FALSO)

    Traducido ao inglés sinxelo, a fórmula indica a Excel que devolva Verdadeiro se Vlookup é verdadeira (é dicir, igual ao valor especificado). Se Vlookup é falso (non é igual ao valor especificado), a fórmula devolve False .

    A continuación atoparás algúns usos reais desta fórmula IF Vlookup.

    Exemplo 1. Busca un valor específico

    Digamos que tes unha lista de elementos na columna A e unha cantidade na columna B. Estás a crear un panel para os teus usuarios e necesitas unha fórmulaque comprobaría a cantidade dun artigo en E1 e informaría ao usuario se o artigo está en stock ou esgotado.

    Puxese a cantidade cunha Vlookup normal cunha fórmula de coincidencia exacta como esta:

    =VLOOKUP(E1,$A$2:$B$10,2,FALSE)

    Entón, escribe unha instrución IF que compare o resultado de Vlookup con cero e devolve "Non" se é igual a 0, "Si" en caso contrario:

    =IF(VLOOKUP(E1,$A$2:$B$10,2,FALSE)=0,"No","Yes")

    En lugar de Si/Non , podes devolver VERDADEIRO/FALSO ou En existencia/esgotado ou outros dous opcións. Por exemplo:

    =IF(VLOOKUP(E1,$A$2:$B$10,2)=0,"Sold out","In stock")

    Tamén pode comparar o valor devolto por Vlookup con exemplo texto . Neste caso, asegúrese de encerrar unha cadea de texto entre comiñas, como esta:

    =IF(VLOOKUP(E1,$A$2:$B$10,2)="sample text",TRUE,FALSE)

    Exemplo 2. Compare o resultado de Vlookup con outra cela

    Outro exemplo típico de Vlookup with If condition en Excel é comparar a saída de Vlookup cun valor noutra cela. Por exemplo, podemos comprobar se é maior ou igual a un número da cela G2:

    =IF(VLOOKUP(E1,$A$2:$B$10,2)>=G2,"Yes!","No")

    E aquí está a nosa fórmula If con Vlookup en acción:

    De forma similar, pode usar calquera outro operador lóxico xunto cunha referencia de cela na súa fórmula de Excel If Vlookup.

    Exemplo 3. Valores de Vlookup nunha lista máis curta

    Para comparar cada cela da columna de destino con outra lista e devolver Verdadero ou Si se se atopa unha coincidencia, Falso ou Non se non, use esta fórmula xenérica IF ISNA VLOOKUP:

    IF(ISNA(BUSCARV(…)),"Non","Si")

    Se a Busca V produce o erro #N/A, a fórmula devolve "Non", o que significa que o valor de busca non se atopa na lista de busca. Se se atopa a coincidencia, devólvese "Si". Por exemplo:

    =IF(ISNA(VLOOKUP(A2,$D$2:$D$4,1,FALSE)),"No","Yes")

    Se a súa lóxica empresarial require os resultados contrarios, simplemente cambie "Si" e "Non" para inverter a lóxica da fórmula:

    =IF(ISNA(VLOOKUP(A2,$D$2:$D$4,1,FALSE)),"Yes","No")

    Fórmula de Excel If Vlookup para realizar cálculos diferentes

    Ademais de mostrar as súas propias mensaxes de texto, a función If con Vlookup pode realizar diferentes cálculos en función dos criterios que especifiques.

    Levando o noso exemplo máis aló, calculemos a comisión dun vendedor específico (F1) dependendo da súa eficacia: comisión do 20 % para aqueles que gañaron 200 $ ou máis, 10 % para todos os demais. .

    Para iso, comproba se o valor devolto por Vlookup é maior ou igual a 200, e se o é, multiplícao por 20 %, noutro caso por 10 %:

    =IF(VLOOKUP(F1,$A$2:$C$10,3,FALSE )>=200, VLOOKUP(F1,$A$2:$C$10,3,FALSE)*20%, VLOOKUP(F1,$A$2:$C$10,3,FALSE)*10%)

    Onde A2:A10 son os nomes do vendedor e C2:C10 son as vendas.

    SE É BUSCAR V para ocultar os erros #N/A

    Se a función BUSCARV non pode atopar un valor especificado, xera un erro #N/A. Para detectar ese erro e substituílo polo seu propio texto, incruste unha fórmula Vlookup na proba lóxica da función IF, como esta:

    IF(ISNA(VLOOKUP(…)), "Not found", VLOOKUP(…) )

    Por suposto, podes escribir calquera texto que desexe en lugar de "Non atopado".

    Supoño que tes unha lista de vendedoresnomes nunha columna e cantidades de vendas noutra columna. A súa tarefa é sacar un número correspondente ao nome que introduce o usuario en F1. Se non se atopa o nome, móstrase unha mensaxe que o indique.

    Cos nomes en A2:A10 e as cantidades C2:C10, a tarefa pódese realizar coa seguinte fórmula Se Vlookup:

    =IF(ISNA(VLOOKUP(F1,$A$2:$C$10,3,FALSE)), "Not found", VLOOKUP(F1,$A$2:$C$10,3,FALSE))

    Se se atopa o nome, devólvese un importe de vendas correspondente:

    Se non se atopa o valor de busca, o Non se atopou aparece a mensaxe en lugar do erro #N/A:

    Como funciona esta fórmula

    A lóxica da fórmula é moi sinxela: usa a función ISNA para comprobar Vlookup para #N/A erros. Se se produce un erro, ISNA devolve VERDADEIRO, en caso contrario, FALSO. Os valores anteriores van á proba lóxica da función IF, que realiza unha das seguintes accións:

    • Se a proba lóxica é VERDADEIRA (erro #N/A), móstrase a súa mensaxe.
    • Se a proba lóxica é FALSA (atópase o valor de busca), Vlookup devolve unha coincidencia normalmente.

    IFNA VLOOKUP nas versións máis recentes de Excel

    A partir de Excel 2013, pode usar a función IFNA en lugar de IF ISNA para detectar e xestionar erros #N/D:

    IFNA(VLOOKUP(…), " Not found")

    No noso exemplo, a fórmula sería toma a seguinte forma:

    =IFNA(VLOOKUP(F1,$A$2:$C$10,3, FALSE), "Not found")

    Consello. Se desexa capturar todo tipo de erros, non só #N/A, use BUSCARV en combinación coa función IFERROR. Podes atopar máis detalles aquí: IFERRORBUSCAR V en Excel.

    Buscar V Excel: se non se atopa, devolve 0

    Ao traballar con valores numéricos, pode querer devolver un cero cando non se atope o valor de busca. Para facelo, use a fórmula IF ISNA VLOOKUP comentada anteriormente cunha pequena modificación: en lugar dunha mensaxe de texto, proporcione 0 no argumento value_if_true da función IF:

    IF(ISNA(VLOOKUP( …)), 0, BUSCAR V(…))

    Na nosa táboa de exemplo, a fórmula sería o seguinte:

    =IF(ISNA(VLOOKUP(F2,$A$2:$C$10,3,FALSE)), 0, VLOOKUP(F2,$A$2:$C$10,3,FALSE))

    Na versións recentes de Excel 2016 e 2013, pode volver a usar a combinación Vlookup IFNA:

    =IFNA(VLOOKUP(I2,$A$2:$C$10,3, FALSE), 0)

    Busca VExcel: se non se atopa, devolve a cela en branco

    Esta é unha variación máis da instrución "Vlookup if then": non devolve nada cando non se atopa o valor de busca. Para iso, indíquelle á súa fórmula que devolva unha cadea baleira ("") en lugar do erro #N/A:

    IF(ISNA(VLOOKUP(…)), "", VLOOKUP(…))

    Abaixo son un par de exemplos de fórmulas completas:

    Para todas as versións de Excel:

    =IF(ISNA(VLOOKUP(F2,$A$2:$C$10,3,FALSE)), "", VLOOKUP(F2,$A$2:$C$10,3,FALSE))

    Para Excel 2016 e Excel 2013:

    =IFNA(VLOOKUP(F2,$A$2:$C$10,3, FALSE), "")

    Se con coincidencia de índice: busca á esquerda coa condición If

    Os usuarios experimentados de Excel saben que a función BUSCAR V non é a única forma de facer a busca vertical en Excel. A combinación INDEX MATCH tamén se pode usar para este fin e é aínda máis potente e versátil. A boa noticia é que Index Match pode traballar xunto con IF exactamente do mesmo xeito queConsulta virtual.

    Por exemplo, tes números de pedido na columna A e nomes de vendedores na columna B. Estás a buscar unha fórmula para extraer o número de pedido dun vendedor específico.

    Non se pode realizar a busca virtual. usado neste caso porque non pode buscar de dereita a esquerda. A coincidencia de índices funcionará sen problemas sempre que o valor de busca se atope na columna de busca. Se non, aparecerá un erro #N/A. Para substituír a notación do erro estándar polo seu propio texto, aniñe Coincidencia de índice dentro de IF ISNA:

    =IF(ISNA(INDEX(A2:A10, MATCH(F1, $B$2:$B$10, 0))), "Not found", INDEX(A2:A10, MATCH(F1, $B$2:$B$10, 0)))

    En Excel 2016 e 2016, pode usar IFNA en lugar de IF ISNA para facer a fórmula máis compacto:

    =IFNA(INDEX(A2:A10, MATCH(F1, $B$2:$B$10, 0)), "Not found")

    Dunha forma similar, podes usar Coincidencia de índice noutras fórmulas If.

    Así é como usas Vlookup e declaración IF xuntos en Excel. Para ter unha ollada máis atenta ás fórmulas que se comentan neste tutorial, podes descargar o noso libro de exemplo a continuación. Grazas por ler e espero verte no noso blog a próxima semana!

    Practica para descargar

    Excel IF Vlookup: exemplos de fórmulas (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.