Clase LinkFormat - propiedades de un objeto OLE vinculado (Word VBA)

La clase LinkFormat representa las características de vinculación de un objeto OLE o una imagen. Para usar una variable de clase LinkFormat, primero debe ser instanciado, por ejemplo


Dim lft as LinkFormat
Set lft = ActiveDocument.Fields(1).LinkFormat

AutoUpdate

True si el vínculo especificado se actualiza automáticamente cuando se abre el archivo contenedor o cuando se cambia el archivo de origen.


Dim shapeLoop as Shape 
 
For Each shapeLoop In ActiveDocument.Shapes 
 With shapeLoop 
 If .Type = msoLinkedOLEObject Then 
 If .LinkFormat.AutoUpdate = False Then 
 .LinkFormat.Update 
 End If 
 End If 
 End With 
Next s

Rompe el vínculo entre el archivo de origen y el objeto OLE, imagen o campo especificados.

Después de utilizar este método, el resultado del vínculo no se actualizará automáticamente si se cambia el archivo de origen.


Dim shapeLoop As Shape 
 
For Each shapeLoop In ActiveDocument.Shapes 
 With shapeLoop 
 If .Type = msoLinkedOLEObject Then 
 .LinkFormat.Update 
 .LinkFormat.BreakLink 
 End If 
 End With 
Next shapeLoop

Locked

True si está bloqueado un objeto Field, InlineShape o Shape para evitar actualizaciones automáticas.

Si utiliza esta propiedad con un objeto Shape que es una imagen vinculada flotante (una imagen agregada con el método AddPicture del objeto Shapes), se produce un error.


ActiveDocument.Fields(1).LinkFormat.Locked = True

SavePictureWithDocument

True si la imagen especificada se guarda con el documento.

Esta propiedad sólo funciona con formas y formas entre líneas que sean imágenes vinculadas.


Set myPic = ActiveDocument.InlineShapes(1) 
If myPic.Type = wdInlineShapeLinkedPicture Then 
 myPic.LinkFormat.SavePictureWithDocument = True 
End If

SourceFullName

Devuelve o establece la ruta de acceso y el nombre del archivo de origen para el objeto OLE vinculado especificado, imagen o campo.

Uso de esta propiedad es equivalente a usar en secuencia las propiedades SourcePath, PathSeparator y SourceName.


With ActiveDocument.Shapes(1) 
 If .Type = msoLinkedOLEObject Then 
 With .LinkFormat 
 .SourceFullName = "c:\my documents\myExcel.xls" 
 .AutoUpdate = True 
 End With 
 End If 
End With

SourceName

Devuelve el nombre del archivo de origen para el objeto OLE vinculado especificado, imagen o campo.

Esta propiedad no devuelve la ruta de acceso del archivo de origen.


For Each s In ActiveDocument.Shapes 
 If s.Type = msoLinkedOLEObject Then 
 Msgbox s.LinkFormat.SourcePath & "\" _ 
 & s.LinkFormat.SourceName 
 End If 
Next s

SourcePath

Devuelve la ruta de acceso del archivo de origen para el objeto OLE vinculado especificado, imagen o campo.

La ruta de acceso no incluye un carácter final (por ejemplo, "C:\MSOffice").


For Each s In ActiveDocument.Shapes 
 If s.Type = msoLinkedOLEObject Then 
 Msgbox s.LinkFormat.SourcePath & "\" _ 
 & s.LinkFormat.SourceName 
 End If 
Next s

Type

Devuelve el tipo de vínculo. Aquí puede ver valores posibles para WdLinkType.


Dim wltType As WdLinkType
wltType = ActiveDocument.Fields(1).LinkFormat.Type

Update

Actualiza el formato de vínculo especificado.


ActiveDocument.Fields(1).LinkFormat.Update