Cómo Extraer Datos de Excel Basándose en Criterios (5 Maneras)

  • Compartir Este
Hugh West

A veces podemos necesitar buscar ciertos datos para trabajar con ellos. Pero cuando el conjunto de datos es enorme, es realmente difícil encontrar lo que buscamos. En este artículo, le mostraremos cómo extraer datos de Excel en función de distintos criterios.

Descargar plantilla de prácticas

Puede descargar la plantilla práctica gratuita de Excel desde aquí.

Extraer datos según criterios.xlsx

5 formas de extraer datos de Excel en función de criterios

Esta sección discutirá 5 maneras diferentes de extraer datos de Excel basándose en ciertos criterios.

1. Implementación de una Fórmula de Matriz para Extraer Datos de Excel Basados en Criterios de Rango

A partir del siguiente conjunto de datos como ejemplo, le describiremos el proceso de extracción de datos basado en el rango. Supongamos que tenemos un conjunto de datos de detalles de estudiantes, del que sólo queremos recuperar los detalles de los estudiantes que obtuvieron Marcas de 80 a 100 .

Los pasos para extraer datos en función de un rango determinado utilizando la función Matriz se indican a continuación.

Pasos:

  • En primer lugar, almacene la condición en otras celdas para trabajar con ellas más adelante. Es decir, como vamos a extraer los datos de los estudiantes que obtuvieron Marcas de 80 a 100 almacenamos 80 como valor inicial y 100 como valor final en el Celdas I4 y I5 respectivamente.

Además, necesitamos almacenar también la columna desde donde buscaremos nuestros valores almacenados. Es decir, las Marcas 80 y 100 están en la columna Columna de marcas que es el 3ª columna en nuestro conjunto de datos, por lo que almacenamos 3 como valor de la columna en Celda I6 .

  • En segundo lugar, en otra celda, donde desee el resultado (nosotros queríamos nuestro resultado en la celda Celda G11 ), escribe la siguiente fórmula,
  • =INDEX($B$5:$E$14,SMALL(IF((INDEX($B$5:$E$14,,$I$6)=$I$4),MATCH(ROW($B$5:$E$14),ROW($B$5:$E$14)),""),ROWS(G11:$G$11)),COLUMNS($A$1:A1))

    • Tercero, pulse Ctrl + Mayús + Intro en el teclado.

    A continuación, obtendrá los primeros datos extraídos que coincidan con su condición en la celda de resultado. P. ej. Johnny cuyo ID es 3 Tengo 80 puntos en Biología y su registro se almacena en el conjunto de datos por delante de los demás, por lo que tenemos Johnny's ID 3 en la celda de resultados.

    • Ahora, arrastre las columnas y filas por Asa de llenado para recuperar los datos sólo de los estudiantes que obtuvieron Marcas de 80 a 100 .

    Desglose de fórmulas

    • INDEX($B$5:$E$14,,$I$6)
      • Output: {60;30;80;55;87;95;100;42;25;18}
      • Explicación: La función INDEX normalmente devuelve un único valor o una columna o fila entera de un rango de celdas determinado. 3 se almacena en el Celda $I$6 por lo que devuelve toda la columna no 3 ( Marcas ) de todo el conjunto de datos ( $B$5:$E$14 ) como salida.
    • INDEX($B$5:$E$14,,$I$6)<=$I$5 -se convierte,
      • {60;30;80;55;87;95;100;42;25;18}<=100
      • Salida: {TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}
      • Explicación: Almacenamos 100 en el Celda $I$5 Como todos los valores son inferiores a 100 ($I$5) por lo que devuelve una columna llena de TRUE .

    Del mismo modo,

    • INDEX($B$5:$E$14,,$I$6)>=$I$4 -se convierte,
      • { 60;30;80;55;87;95;100;42;25;18}>=80
      • Salida: {FALSE;FALSE;TRUE;FALSE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE}
      • Explicación: Almacenamos 80 en el Celda $I$4 Así que devuelve TRUE cuando el valor de la columna es igual o superior al 80 en caso contrario, devuelve FALSO .
    • (INDEX($B$5:$E$14,,$I$6)=$I$4) -se convierte,
      • {VERDADERO;VERDADERO;VERDADERO;VERDADERO;VERDADERO;VERDADERO;VERDADERO;VERDADERO;VERDADERO}*{FALSO;FALSO;VERDADERO;FALSO;VERDADERO;VERDADERO;VERDADERO;FALSO;FALSO}
      • Salida: {0;0;1;0;1;1;1;0;0;0}
      • Explicación: Los valores booleanos tienen equivalentes numéricos, TRUE = 1 y FALSE = 0 (cero) Se convierten al realizar una operación aritmética en una fórmula.
    • FILA($B$5:$E$14)
      • Output: {5;6;7;8;9;10;11;12;13;14}
      • Explicación: La función ROW calcula el número de fila de una referencia de celda.
    • MATCH(FILA($B$5:$E$14),FILA($B$5:$E$14)) -se convierte,
      • MATCH({5;6;7;8;9;10;11;12;13;14},{5;6;7;8;9;10;11;12;13;14})
      • Salida: {1; 2; 3; 4; 5; 6; 7; 8; 9; 10}
      • Explicación: La función MATCH devuelve la posición relativa de un elemento de una matriz o referencia de celda que coincide con un valor especificado en un orden concreto.
    • IF((INDEX($B$5:$E$14,,$I$6)=$I$4),MATCH(FILA($B$5:$E$14),FILA($B$5:$E$14)),"") -se convierte,
      • SI( {0;0;1;0;1;1;1;0;0;0}), {1; 2; 3; 4; 5; 6; 7; 8; 9; 10},"")
      • Salida: {""; ""; 3; ""; 5; 6; 7; ""; ""; ""}
      • Explicación: La función IF devuelve un valor si la prueba lógica es TRUE y otro valor si la prueba lógica es FALSO .
    • SMALL(IF((INDEX($B$5:$E$14,,$I$6)=$I$4),MATCH(ROW($B$5:$E$14),ROW($B$5:$E$14)),""),ROWS(G11:$G$11)) -se convierte,
      • SMALL({""; ""; 3; ""; 5; 6; 7; ""; ""; ""},ROWS(G11:$G$11)) -se convierte,
      • SMALL({""; ""; 3; ""; 5; 6; 7; ""; ""; ""},1)
      • Salida: 3
      • Explicación: La función SMALL devuelve el k-ésimo valor mínimo de un grupo de números. 3 es el más pequeño de este grupo.
    • INDEX($B$5:$E$14,SMALL(IF((INDEX($B$5:$E$14,,$I$6)=$I$4),MATCH(ROW($B$5:$E$14),ROW($B$5:$E$14)),""),ROWS(G11:$G$11)),COLUMNS($A$1:A1)) -se convierte,
      • INDEX($B$5:$E$14,3,,1)
      • Salida: {3; "Johnny", 80, "Biología"}
      • Explicación: En ÍNDICE devuelve un valor de un rango de celdas( $B$5:$E$14 ), especificado por el valor basado en un número de fila y columna.

    Más información: Cómo extraer datos de una celda en Excel (5 métodos)

    2. Implementación de Fórmulas de Matrices para Extraer Datos de Excel Basados en Múltiples Condiciones

    En la sección anterior, extrajimos datos basados en un rango dado. Pero en esta sección, le mostraremos cómo extraer datos basados en múltiples condiciones.

    Observe el mismo conjunto de datos que antes, pero aquí en lugar de almacenar un rango de valores (Marcas 80 a 100) como condición, almacenamos múltiples condiciones como recuperar los detalles de los estudiantes de los departamentos de Química y Biología .

    Los pasos para extraer datos en función de múltiples condiciones utilizando la función Matriz se indican a continuación.

    Pasos:

    • En primer lugar, almacenar las condiciones en otras celdas para trabajar con ellas más adelante. Es decir, como vamos a extraer los datos de los alumnos de Química y Biología departamentos, almacenamos Química y Biología en el Celdas H5 y H6 respectivamente.
    • En segundo lugar, en otra celda, donde desee el resultado (nosotros queríamos nuestro resultado en la celda Celda G11 ), escribe la siguiente fórmula,
    =INDEX($B$5:$E$14, SMALL(IF(COUNTIF($H$5:$H$6,$E$5:$E$14), MATCH(FILA($B$5:$E$14), FILA($B$5:$E$14)), ""), FILAS(G11:$G$11)), COLUMNAS($B$5:B5))

    • En tercer lugar, pulse Ctrl + Mayús + Intro en el teclado.

    Más tarde, obtendrá los primeros datos extraídos que coincidan con sus condiciones en la celda de resultados. Por ejemplo Johnny cuyo ID es 3 es de Departamento de Biología y su registro se almacena en el conjunto de datos por delante de los demás, por lo que tenemos Johnny's ID 3 en la celda de resultados.

    • Ahora, arrastre las columnas y filas por Asa de llenado para recuperar los datos de sólo los estudiantes que son de la Departamento de Química y Biología .

    Desglose de fórmulas

    • COUNTIF($H$5:$H$6,$E$5:$E$14) -se convierte,
      • COUNTIF({"Química"; "Biología"},{"Matemáticas"; "Física"; "Biología"; "Química"; "Física"; "Física"; "Matemáticas"; "Química"; "Matemáticas"; "Biología"}
      • Salida: {0;0;1;1;0;0;0;1;0;1}
      • Explicación: La función COUNTIF permite identificar las celdas del rango $H$5:$H$6 que es igual a $E$5:$E$14 .
    • IF(COUNTIF($H$5:$H$6,$E$5:$E$14), MATCH(FILA($B$5:$E$14), FILA($B$5:$E$14)), "") -se convierte,
      • IF({0;0;1;1;0;0;1;0;1},MATCH(FILA($B$5:$E$14), FILA($B$5:$E$14)), "") -se convierte,
      • IF({0;0;1;1;0;0;0;1;0;1},{ 1; 2; 3; 4; 5; 6; 7; 8; 9; 10},"")
      • Salida: {""; ""; 3; 4; ""; "";""; 8; "";10}
      • Explicación: En SI tiene tres argumentos, el primero debe ser una expresión lógica. Si la expresión se evalúa como TRUE entonces ocurre una cosa (argumento 2) y si FALSO ocurre otra cosa (argumento 3). La expresión lógica se calculó en el paso 1, TRUE es igual a 1 y FALSO es igual a 0 (cero) . Fila no 3, 4, 8 y 10 evaluar VERDADERO (1) .
    • SMALL(IF(COUNTIF($H$5:$H$6,$E$5:$E$14), MATCH(FILA($B$5:$E$14), FILA($B$5:$E$14)), ""), FILAS(G11:$G$11)) -se convierte,
      • SMALL({""; ""; 3; 4; ""; "";""; 8; "";10},ROWS(G11:$G$11)) -se convierte,
      • SMALL({""; ""; 3; 4; ""; "";""; 8; "";10},1)
      • Salida: 3
      • Explicación: En PEQUEÑO devuelve el k-ésimo valor mínimo de un grupo de números. 3 es el más pequeño de este grupo.
    • INDEX($B$5:$E$14, SMALL(IF(COUNTIF($H$5:$H$6,$E$5:$E$14), MATCH(FILA($B$5:$E$14), FILA($B$5:$E$14)), ""), FILAS(G11:$G$11)), COLUMNAS($B$5:B5)) -se convierte,
      • INDEX($B$5:$E$14, 3, COLUMNS($B$5:B5)) -se convierte,
      • INDEX($B$5:$E$14, 3, 1)
      • Salida: {3; "Johnny", 80, "Biología"}
      • Explicación: En ÍNDICE devuelve un valor de un rango de celdas( $B$5:$E$14 ), especificado por el valor basado en un número de fila y columna.

    Más información: Devolver Múltiples Valores en Excel Basado en un Único Criterio (3 Opciones)

    3. Uso de la Herramienta de Comandos de Filtrado para Extraer Datos de Excel Basados en Criterios de Rango

    La herramienta de comandos Filtro de Excel es una de las más utilizadas y eficaces para extraer datos específicos en función de distintos criterios.

    Observe el siguiente conjunto de datos. Anteriormente, lo utilizamos como ejemplo para extraer los detalles de los estudiantes que obtuvieron calificaciones de 80 a 100 mediante la aplicación de la fórmula Array. Pero en esta sección, aprenderemos cómo hacerlo utilizando Herramienta de filtro de Excel .

    A continuación se indican los pasos para extraer datos basados en un rango determinado utilizando el Filtro de Excel.

    Pasos:

    • En primer lugar, seleccione sólo los cabecera del conjunto de datos.
    • En segundo lugar, vaya a Datos -> Filtro .

    • En tercer lugar, insertará un botón desplegable en cada nombre de cabecera del conjunto de datos.

    • A continuación, como queremos extraer datos basados en las Marcas, haga clic en el botón junto a las Marcas columna.
    • A continuación, en la lista desplegable, seleccione Filtros numéricos -> Entre... (de nuevo, como estamos extrayendo datos entre 80 y 100 por lo que seleccionamos la opción Entre Puede seleccionar cualquier otra opción de la lista según sus criterios).

    • Ahora, desde la ventana emergente Autofiltro personalizado seleccione 80 del lista desplegable que aparecerá con sólo pulsar el botón botón desplegable junto a es mayor o igual que y seleccione 100 en el cuadro de etiquetas es menor o igual que .
    • Después, haga clic en OK .

    Por último, obtendrá todos los detalles sólo para los estudiantes que obtuvieron Marcas de 80 a 100 .

    Más información: Cómo extraer datos de una imagen en Excel (con pasos rápidos)

    Lecturas similares

    • Cómo importar datos a Excel desde otro archivo Excel (2 formas)
    • Código VBA para convertir archivos de texto a Excel (7 métodos)
    • Cómo convertir archivos de texto a Excel automáticamente (3 formas adecuadas)
    • Convertir Excel a archivo de texto con delimitador (2 métodos sencillos)
    • Cómo Importar un Archivo de Texto con Múltiples Delimitadores a Excel (3 Métodos)

    4. Utilización del Filtro Avanzado para Extraer Datos de Excel Basándose en Criterios de Rango

    Si no quieres seguir todos los pasos que se muestran en la sección Filtro, puedes utilizar la función Filtro avanzado en Excel para extraer datos basados en un rango determinado.

    Para utilizar la opción de filtro avanzado en Excel, tiene que definir la condición en su hoja de cálculo para utilizarla más tarde. Vea la siguiente imagen donde definimos nuestra condición de extraer los detalles de los estudiantes de Marcas 80 a 100 en dos celdas diferentes como >=80 y <=100 en Marcas y utilizaremos el números de referencia de las células de esas células más adelante en nuestro trabajo.

    A continuación se indican los pasos para extraer datos basados en un rango determinado utilizando el Filtro Avanzado de Excel.

    Pasos:

    • En primer lugar, seleccione el tabla de datos completa .
    • En segundo lugar, vaya a Datos -> Avanzados .

    • Por último, verá el alcance de su datos seleccionados en la casilla situada junto al Rango de la lista opción.
    • A continuación, en la casilla Gama de criterios seleccione células con las condiciones definidas Verá que el nombre de la hoja de cálculo se genera automáticamente, siguiendo los números de referencia de las celdas que contienen las condiciones predefinidas.
    • Por último, haga clic en OK .

    Como resultado, obtendrá todos los detalles sólo para los estudiantes que obtuvieron Marcas de 80 a 100 .

    Más información: Extraer Datos Filtrados en Excel a Otra Hoja (4 Métodos)

    5. Extraer Datos de una Tabla Definida en Excel Basada en Criterios de Rango

    Puede extraer datos de un Tabla definida en Excel de la hoja de cálculo de Excel mediante la función Filtro opción.

    Consideremos el siguiente conjunto de datos no organizados, que primero definiremos como una tabla de Excel y luego extraeremos los datos de allí.

    A continuación se indican los pasos para extraer datos de una tabla definida en Excel en función de un rango determinado.

    Pasos:

    • Al principio, seleccione cualquier celda de su conjunto de datos y pulse Ctrl T .

    • A continuación, una ventana emergente Crear tabla Aparecerá un cuadro en el que se mostrará rango de su conjunto de datos como valores Mantener la casilla Mi tabla tiene cabeceras marcado.
    • Después, haga clic en OK .

    Se autogenerar una tabla basado en su conjunto de datos con un botón desplegable junto con las cabeceras.

    • A continuación, como te mostramos anteriormente, haz clic en el botón junto a las Marcas ya que queremos extraer datos basados en las Marcas.
    • Después, en la lista desplegable, seleccione Filtros numéricos -> Entre... (de nuevo, como estamos extrayendo datos entre 80 y 100 seleccionamos la opción Entre Puede seleccionar cualquier otra opción de la lista según sus criterios).

    • Ahora, desde la ventana emergente Autofiltro personalizado seleccione 80 del lista desplegable que aparecerá con sólo pulsar el botón botón desplegable junto a es mayor o igual que y seleccione 100 en el cuadro de etiquetas es menor o igual que .
    • Por último, haga clic en OK .

    Al final, obtendrá una tabla definida en Excel con sólo los detalles de los estudiantes que han obtenido Marcas de 80 a 100 .

    Read More: Cómo Extraer Datos de una Tabla Basada en Múltiples Criterios en Excel

    Tenga en cuenta

    • Como el rango del array de la tabla de datos para buscar el valor es fijo, no te olvides de poner el parámetro dólar ($) delante del número de referencia de la celda de la tabla de matrices.
    • Cuando trabaje con valores de matriz, no olvide pulsar Ctrl + Mayús + Intro en el teclado mientras se extraen los resultados. Si sólo pulsa Entre en sólo funcionará si utiliza Microsoft 365 .
    • Tras pulsar Ctrl + Mayús + Intro observará que la barra de fórmulas encierra la fórmula en llaves {} declarándola como una fórmula de matriz. No escriba esas paréntesis {} Excel lo hace automáticamente por usted.

    Conclusión

    En este artículo, hemos aprendido cómo extraer datos de Excel en base a diferentes criterios. Espero que este artículo haya sido muy beneficioso para usted. No dude en hacer cualquier pregunta si usted tiene con respecto al tema.

    Hugh West es un capacitador y analista de Excel altamente experimentado con más de 10 años de experiencia en la industria. Tiene una Licenciatura en Contabilidad y Finanzas y una Maestría en Administración de Empresas. Hugh tiene una pasión por la enseñanza y ha desarrollado un enfoque de enseñanza único que es fácil de seguir y comprender. Su conocimiento experto de Excel ha ayudado a miles de estudiantes y profesionales en todo el mundo a mejorar sus habilidades y sobresalir en sus carreras. A través de su blog, Hugh comparte su conocimiento con el mundo, ofreciendo tutoriales gratuitos de Excel y capacitación en línea para ayudar a las personas y empresas a alcanzar su máximo potencial.