Excel es un programa orientado a objetos (si quieres saber qué es esto puedes leer más sobre Programación orientada a objetos) y permite el acceso al objeto principal Application, el cual a su vez contiene otros objetos como el Workbooks y Sheets para interactuar con los libros y hojas de Excel respectivamente.
Cada objeto tiene métodos y atributos, los métodos nos permite realizar algunas tareas como agregar una hoja y los atributos nos permite ver alguna propiedad como la ruta del archivo abierto, etc.
Descripción de los objetos principales.
Application: Es el objeto principal y contiene a todos los demás objetos, y nos da información útil sobre la computadora y el usuario “Application.UserName” que nos retorna el usuario actual de Windows.
Workbooks: Contiene la información de todos los libros abiertos y ademas permite manipularlos (agregar, guardar copias, cerrarlos, etc.)
Sheets: Contiene todas las hojas dentro de cada libro abierto, igual que el objeto Workbook, permite interactuar con las hojas y ver sus atributos.
Range: Es un objeto que permite interactuar con las celdas, por ejemplo la sentencia
Range("A1").Value = "Hola"
Escribe el valor “Hola” en la celda A1.
Explorar los métodos y atributos de un objeto.
Si dentro del entorno de desarrollo de Excel para VBA (Alt+F11) digitamos el nombre de uno de estos objetos seguido de un punto (.) se mostrará una lista con los métodos y atributos de el objeto, como se ve en la siguiente imagen.
Otra forma de ver en detalle cada objeto es mediante el Examinador de objetos, siempre desde el entorno de desarrollo, presionamos la tecla F2 y luego hacemos clic sobre un objeto, luego podemos ver el detalle y seleccionar un método o atributo, y luego hacer clic sobre el icono de ayuda para obtener más información.
Ejemplos sobre el uso de estos objetos
Para probarlos ingresa al entorno de desarrollo (Alt+F11) y crea un nuevo módulo e ingresa el código que se presenta.
Rutina para agregar un libro
Sub AddAWorkbook() Workbooks.Add End Sub
Rutina para mostrar un mensaje en pantalla con la cantidad de libros abiertos
Sub CountBooks() MsgBox Workbooks.Count End Sub
Rutina para borrar el contenido de la celda A1
Sub ClearRange() Range("A1").ClearContents End Sub