Descripción de objetos, propiedades y métodos
Los objetos son la base de Microsoft Visual Basic; casi todo lo que se hace en Visual Basic implica la modificación de objetos. Todos los elementos de Microsoft Word (como documentos, tablas, párrafos, marcadores y campos) se pueden representar con objetos de Visual Basic.
¿Qué son objetos y colecciones?
Un objeto representa un elemento de Word, como un documento, un párrafo, un marcador o un carácter. Una colección es un objeto que contiene otros objetos, normalmente del mismo tipo; por ejemplo, todos los objetos de marcador de un documento están incluidos en una única colección. Mediante el uso de propiedades y métodos, puede modificarse un único objeto o toda una colección de objetos.
¿Qué es una propiedad?
Una propiedad es un atributo de un objeto o un aspecto de su comportamiento. Por ejemplo, en las propiedades de un documento se incluyen el nombre, el contenido y el estado con que se guarda, así como si está activado el control de cambios. Para cambiar las características de un objeto, se cambian los valores de sus propiedades.
Para establecer el valor de una propiedad, detrás de la referencia a un objeto escriba un punto, el nombre de la propiedad, un signo igual y el nuevo valor de la propiedad. En el siguiente ejemplo, se activa el control de cambios en el documento "Sales.doc".
Sub TrackChanges()
Documents("Sales.doc").TrackRevisions = True
End Sub
En este ejemplo, Documents
hace referencia a la colección de documentos abiertos y el nombre "Sales.doc" identifica un único documento de la colección. La propiedad TrackRevisions se establece para ese único documento.
Algunas propiedades no pueden establecerse. El tema de Ayuda de una propiedad indica si ésta puede establecerse (es de lectura y escritura) o sólo leerse (es de sólo lectura).
Puede obtenerse información acerca de un objeto devolviendo el valor de una de sus propiedades. En el siguiente ejemplo, se devuelve el nombre del documento activo.
Sub GetDocumentName()
Dim strDocName As String
strDocName = ActiveDocument.Name
MsgBox strDocName
End Sub
En este ejemplo, ActiveDocument
hace referencia al documento de la ventana activa de Word. El nombre de ese documento se asigna a la variable que hace referencia al documento de la ventana activa de Word. El nombre de ese documento se asigna a la variable strDocName
.
Observaciones
El tema de Ayuda de una propiedad indica si ésta puede establecerse (es de lectura y escritura), solo leerse (es de solo lectura) o solo escribirse (es de solo escritura). Asimismo, el Explorador de objetos del Editor de Visual Basic muestra el estado de lectura/escritura en la parte inferior de la ventana cuando se selecciona la propiedad.
¿Qué es un método?
Un método es una acción que puede realizar un objeto. Por ejemplo, dado que los documentos pueden imprimirse, el objeto Document tiene un método PrintOut. Con frecuencia, los métodos tienen argumentos que califican cómo se realiza la acción. En el siguiente ejemplo, se imprimen las tres primeras páginas del documento activo.
Sub PrintThreePages()
ActiveDocument.PrintOut Range:=wdPrintRangeOfPages, Pages:="1-3"
End Sub
En la mayoría de los casos, los métodos son acciones y las propiedades cualidades. Si se utiliza un método, la acción recae sobre el objeto, mientras que si se usa una propiedad, se devuelve información acerca del objeto o se cambia una de sus cualidades.
Devolución de un objeto
La mayoría de los objetos se devuelven al devolver un único objeto de la colección. Por ejemplo, la colección Documents contiene los documentos abiertos de Word. La propiedad Documents del objeto Application, el objeto del nivel más alto de la jerarquía de objetos de Word, se usa para devolver la colección Documents.
Después de obtener acceso a la colección, puede devolverse un solo objeto utilizando un valor de índice entre paréntesis, igual que cuando se trabaja con matrices. El valor de índice es normalmente un número o un nombre. Para obtener más información, vea Devolver un objeto de una colección.
En el siguiente ejemplo, se usa la propiedad Documents para obtener acceso a la colección Documents. El número de índice se usa para devolver el primer documento de la colección Documents. Después, se aplica el método Close al objeto Document para cerrar el primer documento de la colección Documents.
Sub CloseDocument()
Documents(1).Close
End Sub
En el siguiente ejemplo, se utiliza un nombre, especificado como cadena, para identificar un objeto Document dentro de la colección Documents.
Sub CloseSalesDoc()
Documents("Sales.doc").Close
End Sub
A menudo, los objetos de la colección tienen métodos y propiedades que puede usar para modificar el conjunto completo de objetos. El objeto Documents tiene un método Save que guarda todos los documentos de la colección. El ejemplo siguiente guarda los documentos abiertos aplicando el método guardar.
Sub SaveAllOpenDocuments()
Documents.Save
End Sub
El objeto Document también dispone de un método Save para guardar un solo documento. En el siguiente ejemplo, se guarda el documento Sales.doc.
Sub SaveSalesDoc()
Documents("Sales.doc").Save
End Sub
Para devolver un objeto que se encuentra en un nivel inferior de la jerarquía de objetos de Word, deberá recorrerla utilizando propiedades y métodos para devolver objetos.
Para ver cómo se hace, abra el Editor de Visual Basic y haga clic en el comando Explorador de objetos del menú Ver. Haga clic en Aplicación de la lista Clases que está a la izquierda. A continuación, haga clic en ActiveDocument de la lista de elementos que está a la derecha. El texto de la parte inferior del Explorador de objetos indica que ActiveDocument es una propiedad de solo lectura que devuelve un objeto Document. Haga clic en Document en la parte inferior del Explorador de objetos; se seleccionará el objeto Document automáticamente en la lista Clases y la lista Miembros mostrará los elementos del objeto Document. Desplácese a través de la lista de elementos hasta que encuentre Close. Haga clic en el método Close. El texto de la parte inferior de la ventana del Explorador de objetos muestra la sintaxis del método. Para obtener más información sobre el método, presione la tecla F1 o haga clic en el botón Ayuda para ver el tema de ayuda del método Close.
Una vez obtenida esta información, podrá escribir la siguiente instrucción para cerrar el documento activo.
Sub CloseDocSaveChanges()
ActiveDocument.Close SaveChanges:=wdSaveChanges
End Sub
En el siguiente ejemplo, se maximiza la ventana del documento activo.
Sub MaximizeDocumentWindow()
ActiveDocument.ActiveWindow.WindowState = wdWindowStateMaximize
End Sub
La propiedad ActiveWindow devuelve un objeto Window que representa la ventana activa. La propiedad WindowState se establece con la constante de maximización (wdWindowStateMaximize).
En el siguiente ejemplo, se crea un documento y se muestra el cuadro de diálogo Guardar como de manera que pueda asignarse un nombre al documento.
Sub CreateSaveNewDocument()
Documents.Add.Save
End Sub
La propiedad Documents devuelve la colección Documents. El método Add crea un nuevo documento y devuelve un objeto Document. Después, se aplica el método Save al objeto Document.
Como puede observarse, los métodos o propiedades se usan para recorrer la jerarquía hasta llegar al objeto. Es decir, un objeto se devuelve aplicando un método o una propiedad a un objeto superior en la jerarquía. Después de devolver el objeto que quiera, puede aplicar los métodos y controlar las propiedades del mismo.
Obtener ayuda acerca de objetos, métodos y propiedades
Hasta que se familiarice con el modelo de objetos de Word, hay herramientas que le pueden servir de ayuda para recorrer la jerarquía.
Microsoft IntelliSense. Al escribir un punto (.) después de un objeto en el Editor de Visual Basic, se muestra una lista de propiedades y métodos disponibles. Por ejemplo, si escribe
Application.
, se muestra una lista desplegable de métodos y propiedades del objeto Application .Help También puede usar Ayuda para averiguar qué propiedades y métodos pueden usarse con un objeto. Cada tema de objeto en Ayuda incluye un salto Vea también que muestra una lista de propiedades y métodos del objeto. Presione F1 mientras está en el Examinador de objetos o mientras está en un módulo para saltar al tema de Ayuda adecuado.
Examinador de objetos. El Examinador de objetos del Editor de Visual Basic muestra los miembros (propiedades y métodos) de los 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.