You are on page 1of 18

Universidad Andina Nstor Cceres Velsquez

INFORMTICA PARA
INGENIERA CIVIL
TERCER SEMESTRE
2015 - I

CAP INGENIERIA CIVIL

Ing JESUS MAMANI VELASQUEZ

Universidad Andina Nstor Cceres Velsquez

INFORMTICA PARA INGENIERA CIVIL

UNIDAD DIDACTICA III


3.2. MS EXCEL PROGRAMACIN CON VBA
CAP INGENIERIA CIVIL

Ing JESUS MAMANI VELASQUEZ

3.2.4 Programacin orientada a objetos


Visual Basic para Aplicaciones es un lenguaje de programacin
orientada a objetos.
Este concepto de programacin se basa en la existencia de un mundo
lleno de objetos. Excel, al igual que el resto de las aplicaciones de
Microsoft Office, ofrece un modelo de objetos que se puede
manipular con VBA para cambiar sus propiedades.
Por ejemplo:

Se pueden cambiar los atributos de la fuente (nombre, tamao, color)


o, mediante mtodos como seleccionar, copiar un conjunto de datos.

Objetos
Un objeto es algo tangible que se identifica por sus propiedades y
sus mtodos, por ejemplo una persona, un avin, una mesa, un
telfono.
Cada elemento en Excel es un objeto:
-

Un libro (Workbook)
Las hojas de clculo (Worksheet)
Los rangos (Range)
Los grficos (Charts)
Las tabla dinmica (PivotTable)
Etc.

Los objetos se agrupan en categoras o colecciones.


Por ejemplo: En el caso de Excel, la clase Workbook es la
representante de todos los libros de Excel, mientras que el objeto
Workbook ser un libro de trabajo en concreto.

Jerarqua de objetos
El modelo de objetos de Excel est compuesto por ms de 192 objetos
diferentes, algunos de ellos estn ocultos, y otros se usan muy poco o se
dejaron de utilizar.
Los objetos de Excel pueden contener otros objetos, y a su vez, estos
pueden contener otros objetos. Esto significa que existe un cierto orden
o jerarqua.

En este diagrama, se
aprecian las colecciones
de objetos ms relevantes
y su relacin jerrquica

Modelo de objetos de Excel


Application (aplicacin):
Es el primer objeto en la jerarqua. Representa a la aplicacin Excel.
Este objeto acta como contenedor de los dems objetos de Excel,
por ejemplo: el libro, las hojas de clculo, las celdas, los grficos y
muchos otros ms.

Por medio de este objeto, se puede acceder a las opciones de Excel


como la de elegir si el clculo es manual o automtico, entre otras.
Workbook (libro de trabajo):
Representa a un libro abierto dentro de la aplicacin Excel. Este
objeto se encuentra contenido en el objeto Application y mediante l
se puede, por ejemplo, abrir un libro de trabajo, guardarlo, protegerlo o
enviarlo a imprimir. El objeto Workbook es un miembro de la
coleccin Workbooks.

Modelo de objetos de Excel


Worksheet (las hojas de clculo):
Siguiendo el orden jerrquico, en tercer lugar tenemos el objeto
Worksheet, que representa las hojas del libro con el que se est
trabajando. Con este objeto se puede, por ejemplo, cambiar el nombre
de las hojas, insertar o eliminar hojas, protegerlas, etc.

Range (celda):
Este objeto es el que representa todas las celdas de la hoja, as como
todas sus columnas y filas, los rangos, la seleccin de las celdas. Con
este objeto se puede manipular todo lo relacionado con una celda o
grupo de celdas, introducir valores, realizar operaciones, insertar
celdas, entre otras cosas.

Referencia a objetos
Se hace referencia a los objetos de Excel segn la posicin jerrquica
que stos ocupan en el modelo de objetos y se emplea el punto (.) para
separar el objeto contenedor de uno o varios objetos. Es decir, el punto
servir para navegar por la jerarqua de objetos.
Ejemplo:
Para hacer referencia a un libro de Excel llamado Planilla.xlsx, se
escribe la siguiente sentencia:
Application.Workbooks(planilla.xlsm)
Si se quisiera hacer referencia a la celda A1 de la hoja Datos del libro
Planilla.xlsx, se debe indicar toda la ruta de la jerarqua del modelo de
objetos:
Application.Workbooks(planilla.xlsm).Worksheets(datos).Range(A1).Select

Para simplificar este procedimiento, se puede omitir la referencia


Application en la mayora de los casos. Esto es posible debido a que es
el primer objeto de la estructura jerrquica y es el que contiene al resto de
los objetos. Por lo tanto, tambin se puede hacer referencia a la celda A1,
de una manera ms sencilla, por medio del siguiente cdigo:
Workbooks(planilla.xlsm).Worksheets(datos).Range(A1).Select
Adems, se puede omitir la referencia especfica a un objeto si ese objeto
se encuentra activo. Es decir, si solo hay un libro abierto, se puede omitir
la referencia Workbooks. Del ejemplo anterior, si el nico libro abierto es
Planilla.xlsx, se puede hacer referencia a la celda A1 por medio del
siguiente cdigo:
Worksheets(datos).Range(A1).Select
Ms simple an, si la hoja activa es Datos, tambin es posible omitir el
objeto Worksheets:
Range(A1).Select

Colecciones
Un conjunto de objetos del mismo tipo forma una coleccin. La
coleccin de objetos permite trabajar con un grupo de objetos en lugar
de hacerlo simplemente con un solo objeto. Por lo general, el nombre del
objeto de la coleccin es el plural del nombre de los objetos contenidos
dentro de la coleccin.
Ejemplo:
La coleccin denominada Worksheets es una coleccin de los objetos
Worksheet que estn contenidos dentro de un objeto Workbook. Es
decir, que la coleccin Worksheets es una coleccin dinmica, ya que ir
variando a medida que se va agregando o eliminando hojas de clculo al
libro.

Colecciones
Se puede hacer referencia a un objeto especfico de una coleccin si se
coloca el nmero del ndice del objeto o el nombre del objeto de la
coleccin, usando alguna de las siguientes sintaxis:
Coleccion!Objeto,
Coleccion![Objeto],
Coleccion(Objeto),
Coleccion(var),
Coleccion(index),

Donde:
Coleccin, es el nombre de la coleccin.
Objeto, es el nombre del objeto.
Var, es una variable del tipo String que contiene el nombre del
Objeto.
Index, representa el nmero del ndice del objeto de la coleccin.

Ejemplo:
Si se quiere hacer referencia a la primera hoja que se llama datos del
libro planilla.xlsm, se puede escribir algunas de las siguientes
sentencias:
Workbooks(planilla.xlsm).Worksheets(datos)
O bien,
Workbooks(1).Worksheets(1)
Si el libro activo es planilla.xlsm, la referencia anterior se puede
simplificar as:
Worksheets!Datos
O bien,
Worksheets(1)

Propiedades, mtodos y eventos


Los objetos tienen propiedades, mtodos y eventos que definen
las caractersticas y propiedades del objeto.
Las propiedades son un conjunto de caractersticas propias del
objeto que hacen que se distinga de otro objeto, tales como su
nombre, tamao, color, localizacin en pantalla.
Por ejemplo, el objeto Range tiene las propiedades Name
(nombre), Value (valor) y Column (columna), entre muchas otras.

Para hacer referencia a las propiedades de cualquier objeto, se


emplea la siguiente sintaxis:

Objeto.Propiedad = valor
Donde:
Objeto, es el nombre del objeto
Propiedad, es el nombre de la propiedad que cambiamos
Valor, se refiere al valor que se le asigna a la propiedad.
Por ejemplo, para asignarle el valor 27 a la celda A2, escribimos la
siguiente sintaxis:
Range(A2).Value = 27

Otra opcin sera cambiar el tamao de la fuente de la celda A2,


empleando la siguiente sintaxis:
Range(A2).Font.Size = 25

Un mtodo es un conjunto de comportamientos o acciones que puede


realizarse en el objeto. Es decir, que son las rdenes que se le da al
objeto para que haga algo sobre s mismo.
Por ejemplo, el objeto Range (celda), tiene los mtodos Activate
(activar) y Clear (borrar), entre otros.
Para implementar los mtodos de un objeto, se utiliza la siguiente
sintaxis:
Objeto.Mtodo
Donde:
Objeto, es el nombre del objeto
Mtodo, es el mtodo que se quiere ejecutar

Por ejemplo, para activar la celda A2 de la hoja activa, se escribe la


siguiente sentencia:

Range(A2).Select
Algunos mtodos tienen argumentos que a veces son necesarios y
otras, opcionales. Los argumentos nos permiten especificar en forma
ms amplia las opciones para la accin que vamos a ejecutar.
Por ejemplo, si se quiere guardar el libro activo con el nombre
Empleado.
xlsm, se escribe la siguiente sentencia:
ThisWorkbook.SaveAs Filename:=Empleados.xlsm

Adems de las propiedades y los mtodos, cada objeto tiene


sus eventos.
Un evento es la accin que puede ser reconocida por un objeto. Por
medio de los eventos, es posible controlar el momento exacto en el
que se desea ejecutar un conjunto de instrucciones (procedimientos).
Ejemplos de eventos son abrir un libro, imprimir, cambiar el
contenido de una celda, hacer clic.
Por ejemplo, el evento ms tpico de un botn es el Click que se
produce cuando se lo presiona.

Otro ejemplo de un evento frecuente para una hoja de clculo es


Change, que se produce cada vez que se cambia de celda.

Si se quiere que cada vez que se cierre el libro de trabajo se muestre


un mensaje de despedida del sistema, se tendra que escribir, en el
evento BeforeClose del objeto Workbook, el cdigo siguiente:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Mensaje As String
Mensaje = Muchas gracias por usar el Sistema de Facturacin
MsgBox Mensaje, vbInformation, Hasta Pronto
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean) es un
procedimiento que se ejecuta cada vez que se cierra el libro de
trabajo, y la accin, o evento, es dar el mensaje.

You might also like