Buscar datos en otros libros desde una lista

Hola Carlos, tengo un problema que no se solucionar:
Tengo una hoja de excel con unos 35 libros dentro.
El libro 1 lo uso para meter datos y obtener como respuestas datos de los otros 34 libros
Consigo que la fórmula funcione mediante una fórmula que encontré en VB:
Private Function buscarx(pestana As Integer, fila As Integer, columna As Integer) As Variant
    buscarx = Worksheets(pestana).Cells(fila, columna).Value
End Function

Esta fórmula funciona perfectamente pero para que busque en el libro adecuado, tengo que decirle el valor del libro en numero de posición.
Mis libros se llaman: alfanje, cimitarra, hacha... Y lo que me gustaría es tener una celda con una lista y que al seleccionar de la lista (por ejemplo) hacha, la fórmula me reconociese que hacha es el libro 8 (o el que le corresponda)
Ahora lo tengo solucionado en cutre, con un comentario en la celda en el que me pongo una chuleta diciéndome cimitarra=2, hacha=8, etc... Pero me gustaría saber si puedo hacerlo con la lista directamente.
Te adjunto 3 imágenes para que puedas ver un poco la idea de lo que tengo y a lo que me refiero.
Muchas gracias
http://5lunas.net/img/excel/Imagen%201.png
http://5lunas.net/img/excel/Imagen%202.png

1 respuesta

Respuesta
1
Bueno tu tienes son hojas dentro del libro no libros dentro de libros...
Bueno para esto es simple crea si deseas otra hoja con códigos, entonces vas a es a crear una lista con el nombre de los items deseados y a la derecha una lista de los números que les corresponda. Finalmente entonces en la lista le colocas la lista de los nombres que es lo que deseas ver y en donde se referencia el numero del libro que simplemente éste haga referencia a una fórmula que sea así:
=si(E32="";"";buscarv(E32;codigos!$A$1:$B$10;2;))
Supuse que la celda de la lista con texto sera E32 y la matriz donde hicimos la tabla con el nombre de libros y sus números estaba en la hoja códigos en el rango A1:B10
De esta manera te retorna el valor del libro en otra celda dependiendo de lo que tu registres.
Recuerda visitar www.ayconcol.com son expertos en el tema ellos también responden de forma gratuita directamente en la web o por todo-expertos en un pequeño espacio en la página principal, si querés aprender más puedes ingresar en www.ayconcol.com/foro creas usuario y todo y listo! Si deseas ellos también elaboran aplicativos, páginas web y soporte a computadores a un costo muy bajo!
Hola Carlos2327,
he intentado seguir tus indicaciones pero siempre me da un error que no consigo solventar.
Quizás es que no te explique bien, así que si no te importa te voy a dejar un enlace con el xls por si tienes a bien mirarlo.
http://5lunas.net/img/excel/v041.xls
En la hoja de "Inicio" en la celda "E22" tengo una fórmula para que me devuelva una información de celdas del resto de hojas. Esa fórmula esta en VB y es la siguiente:
=buscarx(E9;E13;I10)
Entonces cuando busca el valor de la celda E9 a mi me gustaría que en esa celda pudiese poner un desplegable tipo lista con los nombres de las hojas, pero tras mucho probar solo conseguí hacerla funcionar poniendo el numero de posición de éstas. Es decir, si pongo E9 el valor de 2, me busca la Alfanje que es el de posición 2. Pero yo busco que en E9 tener una lista donde yo pueda escoger Alfanje y esa fórmula de E22 funcione.
Me ha parecido muy interesante lo de ayconcol, y le estoy echando un vistazo para programas simples en un futuro. Gracias
Listo te lo mando en este link:
http://www.ayconlearningcenter.hostzi.com/todoexpertos_help/v041.xls
Te quedo como querías saludos! no se te olvide ingresar a ayconcol.com
Me avisas cuando lo veas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas