Estoy intentando "Indexar si" de manera efectiva: copiar una lista con ciertos criterios

Estoy intentando "Indexar si" de manera efectiva: copiar una lista con ciertos criterios

Tengo una columna de datos y un marcador al lado. Pensar:

ID#1 -- A
ID#2 -- B
ID#3 -- A

Estoy intentando pasar solo los números de identificación con el marcador A, por lo que mi resultado final es

ID#1
ID#3

Esto es muy fácil de hacer con VBA: filtrar el rango, copiar y pegar. Estoy intentando encontrar una solución que no sea VBA para este problema. He estado probando varias fórmulas de matriz: Índice (rango, sumaproducto (fila * criterios)), pero no puedo hacer que funcione. ¿Cómo haría que esto funcione?

La elegancia computacional es un factor importante: la hoja con la que estoy tratando debería ser una base de datos debido a su tamaño, pero los poderes fácticos han rechazado esa idea.

Respuesta1

Usar:

=IFERROR(INDEX($A$1:$A$8,SMALL(IF($B$1:$B$8="A",ROW($B$1:$B$8),999999),ROW(A1))),"")

Pequeño devolverá los ID con "A" para cada fila (de menor a mayor)
A1:A8 cámbielo para que corresponda con su columna de ID
B1:B8 cámbielo para que corresponda con su columna A
Mantenga $ para referencias fijas
presione Ctrl+ Shift+ Enteren lugar de Enterque sea un fórmula matricial

información relacionada