Excel - Problema en formula?

 
Vista:

Problema en formula?

Publicado por cachirulo66 (2 intervenciones) el 28/03/2007 11:03:56
Hola a todos. Soy nuevo en este foro, que la verdad tiene mu buena pinta.

Os cuento cúal es mi problema. Lo que debo hacer es que en una formula me coja datos de otra hoja de excel de otra dirección, tal que así:

='C:\Excel\[Libro2.xls]Hoja1'!A1

El problema que tengo es que quiero que la ruta me la coja de otra celda, es decir que la ruta sea una incognita...

La verdad que no se me ocurre como hacerlo, la cosa sería algo como esto.

=&A1&A2

Donde A1 sea la ruta de la otra hoja de excel, y A2 sea la casilla de dicha hoja.

Es decir A1='C:\Excel\[Libro2.xls]Hoja1'!

La verdad que no se si me explicado muy bien, espero que sí. Para lo que sea si eso decidmelo y os intento explicar un poco mejor...

Muchas Gracias de antemano

Un Saludo desde Coruña
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:Problema en formula?

Publicado por Armando Montes (240 intervenciones) el 29/03/2007 03:35:05
La funcion INDIRECTO sirve para eso
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema en formula?

Publicado por cachirulo66 (2 intervenciones) el 29/03/2007 08:28:06
Gracias por tu respuesta

La verdad que la función INDIRECTO me tenía bastante buena pinta, solo que tiene un pequeño problema, está función tiene la siguiente forma

Sintaxis

INDIRECTO(ref;a1)

Donde Ref hace referencia a otro libro (una referencia externa). El problema de esta función es que dicho libro debe estar abierto. Si el libro de origen no está abierto, INDIRECTO devolverá el valor de error #¡REF!

Debido a este problema de la función no creo que me valga, ya que desde un libro de excel quiero controlar varios libros diferentes (en torno a 5 o 6). Claro entonces cada vez que quisiera actualizar ese libro deberíoa abrir previamente los otros, por eso la solución no me gusta mucho...

Buscando por ahí he encontrado otra solución, mira como es. Debo escribir en vba este código en una Worksheet

Suponiendo que la ruta está el la celda A1 y la celda donde quieras poner la fórmula esté en C7 y la celda que quieras traer sea A2

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$C$7" Then
Target.Formula = Range("A1").Text & "A2"
End If

Con ello puedo coger datos de otro libro de excel sin necesidad de abrirlo. Esta solución esta cojonuda solo que presenta algún problemilla que aún tengo que solucionar, ya que al seleccionar la celda C7 se me marca como si se me copiara.

Seguiré buscando una solución. A lo mejor es que también estoy usando mal la función INDIRECTO, no me pordrías poner algún ejemplo...

Gracias por todo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar