Macro con ruta RELATIVA a un archivo

02/08/2006 - 17:17 por Bart | Informe spam
Hola,
Dentro de una macro en Excel, ejecuto una instrucción que abre determinado
archivo que se encuentra en la misma carpeta donde está el archivo que
contiene la macro.

Esto está dentro de la macro:
"C:\Documents and Settings\Usuario\Escritorio\Registros\Historico\Ejemplo.xls"

El problema radica que cuando copio dicha carpeta con los dos archivos en
otra ruta, tengo que volver a entrar en la macro y cambiar la dirección donde
se encuentra el otro archivo.

Existe alguna manera que la dirección o ruta del archivo dentro de la macro
sea RELATIVA y no absoluta, es decir, que la macro, independientemente donde
se encuentre el archivo que la contiene, abra el otro archivo dentro de la
misma carpeta, sin necesidad de editarla y cambiar la ruta anterior ???

He probado con esto pero no me sirve:
"\\Ejemplo.xls"

Estoy urgido, muchas gracias por su apoyo.

B.S.

Preguntas similare

Leer las respuestas

#1 Abraham
02/08/2006 - 22:21 | Informe spam
'tu debes tener algo asi:

Workbooks.Open Filename:= _
"C:\Documents and
Settings\Usuario\Escritorio\Registros\Historico\Ejemplo.xls"

Pon

Workbooks.Open ThisWorkbook.Path & "\ejemplo.xls"

Abraham
Respuesta Responder a este mensaje
#2 Juan Carlos Perez
02/08/2006 - 22:26 | Informe spam
Hola B.S.

Tienes que sustituir toda la ruta por thisworkbook.path & "/"

Por ejemplo, puedes crear una variable denominada RutArchivo

Dim RutArchivo
RutArchivo = thisworkbook.path & "/"

a continuación sustituyes: "C:\Documents and
Settings\Usuario\Escritorio\Registros\Historico\Ejemplo.xls"

por: RutArchivo & "Ejemplo.xls"

De esta forma, aunque cambies los archivos de ubicación, siempre lo buscará
en la misma carpeta donde está el archivo original desde el que abres el
archivo "Ejemplo.xls".

La declaración de la variable y la asignación de su valor (las dos lineas
que empiezan por Dim que te pongo mas arriba) debes situarlas antes del
código que sustituyes dentro de la macro para que funcione correctamente.

saludos

Juan Carlos Perez
Asturias - España



"Bart" escribió en el mensaje
news:
Hola,
Dentro de una macro en Excel, ejecuto una instrucción que abre determinado
archivo que se encuentra en la misma carpeta donde está el archivo que
contiene la macro.

Esto está dentro de la macro:
"C:\Documents and
Settings\Usuario\Escritorio\Registros\Historico\Ejemplo.xls"

El problema radica que cuando copio dicha carpeta con los dos archivos en
otra ruta, tengo que volver a entrar en la macro y cambiar la dirección
donde
se encuentra el otro archivo.

Existe alguna manera que la dirección o ruta del archivo dentro de la
macro
sea RELATIVA y no absoluta, es decir, que la macro, independientemente
donde
se encuentre el archivo que la contiene, abra el otro archivo dentro de
la
misma carpeta, sin necesidad de editarla y cambiar la ruta anterior ???

He probado con esto pero no me sirve:
"\\Ejemplo.xls"

Estoy urgido, muchas gracias por su apoyo.

B.S.

Respuesta Responder a este mensaje
#3 KL
03/08/2006 - 08:25 | Informe spam
Hola chicos,

Si realmente lo que se pretende es abrir el archivo desde la misma carpeta
que el libro que lo abre, entonces bastaria con:

Workbooks.Open "Ejemplo.xls"

Saludos,
KL

"Juan Carlos Perez" escribió:

Hola B.S.

Tienes que sustituir toda la ruta por thisworkbook.path & "/"

Por ejemplo, puedes crear una variable denominada RutArchivo

Dim RutArchivo
RutArchivo = thisworkbook.path & "/"

a continuación sustituyes: "C:\Documents and
Settings\Usuario\Escritorio\Registros\Historico\Ejemplo.xls"

por: RutArchivo & "Ejemplo.xls"

De esta forma, aunque cambies los archivos de ubicación, siempre lo buscará
en la misma carpeta donde está el archivo original desde el que abres el
archivo "Ejemplo.xls".

La declaración de la variable y la asignación de su valor (las dos lineas
que empiezan por Dim que te pongo mas arriba) debes situarlas antes del
código que sustituyes dentro de la macro para que funcione correctamente.

saludos

Juan Carlos Perez
Asturias - España



"Bart" escribió en el mensaje
news:
> Hola,
> Dentro de una macro en Excel, ejecuto una instrucción que abre determinado
> archivo que se encuentra en la misma carpeta donde está el archivo que
> contiene la macro.
>
> Esto está dentro de la macro:
> "C:\Documents and
> Settings\Usuario\Escritorio\Registros\Historico\Ejemplo.xls"
>
> El problema radica que cuando copio dicha carpeta con los dos archivos en
> otra ruta, tengo que volver a entrar en la macro y cambiar la dirección
> donde
> se encuentra el otro archivo.
>
> Existe alguna manera que la dirección o ruta del archivo dentro de la
> macro
> sea RELATIVA y no absoluta, es decir, que la macro, independientemente
> donde
> se encuentre el archivo que la contiene, abra el otro archivo dentro de
> la
> misma carpeta, sin necesidad de editarla y cambiar la ruta anterior ???
>
> He probado con esto pero no me sirve:
> "\\Ejemplo.xls"
>
> Estoy urgido, muchas gracias por su apoyo.
>
> B.S.
>




email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida