Como Editar enlaces en Word usando VBA

Índice
  1. Edite los documentos vinculados usando Word VBA
  2. Editar los documentos vinculados desde Excel usando VBA

La semana pasada analizamos cómo vincular Excel directamente con documentos de Word . Esto puede generar un importante ahorro de tiempo ya que el documento de Word se actualiza automáticamente cada vez que cambia el archivo de Excel. El problema viene cuando queremos cambiar la ruta del archivo del documento vinculado, ya que es necesario cambiar los enlaces uno por uno. Pero podemos usar VBA para automatizar este proceso.

El siguiente código VBA se ha incluido dos veces, una para usarlo en Excel y otra para usarlo en Word.

Aquí hay algunas notas para usar el código:

  • El código de Excel se ha escrito utilizando enlace tardío. Lo que significa que debería funcionar solo; no es necesario crear referencias a la biblioteca de objetos de Word.
  • Al cambiar las rutas de los archivos, recuerde finalizar la ruta del archivo con una barra diagonal ""

Edite los documentos vinculados usando Word VBA

Para abrir el editor de Visual Basic en Word presione Alt + F11. Haga clic derecho en ThisDocument para su documento y seleccione Insertar – Módulo.

Módulo de inserción de Word VBA

Copie el código siguiente en la ventana de código.

Editor de Word VBA con código

Para que este código funcione, solo necesita actualizar las variables oldFilePath y newFilePath para cumplir con sus requisitos.

Sub UpdateWordLinks()Dim newFilePath As StringDim oldFilePath As StringDim sourceFileName As StringDim newFileName As StringDim wrdDocument As DocumentDim i As Integer'La ruta del archivo antiguo como una cadena (el texto que se va a reemplazar)oldFilePath = "Cadena deRuta del archivo a reemplazarExcel File.xlsx" 'La nueva ruta del archivo como una cadena (el texto a reemplazar)newFilePath = "String ofNew File PathExcel File 2.xlsx"'Establezca la variable en Word DocumentSet wrdDocument = ThisDocument'Use Reemplazar para cambiar oldFilePath a newFilePath en el Código de campoFor i = 1 Para wrdDocument.Fields.Count wrdDocument.Fields(i).LinkFormat.SourceFullName _ = Reemplazar(wrdDocument.Fields(i).LinkFormat.SourceFullName, _ oldFilePath, newFilePath)A continuación, actualizo los enlaceswrdDocument.Fields. Actualización final sub

Editar los documentos vinculados desde Excel usando VBA

Puede decidir que Excel es una mejor ubicación para guardar el código para editar enlaces. En Excel, presione ALT + F11 para abrir el Editor de Excel Visual Basic. Haga clic en Insertar – Módulo. Copie el siguiente código en el nuevo módulo.

Para que este código funcione, solo necesita actualizar las variables sourceFileName, oldFilePath y newFilePath para cumplir con sus requisitos.

Sub UpdateWordLinks()Dim oldFilePath As StringDim newFilePath As StringDim sourceFileName As StringDim newFileName As StringDim wrdApp As ObjectDim wrdDocument As ObjectDim i As Integer'El nombre del archivo y la ruta del archivo para actualizarsourceFileName = "C:UsersmarksDocumentsTest Word Link 1.docx"'The ruta del archivo antiguo como una cadena (el texto que se reemplazará)oldFilePath = "C:UsersmarksDocumentsTest Word Link.xlsx"'La nueva ruta del archivo como una cadena (el texto que se reemplazará)newFilePath = "C:UsersmarksDocumentsP1Test Word Link P1.xlsx "'Establezca la variable en Word ApplicationSet wrdApp = CreateObject("Word.Application")'Haga visible la aplicación de WordwrdApp.Visible = True'Establezca la variable en Word DocumentSet wrdDocument = wrdApp.Documents.Open(sourceFileName)'Use Reemplazar para cambiar oldFilePath a newFilePath en el campo codeFor i = 1 Para wrdDocument.Fields.Count wrdDocument.Fields(i).LinkFormat.SourceFullName _ = Reemplazar(wrdDocument.Fields(i).LinkFormat.SourceFullName, _ oldFilePath, newFilePath) A continuación, actualizo los enlaceswrdDocument.Fields.Update'Guarda, cierra y sal de la aplicaciónwrdDocument.SavewrdDocument.ClosewrdApp.Quit'Libera la memoriaSet wrdApp = NothingSet wrdDocument = NothingEnd Sub

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir

Este sitio web utiliza cookies para mejorar la experiencia del usuario y garantizar un funcionamiento eficiente. Al utilizar nuestro sitio web, aceptas todas las cookies de acuerdo con nuestra política de cookies. Leer mas...