Busque el valor segundo, tercero o enésimo en Excel

Excel tiene que ver con la gestión de datos, la utilización de datos. Sin embargo, muchas veces en los conjuntos de datos de Excel, debe haber notado que un argumento tiene 2 o más de 2 valores. Entonces, para mirar (o usar solo el primer valor asignado), usamos funciones como BUSCARV, ÍNDICE.

Sin embargo, en situaciones de la vida real, es posible que desee echar un vistazo (usar) el segundo, el tercero o incluso generalizarlo al valor N. Entonces, para hacer esto, tenemos dos métodos para mirar más de los valores de primer orden.

Estos métodos son:

  1. Fórmula auxiliar
  2. Fórmula de array

Echemos un vistazo al primer método.

MÉTODO DEL AYUDANTE:

Con el fin de comprender, veremos el conjunto de datos anterior. En las columnas A y B, se dan las materias de inscripción, pero si observa detenidamente, Akash, Naina y Jim están inscritos en más de 1 materia. En las columnas G, H, I: las entradas están hechas, pero esta vez tenemos que llenar los datos (es decir, las materias elegidas por los estudiantes) de manera horizontal. Entonces, si usamos métodos como BUSCARV e ÍNDICE, la salida será diferente a la esperada, es decir, tomarán el único primer valor de los argumentos repetidos. Por ejemplo, si aplicamos la función BUSCARV O ÍNDICE, solo llenará el inglés como su tema, lo cual es incorrecto. Por lo tanto, necesitamos actualizar esto a 2.°, 3.° o incluso a N.° valor de observación.

Entonces, para hacerlo, inserte una columna en blanco, justo antes de esa columna, que contenga valores repetidos de argumentos.

En la celda B2, escriba la siguiente fórmula:

=A2&COUNTIF($A$2:$A2,A2)

El ‘=’ da una indicación a Excel de que todo lo que viene es una fórmula y debe evaluarse. Ahora, ¿qué hará esta función? Básicamente, denominará cada argumento (que aquí es el NOMBRE de la columna), dará números únicos y crecientes a cada argumento, por lo que se verá así:

Aquí, proporcionamos todos los argumentos para cada aumento único usando CONTAR.SI en la fórmula anterior y lo incrustamos en la Celda B, usando la fórmula anterior.

Ahora, en la celda H2, incruste la siguiente fórmula:

=IFNA(VLOOKUP($G2&COLUMNS($H$1:H1),$B$2:$C$10,2,0),"")

La salida será así:

Aquí $G2&COLUMNS($H$1:H1) es un buscador de valor de búsqueda o vistazo para múltiples valores.

MÉTODO DE ARREGLO:

Ahora, este método lo ayuda mucho, cuando su requisito es no cambiar o alterar el conjunto de datos original, como agregar algunas columnas adicionales (ayudantes).

Recordatorio : para ejecutar fórmulas contenidas en la array, debe presionar las teclas Ctrl + Shift + Enter, en lugar de presionar solo la tecla Enter.

Consideraremos el mismo conjunto de datos, como se usa en el ejemplo de la columna auxiliar.

Ahora, consideraremos la fórmula y la entenderemos parte por parte, cómo funciona la fórmula:

=IFERROR(INDEX($B$2:$B$10,SMALL(IF($A$2:$A$10=$D2,ROW($A$2:$A$10)-1,""),COLUMNS($E$1:E1))),"")

Esta fórmula se pegará en la columna E2.

Ahora, dividiendo la fórmula en partes, entenderemos $A$2:$A$10=$D2.

Esta fórmula se compara en un rango, que proporcionamos como A2 a A10, comparándolo con D2 en adelante.

La array devuelta por esto contendrá valores VERDADERO o FALSO. La array devuelta, cuando se aplica esta fórmula en la celda E2, será:

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

Aquí. se hace el conteo del argumento “Akash”. Mire de cerca la array devuelta, donde sea que esté el nombre Akash, la salida es VERDADERA. Por ejemplo, ponemos un rango de comparación de A2 a A10, por lo que en este rango de columna, los lugares 1 y 4 se llenan con el argumento Akash.

Ahora la segunda parte importante de esta fórmula es:

IF($A$2:$A$10=$D2, ROW($A$2:$A$10)-1,""

Lo que esta parte está haciendo es básicamente una decoración de la fórmula anterior, esta fórmula también imprimirá una array, pero esta vez, cada vez que coincida el argumento requerido, el valor VERDADERO no se imprimirá, en lugar de la posición de ocurrencia de ese se imprimirá el argumento, y para los valores FALSO, estamos imprimiendo solo un «», por lo que para el ejemplo anterior, donde estábamos buscando el argumento Akash, la array en este formato será:

{1;"";"";"";4;"";"";"";""}

Ahora, la tercera parte importante de esta fórmula es:

SMALL(IF($A$2:$A$10=$D2,ROW($A$2:$A$10)-1,""),COLUMNS($E$1:E1)))

Ahora, esta función tomará la primera más pequeña, la segunda más pequeña, y así sucesivamente, si tiene más de 2 ocurrencias, y las colocará en la columna correcta, por ejemplo, en nuestra tabla derecha del conjunto de datos, en la celda E2, tanto FUNCIÓN DE COLUMNA como FUNCIÓN PEQUEÑA devolverán el valor 1. Pero, en la columna F2, la FÓRMULA DE LA COLUMNA devolverá el valor 2, pero la función PEQUEÑA devolverá el valor 4 porque es el segundo valor de ocurrencia para Akash.

 Ahora, la tercera parte importante de esta fórmula es:

(INDEX($B$2:$B$10,SMALL(IF($A$2:$A$10=$D2,ROW($A$2:$A$10)-1,""),COLUMNS($E$1:E1)))

Ahora, el valor de ÍNDICE es nuevamente una función de retorno de valor como COLUMNA Y PEQUEÑO. Pero lo diferente del valor de ÍNDICE es que devolverá el valor correspondiente de ese argumento, llenado en la columna B2, así, por ejemplo, en la columna E2 llenará el valor Inglés y en la celda F2, pondrá el valor de Matemáticas.

La función IFERROR imprimirá un espacio en blanco, en caso de que la función ÍNDICE no pueda imprimir un valor.

El resultado del método de array seguirá siendo el mismo, solo que no necesitará agregar columnas adicionales y aplicar las fórmulas en consecuencia.

Publicación traducida automáticamente

Artículo escrito por gs2000april y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *