
problemas con INDIRECTO
Publicado por Guillermo (38 intervenciones) el 17/10/2016 11:23:37
Hola foro, os cuento mi problema a ver si se os ocurre solución.
Tengo una tabla de regsitros (filas) en la cual cada registro puede tener o no unos valores en 30 columnas,
Lo que quiero es agrupar en una tabla el identificador del registro y cuales de las 30 celdas tienen valor. (como mucho son 6) pero para cada registro cambia.
Para el primer valor he utilizado esta función:
=INDICE(E2:BB2;COINCIDIR(VERDADERO;INDICE((E2:BB2<>""););0))
que busca el primer valor diferente de vacio en el rango E2:BB2, si por ejemplo encuentra un valor en H2 (2.41), el siguiente valor quiero que lo encuentre a partir de la celda I2, lo que hace es buscar 2.41 y desde ahi busca en el rango I2:BB2, mediante la siguiente fórmula:
=INDICE(INDIRECTO((DIRECCION(FILA();COINCIDIR(BE2;E2:BB2;0)+5;4)&":BB"&FILA()));COINCIDIR(VERDADERO;INDICE((INDIRECTO((DIRECCION(FILA();COINCIDIR(BE2;E2:BB2;0)+5;4)&":BB"&FILA()))<>""););0))
y en este formulón es donde falla la función indirecto. Si lo hago mediante una celda intermedia si funciona:
+ Celda BG2: =(DIRECCION(FILA();COINCIDIR(BE2;E2:BB2;0)+5;4)&":BB"&FILA()) me devuelve I2:BB2
+ CeldaBH2: =INDICE(INDIRECTO(BG2);COINCIDIR(VERDADERO;INDICE((INDIRECTO(BG2)<>""););0)) me devuelve el segundo valor no vacio del rango.
Espero haberme explicado y muchas gracias de antemano.
guille
Tengo una tabla de regsitros (filas) en la cual cada registro puede tener o no unos valores en 30 columnas,
Lo que quiero es agrupar en una tabla el identificador del registro y cuales de las 30 celdas tienen valor. (como mucho son 6) pero para cada registro cambia.
Para el primer valor he utilizado esta función:
=INDICE(E2:BB2;COINCIDIR(VERDADERO;INDICE((E2:BB2<>""););0))
que busca el primer valor diferente de vacio en el rango E2:BB2, si por ejemplo encuentra un valor en H2 (2.41), el siguiente valor quiero que lo encuentre a partir de la celda I2, lo que hace es buscar 2.41 y desde ahi busca en el rango I2:BB2, mediante la siguiente fórmula:
=INDICE(INDIRECTO((DIRECCION(FILA();COINCIDIR(BE2;E2:BB2;0)+5;4)&":BB"&FILA()));COINCIDIR(VERDADERO;INDICE((INDIRECTO((DIRECCION(FILA();COINCIDIR(BE2;E2:BB2;0)+5;4)&":BB"&FILA()))<>""););0))
y en este formulón es donde falla la función indirecto. Si lo hago mediante una celda intermedia si funciona:
+ Celda BG2: =(DIRECCION(FILA();COINCIDIR(BE2;E2:BB2;0)+5;4)&":BB"&FILA()) me devuelve I2:BB2
+ CeldaBH2: =INDICE(INDIRECTO(BG2);COINCIDIR(VERDADERO;INDICE((INDIRECTO(BG2)<>""););0)) me devuelve el segundo valor no vacio del rango.
Espero haberme explicado y muchas gracias de antemano.
guille
Valora esta pregunta


0