Encontrar Intersección de matriz de fórmula de matriz de 2 coincidencias


0

¿Cómo encuentro la intersección de dos funciones de coincidencia utilizando la fórmula de matriz (presionando las teclas CTR + MAYÚS + ENTRAR).

Actualmente intento usar esta fórmula de matriz pero no puedo obtener ningún resultado.

{=MATCH(B2,Sheet2!$A$2:$A$5) MATCH(C2,Sheet2!$B$2:$B$5)}

Por ejemplo, los datos en Sheet2 se ven a continuación.

     A          B          C
1    Code       Type       Value
2    ID1        DIRECT     100
3    ID1        INDIRECT   130
4    ID2        DIRECT     200
5    ID2        INDIRECT   110

Y mis datos en Sheet1 se parecen a lo siguiente.

     A          B          C
1    Date       Code       Type     
2    3/1/2013   ID2        INDIRECT     

Al usar la fórmula de matriz anterior, espero obtener la intersección de 2 matrices (de números de fila):

= {4,5} {3,5}
= {5}

¿Estás seguro de que puedes ingresar a esta función tal como está escrita arriba?
Peter L.

Hola Peter, no puedo hacer eso. Pero mi sentido común es que, dado que el espacio es operador para la intersección del rango, entonces trato de aplicarlo a la función de "fórmula de matriz".
Dino

Ahora no entiendo qué quieres decir con intersección. Y since space is operator for intersection of rangetambién es un descubrimiento para mí)
Peter L.

¿Busca encontrar instancias donde Ax= Bx= B2, donde x es un número de fila? ¿Y qué quieres que te devuelva? El número de fila? ¿El valor?
Excellll

Sí, el espacio es un operador de intersección ... pero eso daría la intersección de dos rangos: la función MATCH devuelve un número (o error). No puedo ver cómo espera obtener la intersección de esos ..... .
barry houdini

Respuestas:


1

Pruebe esta fórmula (ingresada como fórmula de matriz):

= PARTIDO (B2 y C2, Hoja2! $ A $ 2: $ A $ 5 y Hoja2! $ B $ 2: $ B $ 5,0)

Funciona muy bien Peter. Nunca pensé en esto. Gracias :)
Dino

0

Puedo obtener una matriz que incluye números de fila para coincidencias y un valor ficticio para no coincidencias. Con entrada de matriz:

=IF($A$2:$A$5=D2,IF($B$2:$B$5=E2,ROW($A$2:$A$5),2000000),2000000)

También puedo obtener las coincidencias en celdas individuales, pero no en una matriz en una celda. Con la entrada de matriz (en la fila 2) y rellene hasta llegar a un valor ficticio:

=SMALL(IF($A$2:$A$5=D2,IF($B$2:$B$5=E2,ROW($A$2:$A$5),2000000),2000000),ROW()-1)

Para colapsar la matriz al tamaño de las coincidencias, creo que necesitará una función VBA (bastante simple).


0

Si solo espera una sola coincidencia, la sugerencia de Peter debería hacer lo que quiera. De lo contrario, puede extender la solución de Excellll para obtener una matriz que solo contenga los números de fila coincidentes, por ejemplo, si las filas 2 y 5 coinciden en ambas columnas, esta fórmula devolverá {2; 5}

=SMALL(IF(($A$2:$A$5=D2)*($B$2:$B$5=E2),ROW($A$2:$A$5)),ROW(INDIRECT("1:"&SUM(($A$2:$A$5=D2)*($B$2:$B$5=E2)))))

confirmado con CTRL+SHIFT+ENTER

Nota: si este es un paso intermedio en el camino hacia un resultado diferente, entonces este puede no ser el mejor método .....


Hola Barry, sí, me esperan 1 valor de retorno. Pero esta solución se puede extender si tengo pares de referencias no únicos. Quiero votar esto, pero como mi reputación es inferior a 15, no puedo hacer esto :(
Dino
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.