Función XMATCH de Excel con ejemplos de fórmulas

  • Compartir Este
Michael Brown

El tutorial presenta la nueva función XMATCH de Excel y muestra cómo es mejor que MATCH para resolver algunas tareas comunes.

En Excel 365, se añadió la función XMATCH para sustituir a la función MATCH. Pero antes de empezar a actualizar sus fórmulas existentes, sería conveniente comprender todas las ventajas de la nueva función y en qué se diferencia de la antigua.

En resumen, la función XMATCH es igual que MATCH pero más flexible y robusta. Puede buscar tanto en matrices verticales como horizontales, buscar de primero a último o de último a primero, encontrar coincidencias exactas, aproximadas y parciales, y utilizar un algoritmo de búsqueda binaria más rápido.

    Función XMATCH de Excel

    La función XMATCH de Excel devuelve la posición relativa de un valor en una matriz o un rango de celdas.

    Tiene la siguiente sintaxis:

    XMATCH(valor_consulta, matriz_consulta, [modo_coincidencia], [modo_busqueda])

    Dónde:

    Valor_buscado (obligatorio) - el valor a buscar.

    Matriz_de_busqueda (obligatorio) - la matriz o rango de celdas donde buscar.

    Modo_partido (opcional) - especifica qué tipo de coincidencia utilizar:

    • 0 u omitido (por defecto) - coincidencia exacta
    • -1 - coincidencia exacta o el siguiente valor más pequeño
    • 1 - coincidencia exacta o el valor inmediatamente superior
    • 2 - coincidencia con comodín (*, ?)

    Modo de búsqueda (opcional) - especifica la dirección de búsqueda y el algoritmo:

    • 1 u omitido (por defecto) - buscar del primero al último.
    • -1 - buscar en orden inverso del último al primero.
    • 2 - búsqueda binaria ascendente. Requiere matriz_de_busqueda en orden ascendente.
    • -2 - búsqueda binaria descendente. Requiere matriz_de_busqueda en orden descendente.

    La búsqueda binaria es un algoritmo más rápido que funciona eficazmente en matrices ordenadas. Para más información, consulte Modo de búsqueda.

    ¿Qué versión de Excel tiene XMATCH?

    La función XMATCH solo está disponible en Excel para Microsoft 365 y Excel 2021. En Excel 2019, Excel 2016 y versiones anteriores, esta función no es compatible.

    Fórmula básica XMATCH en Excel

    Para tener una idea general de lo que la función es capaz de hacer, vamos a construir una fórmula XMATCH en su forma más simple, definiendo sólo los dos primeros argumentos requeridos y dejando los opcionales por defecto.

    Supongamos que tiene una lista de océanos ordenados por su tamaño (C2:C6) y desea encontrar el rango de un océano en particular. Para hacerlo, simplemente utilice el nombre del océano, digamos India como valor de búsqueda y la lista completa de nombres como matriz de búsqueda:

    =XMATCH("Indio", C2:C6)

    Para hacer la fórmula más flexible, introduzca el océano de interés en alguna celda, digamos F1:

    =XMATCH(F1, C2:C6)

    Como resultado, se obtiene una fórmula XMATCH para buscar en un matriz vertical La salida es la posición relativa del valor de búsqueda en la matriz, que en nuestro caso corresponde al rango del océano:

    Una fórmula similar funciona perfectamente para un matriz horizontal Todo lo que tiene que hacer es ajustar el matriz_de_busqueda referencia:

    =XMATCH(B5, B1:F1)

    Función XMATCH de Excel: aspectos a tener en cuenta

    Para utilizar eficazmente XMATCH en sus hojas de cálculo y evitar resultados inesperados, recuerde estos 3 sencillos datos:

    • Si hay dos o más apariciones del valor de búsqueda en la matriz de búsqueda, la posición de la variable primer partido se devuelve si el modo_buscar se establece en 1 o se omite. Con modo_buscar se establece en -1, la función busca en orden inverso y devuelve la posición del último partido como se demuestra en este ejemplo.
    • Si el valor de búsqueda no se encuentra se produce un error #N/A.
    • La función XMATCH es distingue entre mayúsculas y minúsculas Para distinguir entre minúsculas y mayúsculas, utilice esta fórmula XMATCH que distingue entre mayúsculas y minúsculas.

    Cómo utilizar XMATCH en Excel - ejemplos de fórmulas

    Los siguientes ejemplos le ayudarán a comprender mejor la función XMATCH y sus usos prácticos.

    Concordancia exacta frente a concordancia aproximada

    El comportamiento de coincidencia de XMATCH se controla mediante el parámetro opcional modo_partido argumento:

    • 0 u omitido (por defecto) - la fórmula sólo busca la coincidencia exacta. Si no se encuentra una coincidencia exacta, se devuelve un error #N/A.
    • -1 - la fórmula busca primero la coincidencia exacta y luego el siguiente elemento más pequeño.
    • 1 - la fórmula busca primero la coincidencia exacta y, a continuación, el elemento inmediatamente superior.

    Y ahora, veamos cómo afectan los distintos modos de emparejamiento al resultado de la fórmula. Supongamos que quieres averiguar en qué lugar de todos los océanos se encuentra una determinada superficie, digamos 80.000.000 km2.

    Coincidencia exacta

    Si utiliza 0 para modo_partido obtendrá un error #N/A, porque la fórmula no puede encontrar un valor exactamente igual al valor de búsqueda:

    =XMATCH(80000000, C2:C6, 0)

    Siguiente artículo más pequeño

    Si utiliza -1 para modo_partido la fórmula devolverá 3, porque la coincidencia más cercana menor que el valor de búsqueda es 70.560.000, y es el tercer elemento de la matriz de búsqueda:

    =XMATCH(80000000, C2:C6, -1)

    Siguiente artículo más grande

    Si utiliza 1 para modo_partido la fórmula dará como resultado 2, porque la coincidencia más cercana mayor que el valor de búsqueda es 85.133.000, que es el segundo elemento de la matriz de búsqueda:

    =XMATCH(80000000, C2:C6, -1)

    La siguiente imagen muestra todos los resultados:

    Cómo hacer coincidir texto parcial en Excel con comodines

    La función XMATCH tiene un modo de coincidencia especial para los comodines: la función modo_partido a 2.

    En el modo de coincidencia con comodines, una fórmula XMATCH acepta los siguientes caracteres comodín:

    • Signo de interrogación (?) para que coincida con cualquier carácter.
    • Asterisco (*) para que coincida con cualquier secuencia de caracteres.

    Tenga en cuenta que los comodines sólo funcionan con texto, no con números.

    Por ejemplo, para encontrar la posición del primer elemento que empieza por "sur", la fórmula es:

    =XMATCH("sur*", B2:B6, 2)

    También puede escribir su expresión comodín en alguna celda, por ejemplo F1, y proporcionar la referencia de celda para la función buscar_valor argumento:

    =XMATCH(F1, B2:B6, 2)

    Con la mayoría de las funciones de Excel, se utiliza la tilde (~) para tratar el asterisco (~*) o el signo de interrogación (~?) como caracteres literales, no como comodines. Con XMATCH, la tilde no es necesaria. Si no se define el modo de coincidencia de comodines, XMATCH asumirá que ? y * son caracteres regulares.

    Por ejemplo, la fórmula siguiente buscará exactamente el carácter asterisco en el intervalo A2:A7:

    =XMATCH("*", A2:A7)

    Búsqueda inversa XMATCH para encontrar la última coincidencia

    En caso de que haya varias apariciones del valor de búsqueda en la matriz de búsqueda, es posible que a veces necesite obtener la posición de la variable última aparición .

    La dirección de búsqueda se controla mediante el 4º argumento de XMATCH denominado modo_buscar Para buscar en orden inverso, es decir, de abajo arriba en una matriz vertical y de derecha a izquierda en una matriz horizontal, modo_buscar debe fijarse en -1.

    En este ejemplo, devolveremos la posición del último registro para un valor de búsqueda específico (consulte la captura de pantalla siguiente). Para ello, configure los argumentos de la siguiente manera:

    • Valor_buscado - el vendedor objetivo en H1
    • Matriz_de_busqueda - nombres de vendedores en C2:C10
    • Modo_partido es 0 u omitido (coincidencia exacta)
    • Modo_búsqueda es -1 (de último a primero)

    Juntando los cuatro argumentos, obtenemos esta fórmula:

    =XMATCH(H1, C2:C10, 0, -1)

    Que devuelve el número de la última venta realizada por Laura:

    Cómo comparar dos columnas en Excel para que coincidan

    Para comparar dos listas en busca de coincidencias, puede utilizar la función XMATCH junto con IF e ISNA:

    IF( ISNA( XMATCH( lista_objetivo , lista_de_busqueda , 0)), "Sin coincidencia", "Coincidencia")

    Por ejemplo, para comparar la Lista 2 en B2:B10 con la Lista 1 en A2:A10, la fórmula tiene la siguiente forma:

    =IF(ISNA(XMATCH(B2:B10, A2:A9)), "", "Coincidencia en Lista 1")

    En este ejemplo, sólo identificamos coincidencias, por lo que el value_if_true de la función IF es una cadena vacía ("").

    Introduzca la fórmula anterior en la celda superior (C2 en nuestro caso), pulse Intro , y se "derramará" en las demás celdas automáticamente (se denomina rango de derrame):

    Cómo funciona esta fórmula

    En el corazón de la fórmula, la función XMATCH busca un valor de la Lista 2 dentro de la Lista 1. Si se encuentra un valor, se devuelve su posición relativa, en caso contrario un error #N/A. En nuestro caso, el resultado de XMATCH es la siguiente matriz:

    {#N/A;#N/A;2;#N/A;4;#N/A;#N/A;8;#N/A}

    Esta matriz se "alimenta" a la función ISNA para que compruebe si hay errores #N/A. Para cada error #N/A, ISNA devuelve TRUE; para cualquier otro valor - FALSE. Como resultado, produce la siguiente matriz de valores lógicos, donde TRUE representa no coincidencias, y FALSE representa coincidencias:

    {VERDADERO;VERDADERO;FALSO;VERDADERO;FALSO;VERDADERO;FALSO;VERDADERO}

    La matriz anterior va a la prueba lógica de la función IF. Dependiendo de cómo haya configurado los dos últimos argumentos, la fórmula mostrará el texto correspondiente. En nuestro caso, es una cadena vacía ("") para las no coincidencias ( value_if_true ) y "Coincidencia en lista 1" para las coincidencias ( value_if_false ).

    Nota. Esta fórmula solo funciona en Excel 365 y Excel 2021 que admiten matrices dinámicas. Si utiliza Excel 2019, Excel 2016 o una versión anterior, consulte otras soluciones: Cómo comparar dos columnas en Excel.

    INDEX XMATCH en Excel

    XMATCH puede utilizarse en combinación con la función INDEX para recuperar un valor de otra columna asociada al valor de búsqueda, al igual que la fórmula INDEX MATCH. El enfoque genérico es el siguiente:

    ÍNDICE ( devolver _ matriz XMATCH ( buscar_valor , matriz_de_busqueda )

    La lógica es muy sencilla y fácil de seguir:

    La función XMATCH calcula la posición relativa del valor de búsqueda en la matriz de búsqueda y la pasa a la función número_de_fila Basándose en el número de fila, la función INDEX devuelve un valor de cualquier columna que especifique.

    Por ejemplo, para buscar la superficie del océano en E1, puedes utilizar esta fórmula:

    =INDEX(B2:B6, XMATCH(E1, A2:A6))

    INDEX XMATCH XMATCH para realizar búsquedas bidimensionales

    Para buscar en columnas y filas simultáneamente, utilice INDEX junto con dos funciones XMATCH. La primera XMATCH obtendrá el número de fila y la segunda recuperará el número de columna:

    ÍNDICE ( datos XMATCH ( buscar_valor , vertical _ matriz_de_busqueda ), XMATCH ( valor de búsqueda , horizontal _ matriz_de_busqueda ))

    La fórmula es similar a la de INDEX MATCH con la salvedad de que se puede omitir el carácter modo_partido ya que por defecto es de coincidencia exacta.

    Por ejemplo, para recuperar el número de ventas de un artículo determinado (G1) en un mes concreto (G2), la fórmula es:

    =INDEX(B2:D8, XMATCH(G1, A2:A8), XMATCH(G2, B1:D1))

    Donde B2:D8 son celdas de datos excluyendo las cabeceras de fila y columna, A2:A8 es una lista de elementos y B1:D1 son nombres de meses.

    Fórmula XMATCH que distingue mayúsculas de minúsculas

    Como ya se ha mencionado, la función XMATCH de Excel no distingue mayúsculas de minúsculas. Para forzarla a distinguir mayúsculas de minúsculas, utilice XMATCH en combinación con la función EXACT:

    MATCH(TRUE, EXACT( matriz_de_busqueda , buscar_valor ))

    Para buscar en orden inverso del último al primero:

    MATCH(TRUE, EXACT( matriz_de_busqueda , buscar_valor ), 0, -1)

    El siguiente ejemplo muestra esta fórmula genérica en acción. Supongamos que tiene una lista de id's de productos que distinguen mayúsculas de minúsculas en B2:B11. Está buscando encontrar la posición relativa del artículo en E1. Una fórmula que distingue mayúsculas de minúsculas en E2 es tan simple como esto:

    =XMATCH(VERDADERO, EXACTO(B2:B11, E1))

    Cómo funciona esta fórmula:

    La función EXACT compara el valor de búsqueda con cada elemento de la matriz de búsqueda. Si los valores comparados son exactamente iguales, incluyendo las mayúsculas y minúsculas, la función devuelve TRUE, FALSE en caso contrario. Esta matriz de valores lógicos (donde TRUE representa coincidencias exactas) va a la función matriz_de_busqueda de XMATCH. Y como el valor de búsqueda es TRUE, la función XMATCH devuelve la posición de la primera coincidencia exacta encontrada o de la última coincidencia exacta, dependiendo de cómo haya configurado la función modo_buscar argumento.

    XMATCH vs. MATCH en Excel

    XMATCH se diseñó como un sustituto más potente y versátil de MATCH, por lo que estas dos funciones tienen mucho en común. Sin embargo, existen diferencias esenciales.

    Diferente comportamiento por defecto

    La función MATCH utiliza por defecto la coincidencia exacta o el siguiente elemento más pequeño ( tipo_partido 1 u omitido).

    La función XMATCH utiliza por defecto la coincidencia exacta ( modo_partido 0 u omitido).

    Comportamiento diferente para la coincidencia aproximada

    Cuando el modo_partido / tipo_partido se fija en 1:

    • MATCH busca la coincidencia exacta o la siguiente más pequeña. Requiere que la matriz de búsqueda se ordene en orden ascendente.
    • XMATCH busca la coincidencia exacta o la siguiente más grande. No requiere ninguna ordenación.

    Cuando el modo_partido / tipo_partido se establece en -1:

    • MATCH busca la coincidencia exacta o la siguiente más grande. Requiere ordenar la matriz de búsqueda en orden descendente.
    • XMATCH busca la coincidencia exacta o la siguiente más pequeña. No requiere ninguna ordenación.

    Búsqueda con comodín

    Para encontrar coincidencias parciales con XMATCH, debe definir la opción modo_partido a 2.

    La función MATCH no tiene una opción especial de modo de coincidencia con comodines. En la mayoría de los casos, la configurará para coincidencia exacta ( tipo_partido a 0), que también funciona para las búsquedas con comodines.

    Modo de búsqueda

    Al igual que la nueva función XLOOKUP, XMATCH tiene una función especial modo_buscar que le permite definir el dirección de búsqueda :

    • 1 u omitido (por defecto) - buscar de primero a último.
    • -1 - búsqueda inversa de último a primero.

    Y elija una algoritmo de búsqueda binaria que es muy rápido y eficaz en datos ordenados .

    • 2 - búsqueda binaria en datos ordenados ascendentemente.
    • -2 - búsqueda binaria en datos ordenados descendentemente.

    Búsqueda binaria también llamado búsqueda por medio intervalo o búsqueda logarítmica es un algoritmo especial que encuentra la posición de un valor de búsqueda dentro de una matriz comparándolo con el elemento central de la matriz. Una búsqueda binaria es mucho más rápida que una búsqueda normal, pero sólo funciona correctamente en listas ordenadas. En datos no ordenados, puede devolver resultados erróneos que pueden parecer bastante normales a primera vista.

    La sintaxis de MATCH no incluye el argumento de modo de búsqueda.

    XMATCH maneja matrices de forma nativa

    A diferencia de su predecesora, la función XMATCH fue diseñada para Excel dinámico y maneja matrices de forma nativa, sin que tengas que pulsar Ctrl + Mayús + Intro . Esto hace que las fórmulas sean mucho más fáciles de construir y editar, especialmente cuando se utilizan varias funciones diferentes juntas. Basta con comparar las siguientes soluciones:

    • Fórmula que distingue mayúsculas de minúsculas: XMATCH
    • Comparar dos columnas o listas en busca de coincidencias: XMATCH

    Disponibilidad de XMATCH y MATCH

    XMATCH es una función nueva y solo está disponible en Excel para Microsoft 365 y Excel 2021.

    La función MATCH está disponible en cualquier versión de Excel 365 hasta Excel 2007.

    Así es como se utiliza la función XMATCH en Excel. Gracias por leer y ¡espero verte en nuestro blog la semana que viene!

    Cuaderno de prácticas para descargar

    Ejemplos de fórmulas XMATCH de Excel (archivo .xlsx)

    Michael Brown es un entusiasta de la tecnología dedicado y apasionado por simplificar procesos complejos utilizando herramientas de software. Con más de una década de experiencia en la industria de la tecnología, ha perfeccionado sus habilidades en Microsoft Excel y Outlook, así como en Google Sheets y Docs. El blog de Michael está dedicado a compartir su conocimiento y experiencia con otros, brindando consejos y tutoriales fáciles de seguir para mejorar la productividad y la eficiencia. Ya sea un profesional experimentado o un principiante, el blog de Michael ofrece información valiosa y consejos prácticos para aprovechar al máximo estas herramientas de software esenciales.