tablas vinculadas

21/07/2005 - 10:37 por Jordi Maycas | Informe spam
Hola, tengo dos hojas de excel vinculadas entre si, es decir, cuatro celdas
de una hoja han de ser iguales a otras cuatro de otro lado. Hasta ahi todo
bien, el problema es si se cambia la carpeta en donde estan situadas, la
ruta sigue manteniendo la antigua.

Acabo de ver, que a traves del menu edicion, vinculos, cambiar origen... se
pueden actualizar las celdas sin hacerlo a mano, pero no termina de ser
totalmente automatico, aunque reconozco que es mejor que ir celda a celda.

He probado con macros, pero no logro hacerlo de esta manera.

¿Alguna sugerencia?

Gracias

Preguntas similare

Leer las respuestas

#1 Fernando Arroyo
21/07/2005 - 12:13 | Informe spam
"Jordi Maycas" escribió en el mensaje news:
Hola, tengo dos hojas de excel vinculadas entre si, es decir, cuatro celdas
de una hoja han de ser iguales a otras cuatro de otro lado. Hasta ahi todo
bien, el problema es si se cambia la carpeta en donde estan situadas, la
ruta sigue manteniendo la antigua.

Acabo de ver, que a traves del menu edicion, vinculos, cambiar origen... se
pueden actualizar las celdas sin hacerlo a mano, pero no termina de ser
totalmente automatico, aunque reconozco que es mejor que ir celda a celda.

He probado con macros, pero no logro hacerlo de esta manera.

¿Alguna sugerencia?

Gracias





Si tienes abiertos ambos libros (origen y destino) cuando guardas el libro origen en otra ruta, en el libro destino se deberían modificar automáticamente los vínculos. Si el de destino está cerrado, no veo otra posibilidad que recurrir a VBA.
Un saludo.


Fernando Arroyo
MS MVP - Excel
Respuesta Responder a este mensaje
#2 Jordi Maycas
21/07/2005 - 13:52 | Informe spam
Te explico...

En el escritorio tengo dos carpetas, con tablas vinculadas... Si me creo una
carpeta y copia esas dos carpetas, y abro las hojas de excel.. la ruta que
muestra es la original y me veo obligado a ir celda a celda, para poner la
ruta correcta.. o hacer la vinculacion de nuevo realmente. Hoy descrubri, lo
de edicion, vinculacion.. y obviamente es mejor; pero deberia ser mas facil.

"Fernando Arroyo" escribió en el mensaje
news:
"Jordi Maycas" escribió en el mensaje
news:
Hola, tengo dos hojas de excel vinculadas entre si, es decir, cuatro
celdas
de una hoja han de ser iguales a otras cuatro de otro lado. Hasta ahi todo
bien, el problema es si se cambia la carpeta en donde estan situadas, la
ruta sigue manteniendo la antigua.

Acabo de ver, que a traves del menu edicion, vinculos, cambiar origen...
se
pueden actualizar las celdas sin hacerlo a mano, pero no termina de ser
totalmente automatico, aunque reconozco que es mejor que ir celda a celda.

He probado con macros, pero no logro hacerlo de esta manera.

¿Alguna sugerencia?

Gracias





Si tienes abiertos ambos libros (origen y destino) cuando guardas el libro
origen en otra ruta, en el libro destino se deberían modificar
automáticamente los vínculos. Si el de destino está cerrado, no veo otra
posibilidad que recurrir a VBA.
Un saludo.


Fernando Arroyo
MS MVP - Excel
Respuesta Responder a este mensaje
#3 Fernando Arroyo
21/07/2005 - 14:54 | Informe spam
Prueba poniendo el siguiente código en el módulo del libro "destino" (en ThisWorkbook)

Private Sub Workbook_Open()
With ThisWorkbook
If Left(.LinkSources(xlExcelLinks)(1), InStrRev(.LinkSources(xlExcelLinks)(1), "\") - 1) <> .Path Then .ChangeLink Name:=.LinkSources(xlExcelLinks)(1), newname:=Left(ThisWorkbook.LinkSources(xlExcelLinks)(1), InStrRev(ThisWorkbook.LinkSources(xlExcelLinks)(1), "\") - 1) & "origen.xls" Else ActiveWorkbook.UpdateLink Name:=.LinkSources(xlExcelLinks)(1), Type:=xlExcelLinks
End With
End Sub


Para que funcione el código (tal como está) es necesario que tan solo haya un origen en el libro, y lo único que hace es comparar la ruta de dicho origen con la actual del propio libro, y en caso de que difieran modificarla para que "apunte" al directorio actual. Si no ha habido cambio de directorio, el código actualiza el vínculo.

Recuerda que tendrás que responder <No actualizar> cuando Excel, al abrir el libro "destino", pregunte si se desean actualizar los vínculos. El propio código se encarga de efectuar la actualización si no ha habido cambio de directorio.

Tendrás que sustituir "origen.xls" por el nombre real del libro de origen, y te aconsejo que hagas alguna prueba (yo las he hecho y parece que funciona bien, pero...)
Un saludo.


Fernando Arroyo
MS MVP - Excel



"Jordi Maycas" escribió en el mensaje news:
Te explico...

En el escritorio tengo dos carpetas, con tablas vinculadas... Si me creo una
carpeta y copia esas dos carpetas, y abro las hojas de excel.. la ruta que
muestra es la original y me veo obligado a ir celda a celda, para poner la
ruta correcta.. o hacer la vinculacion de nuevo realmente. Hoy descrubri, lo
de edicion, vinculacion.. y obviamente es mejor; pero deberia ser mas facil.

"Fernando Arroyo" escribió en el mensaje
news:
"Jordi Maycas" escribió en el mensaje
news:
Hola, tengo dos hojas de excel vinculadas entre si, es decir, cuatro
celdas
de una hoja han de ser iguales a otras cuatro de otro lado. Hasta ahi todo
bien, el problema es si se cambia la carpeta en donde estan situadas, la
ruta sigue manteniendo la antigua.

Acabo de ver, que a traves del menu edicion, vinculos, cambiar origen...
se
pueden actualizar las celdas sin hacerlo a mano, pero no termina de ser
totalmente automatico, aunque reconozco que es mejor que ir celda a celda.

He probado con macros, pero no logro hacerlo de esta manera.

¿Alguna sugerencia?

Gracias





Si tienes abiertos ambos libros (origen y destino) cuando guardas el libro
origen en otra ruta, en el libro destino se deberían modificar
automáticamente los vínculos. Si el de destino está cerrado, no veo otra
posibilidad que recurrir a VBA.
Un saludo.


Fernando Arroyo
MS MVP - Excel


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