Compartir a través de


Objeto Variable (Word)

Representa una variable guardada como parte de un documento. Las variables de documento se usan para conservar los valores de las macros entre sesiones de macros. El objeto Variable es miembro de la colección Variables . La colección Variables incluye todas las variables de un documento o de una plantilla.

Observaciones

Utilice Variables (Index), donde Index es el nombre de la variable de documento o número de índice, para devolver un solo objeto Variable. El ejemplo siguiente muestra el valor de la variable de documento Temp del documento activo.

MsgBox ActiveDocument.Variables("Temp").Value

El número de índice representa la posición de la variable de documento en la colección Variables. La última variable agregada a la colección Variables es el número de índice 1; la variable de segundo a último agregado a la colección es el número de índice 2, etc. El ejemplo siguiente muestra el nombre de la primera variable de documento en el documento activo.

MsgBox ActiveDocument.Variables(1).Name

Use el método Add de la colección Variables para agregar una variable a un documento. En el siguiente ejemplo se agrega una variable de documento denominada "Temp" con un valor de 12 al documento activo.

ActiveDocument.Variables.Add Name:="Temp", Value:="12"

Si intenta agregar una variable de documento con un nombre que ya existe en la colección Variables, se produce un error. Para evitar este error, puede enumerar la colección antes de agregar nuevas variables. Si la variable de documento Blue ya existe en el documento activo, en el siguiente ejemplo se establece su valor en 6. Sin embargo, si aún no existe, se agrega al documento y se establece su valor en 6.

For Each aVar In ActiveDocument.Variables 
 If aVar.Name = "Blue" Then num = aVar.Index 
Next aVar 
If num = 0 Then 
 ActiveDocument.Variables.Add Name:="Blue", Value:=6 
Else 
 ActiveDocument.Variables(num).Value = 6 
End If

El usuario no ve las variables del documento si no se inserta un campo DOCVARIABLE con el nombre de la variable correspondiente. En el siguiente ejemplo, se agrega una variable de documento denominada "Temp" al documento activo y, a continuación, se inserta un campo DOCVARIABLE para que se muestre el valor de la variable.

With ActiveDocument 
 .Variables.Add Name:="Temp", Value:="12" 
 .Fields.Add Range:=Selection.Range, _ 
 Type:=wdFieldDocVariable, Text:="Temp" 
End With 
ActiveDocument.ActiveWindow.View.ShowFieldCodes = False

Para agregar una variable de documento a una plantilla, abra la plantilla como documento mediante el método OpenAsDocument . En el siguiente ejemplo se almacena el nombre de usuario (del cuadro de diálogo Opciones ) en la plantilla adjunta al documento activo.

ScreenUpdating = False 
With ActiveDocument.AttachedTemplate.OpenAsDocument 
 .Variables.Add Name:="UserName", Value:=Application.UserName 
 .Close SaveChanges:=wdSaveChanges 
End With

Vea también

Referencia de modelos de objetos de Word

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.