Excel: ¿Cómo devolver el último número de fila que contiene una cadena específica?

Excel: ¿Cómo devolver el último número de fila que contiene una cadena específica?

En Excel, ¿existe una fórmula de Excel que pueda usar para completar la columna B (en mi ejemplo a continuación) que devolverá el último número de fila que contiene una cadena específica, antes de la fila actual?

Los datos no son contiguos.
Por ejemplo, los datos pueden ser:

   |  A (value)    B (prev recent instance)
----------------------------------------------
 1 |  Mike
 2 |  John
 3 |  Mike         1
 4 |  Tony         
 5 |  Mike         3
 6 |  John         2

Luego querré expandirlo para que la Columna C muestre la instancia más antigua.

Parece muy similar a esta pregunta: ¿Qué es una fórmula de Excel que me devolverá el último número de fila de una celda dentro de un rango que contiene datos específicos?, sin embargo, esa pregunta y respuesta requiere que los datos sean contiguos.

Editar: Me gustaría que la respuesta fuera una fórmula de hoja de trabajo; sin embargo, si cree que es más apropiado implementarla a través de VBA, inclúyala también en su respuesta con los pros y los contras de cada enfoque.

Respuesta1

Para encontrar el ejemplo más antiguo, a continuación se menciona la fórmula: -

=LOOKUP(2,1/(A:A=A2),ROW(A:A))

Para su mejor comprensión, a continuación se muestra la captura de pantalla.

ingrese la descripción de la imagen aquí

Respuesta2

Suponiendo que sus datos comienzan en A1, pruebe esta "fórmula matricial" en B2

=IF(COUNTIF(A$1:A1,A2),MATCH(2,1/(A$1:A1=A2)),"")

confirmado con CTRL+SHIFT+ENTER y copiado

o puedes usar esta versión sin matriz

=IF(COUNTIF(A$1:A1,A2),MATCH(2,INDEX(1/(A$1:A1=A2),0)),"")

En Excel 2007 o posterior, puede simplificar con IFERROR, es decir, la versión de la matriz se convierte en

=IFERROR(MATCH(2,1/(A$1:A1=A2)),"")

Para la fila "Primera instancia" en la columna C, pruebe esta fórmula en C1 copiada hacia abajo

=MATCH(A1,A$1:A1,0)

Nota: las fórmulas no devuelven estrictamente "números de fila", sino los números de fila relativos para sus datos, es decir, la fila 1 de sus datos devuelve 1, etc.

información relacionada