Formula demasiado larga

24/09/2006 - 05:52 por Adolfo Gerardo Guzman Sanchez | Informe spam
Hola tengo un problema, tengo que buscar un dato en las 25 hojas de un
libro, es decir si no lo encuentra en una hoja busca en la siguiente hoja,
utilizo la siguiente formula(obviamente no esta completa):

SI(ESERROR(BUSCARV(F2,A,9,0)),SI(ESERROR(BUSCARV(F2,D,9,0)),"
",BUSCARV(F2,D,9,0)),BUSCARV(F2,A,9,0))

sin embargo no puedo reducir mas mi formula y me queda de 1223 caracteres y
me envia un error de formula demasiado larga, ya utilize la definicion de
nombres para reducir el nombre de hoja y el rango de celdas a buscar, pero
tampoco queda, quisiera saber si existe alguna manera de realizar esto mismo
de una manera mas corta y menos traumatica, gracias

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
24/09/2006 - 06:07 | Informe spam
hola, Adolfo !

... tengo que buscar un dato en las 25 hojas de un libro
... si no lo encuentra en una hoja busca en la siguiente hoja
... la siguiente formula(obviamente no esta completa):
SI(ESERROR(BUSCARV(F2,A,9,0)),SI(ESERROR(BUSCARV(F2,D,9,0))," ",BUSCARV(F2,D,9,0)),BUSCARV(F2,A,9,0))
... no puedo reducir mas mi formula y me queda de 1223 caracteres
... saber si existe alguna manera de realizar esto mismo de una manera mas corta y menos traumatica



asumiendo que 'el rango' donde se debe buscar el las ~25 hojas es el mismo para todas [y NO columnas completas]...
-> cual es [+/- exactamente] el 'patron' de nombre de las hojas ? [hoja1, hoja2... hja25] -?-
o se trata de nombres 'discrecionales' ? [juan, pedro... lucas] -?-

saludos,
hector.
Respuesta Responder a este mensaje
#2 Adolfo Gerardo Guzman Sanchez
24/09/2006 - 06:29 | Informe spam
gracias por contestar el nombde de las hojas es A1 - A2, LB1-LB2 y los
rangos no necesariamente son los mismos, en algunas hojas es b2:u8000 y en
otras b2:r8000 por citar algun ejemplo, pero para no escribir los nombre de
hojas y los rangos defini nombres como aparecen en el ejemplo de la formula
que envie por ejem:
A se refiere a la hoja A1 - A2 y el rango B2:U8000, en descargo de mi
desesperacion debo decir que no puedo cambiar nombres ni reducir las hojas
porque los datos no son los mismos lo que si puedo buscar es la celda F2, no
se si me explique o te confunda mas, una vez mas gracias por ayudarme y
espero sugerencias
Respuesta Responder a este mensaje
#3 Héctor Miguel
24/09/2006 - 06:51 | Informe spam
hola, Adolfo !

... el nombde de las hojas es A1 - A2, LB1-LB2
... los rangos no necesariamente son los mismos, en algunas hojas es b2:u8000 y en otras b2:r8000 [...]
... para no escribir los nombre de hojas y los rangos defini nombres... ejem: A se refiere a la hoja A1 - A2 y el rango B2:U8000
en descargo de mi desesperacion debo decir que no puedo cambiar nombres ni reducir las hojas porque los datos no son los mismos
lo que si puedo buscar es la celda F2, no se si me explique o te confunda mas [...]



1) 'de conformidad' con el ejemplo que expones... puedo/debo/... asumir que es posible 'recortar' el rango de busqueda -?-
si consideramos que -siempre ?- necesitas devolver la columna 9 y que -siempre ?- se inician los rangos en la columna 'B' -?-
lo que nos permitiria un rango de busqueda -en todas la hojas ?- de la columna 'A' a la columna 'J' -?-

2) si lo anterior es 'alcanzable'... prueba con el siguiente procedimiento...
a) escribe en un rango de filas -exclusivamente- los nombres de las ~25 hojas [p.e. en el rango 'A2:A26']
b) donde necesites el resultado, utiliza una formula +/- como la siguiente:
-> toma nota de que se trata de una formula 'matricial'... [ya sabes] al introducirla/editarla, se termina con ctrl+mayus+enter
=buscarv(f2,indirecto("'"&indice(a2:a26,coincidir(verdadero,contar.si(indirecto("'"&a2:a26&"'!b2:b9000"),f2)>0,0))&"'!b:j"),9,0)

3) toma en cuenta que la propuesta NO 'cuenta' con alguna prevencion/correccion/... de -posibles- errores :-(
por lo que se espera [o asume] que el dato buscado [F2] SI podra/debera encontrarse en alguna de las ~25 hojas -?-

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#4 Héctor Miguel
24/09/2006 - 07:06 | Informe spam
hola [de nuevo], Adolfo !

solo para comentar que [segun pruebas] SI es posible utilizar columnas completas en estas busquedas 3-d :))
-> por lo que puedes sustituir el rango de comparacion... -> b2:b9000
por la referencia a la columna completa +/- asi: -> b:b

=buscarv(f2,indirecto("'"&indice(a2:a26,coincidir(verdadero,contar.si(indirecto("'"&a2:a26&"'!b2:b9000"),f2)>0,0))&"'!b:j"),9,0)



=buscarv(f2,indirecto("'"&indice(a2:a26,coincidir(verdadero,contar.si(indirecto("'"&a2:a26&"'!b:b"),f2)>0,0))&"'!b:j"),9,0)

saludos,
hector.
Respuesta Responder a este mensaje
#5 Adolfo Gerardo Guzman Sanchez
24/09/2006 - 07:18 | Informe spam
te agradezco mucho tu ayuda en este momento estoy haciendo pruebas, te
comento mas tarde
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida