Para obtener una versión de este artículo para Microsoft Word 2000, consulte
209227.
Para obtener una versión de este artículo para Microsoft Word 97, consulte
181816.
Para obtener una versión de este artículo para Microsoft Word 7.0, consulte
106388.
Resumen
En este artículo se describe cómo almacenar y recuperar variables de documento mientras se utiliza Microsoft Word.
Más información
Microsoft proporciona ejemplos de programación con fines ilustrativos únicamente, sin ninguna garantía tanto expresa como implícita. Esto incluye, entre otras, las garantías implícitas de comerciabilidad e idoneidad para un fin determinado. En este artículo se da por supuesto que ya conoce el lenguaje de programación que se muestra, así como las herramientas empleadas para crear y depurar procedimientos. Los ingenieros de soporte técnico de Microsoft pueden explicarle la funcionalidad de un determinado procedimiento, pero no modificarán estos ejemplos para ofrecer mayor funcionalidad ni crearán procedimientos adaptados a sus necesidades específicas.
Para obtener más información acerca de cómo usar el código de ejemplo de este artículo, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
290140 OFFXP: Cómo ejecutar código de ejemplo incluido en artículos de Knowledge Base
Puede utilizar la colección Variables de Microsoft Visual Basic para Aplicaciones con el fin de establecer y recuperar el contenido de una variable de cadena en un documento o plantilla de Word.
También puede utilizar el campo DocVariable para recuperar el valor de una variable de documento después de haberse establecido para su presentación dentro de un documento de Word.
Cómo establecer y recuperar el valor de una variable de documento
En la macro de ejemplo siguiente se utiliza la propiedad Variables para almacenar y después recuperar el valor de una variable de cadena denominada "FullName" con el documento actual.
Sub GetSetDocVars()
Dim fName As String
fName = "Jeff Smith"
' Set contents of variable "fName" in a document using a document
' variable called "FullName".
ActiveDocument.Variables.Add Name:="FullName", Value:=fName
' Retrieve the contents of the document variable.
MsgBox ActiveDocument.Variables("FullName").Value
End Sub
NOTA
El mensaje de error siguiente aparece si el nombre de Variable está ya establecido en el documento:
Error en tiempo de ejecución "5903": Ya existe ese nombre de variable.
Debe eliminar el nombre o simplemente restablecer el argumento de valor.
Cómo eliminar una variable de documento
En la macro de ejemplo siguiente se utiliza la propiedad Variables para establecer y recuperar el valor de una variable de documento y, a continuación, eliminar la variable del documento activo.
Sub GetSetDeleteDocVars()
Dim fName As String
fName = "Jeff Smith"
' Set contents of variable "fName" in a document using a document
' variable called "FullName."
ActiveDocument.Variables.Add Name:="FullName", Value:=fName
' Retrieve the contents of the document variable.
MsgBox ActiveDocument.Variables("FullName").Value
' Delete the variable.
ActiveDocument.Variables("FullName").Delete
End Sub
Cómo recuperar el valor de una variable de documento utilizando el campo DocVariable
En la macro de ejemplo siguiente se utiliza la propiedad Variables para establecer una variable de documento. A continuación de la macro de ejemplo hay pasos para utilizar el campo DocVariable con el fin de recuperar el valor en el contenido del mismo documento.
Sub GetSetDocVars()
Dim fName As String
fName = "Jeff Smith"
' Set contents of variable "fName" in a document using a document
' variable called "FullName."
ActiveDocument.Variables.Add Name:="FullName", Value:=fName
End Sub
Para utilizar el campo DocVariable, siga estos pasos:
-
En el menú Insertar, haga clic en Campo.
Nota
En Microsoft Office Word 2007, haga clic en Elementos rápidos en el grupo Texto de la ficha
Insertar y, a continuación, haga clic en
Campo. -
En el cuadro Categorías, seleccione Automatización.
-
En la lista Nombres de campo, seleccione DocVariable.
-
En el cuadro Nombre nuevo, bajo Propiedades de campo, escriba el nombre de la variable de documento.
Nota
Si ve Propiedades de campo avanzadas en lugar de Propiedades de campo, haga clic en Ocultar códigos. -
Haga clic en Aceptar.
Si necesita conservar un valor entre las sesiones de una macro, puede almacenar los valores utilizando cualquiera de los métodos siguientes:
-
Utilice la propiedad PrivateProfileString para almacenar los valores en un archivo de configuración privado.
Para obtener más información acerca de la propiedad PrivateProfileString, en el Editor de Visual Basic, haga clic en Ayuda de Microsoft Visual Basic en el menú Ayuda, escriba PrivateProfileString, propiedad en el Ayudante de Office o en el Asistente para Ayuda y, a continuación, haga clic en Buscar para ver el tema. -
Utilice la propiedad Variables para almacenar los valores en un documento.
Para obtener más información acerca de la propiedad Variables, en el Editor de Visual Basic, haga clic en Ayuda de Microsoft Visual Basic en el menú Ayuda, escriba Variables, propiedad en el Ayudante de Office o en el Asistente para Ayuda y, a continuación, haga clic en Buscar para ver el tema. -
Utilice las instrucciones Input/Output de Visual Basic para Aplicaciones para escribir en un archivo de texto (por ejemplo, una instrucción Write o Print).
Para obtener más información acerca de cómo escribir datos en archivos, en el Editor de Visual Basic, haga clic en Ayuda de Microsoft Visual Basic en el menú Ayuda, escriba escribir datos en archivos en el Ayudante de Office o en el Asistente para Ayuda y, a continuación, haga clic en Buscar para ver el tema. -
Utilice el objeto AutoTextEntry para almacenar los valores en un elemento de Autotexto.
Para obtener más información acerca del objeto AutoTextEntry, en el Editor de Visual Basic, haga clic en Ayuda de Microsoft Visual Basic en el menú Ayuda, escriba AutoTextEntry, objeto en el Ayudante de Office o en el Asistente para Ayuda y, a continuación, haga clic en Buscar para ver el tema.