Gran Tutorial de Macros

¿Que es una macro ?

Una macro son un conjunto de instrucciones que sirven para automatizar procesos. Refiriéndonos a excel, supongamos que realizamos frecuentemente la acción de seleccionar un rango para aplicarle negrita, cambio de fuente y centrado. En lugar de hacer estas acciones manualmente, se puede elaborar una macro e invocarla para que ejecute los tres procesos automáticamente.

Objetos, propiedades y métodos

A la hora de trabajar con macros en excel, deben tenerse claros ciertos conceptos de lo que se llama programación orientada a objetos (OOP). No nos extenderemos demasiado sobre la OOP, pero si definiremos a continuación los conceptos de Objeto, Propiedades y Métodos.

Objeto

Cuando en el mundo real nos referimos a objeto significa que hablamos de algo más o menos abstracto que puede ser cualquier cosa. Si decidimos concretar un poco más podemos referirnos a objetos coche, objetos silla, objetos casa, etc. En OOP, la generalización (o definición) de un objeto se llama Clase, así la clase coche seria como la representante de todos los coches del mundo, mientras que un objeto coche seria un coche en concreto. De momento, no definiremos ni estudiaremos las clases sino que nos concentraremos en los objetos, tenga en cuenta pero que cualquier objeto está definido por una clase. Cuando decimos que la clase coche representa a todos los coches del mundo significa que define como es un coche, cualquier coche. Dicho de otra forma y para aproximarnos a la definición informática, la clase coche define algo que tiene cuatro ruedas, un motor, un chasis,… entonces, cualquier objeto real de cuatro ruedas, un motor, un chasis,… es un objeto de la clase coche.

Propiedades

Cualquier objeto tiene características o propiedades como por ejemplo el color, la forma, peso, medidas, etc. Estas propiedades se definen en la clase y luego se particularizan en cada objeto. Así, en la clase coche se podrían definir las propiedades Color, Ancho y Largo , luego al definir un objeto concreto como coche ya se particularizarían estas propiedades a, por ejemplo, Color = Rojo, Ancho = 2 metros y Largo = 3,5 metros.

Métodos

La mayoría de objetos tienen comportamientos o realizan acciones, por ejemplo, una acción evidente de un objeto coche es el de moverse o lo que es lo mismo, trasladarse de un punto inicial a un punto final. Cualquier proceso que implica una acción o pauta de comportamiento por parte de un objeto se define en su clase para que luego pueda manifestarse en cualquiera de sus objetos. Así, en la clase coche se definirían en el método mover todos los procesos necesarios para llevarlo a cabo (los procesos para desplazar de un punto inicial a un punto final), luego cada objeto de la clase coche simplemente tendría que invocar este método para trasladarse de un punto inicial a un punto final, cualesquiera que fueran esos puntos.

Repasemos a continuación todos estos conceptos pero ahora desde el punto de vista de algunos de los objetos que nos encontraremos en Excel como WorkSheet (Objeto hoja de cálculo) o Range (Objeto casilla o rango de casillas).

Un objeto Range está definido por una clase donde se definen sus propiedades, recordemos que una propiedad es una característica, modificable o no, de un objeto. Entre las propiedades de un objeto Range están Value, que contiene el valor de la casilla, Column y Row que contienen respectivamente la fila y la columna de la casilla, Font que contiene la fuente de los caracteres que muestra la casilla, etc.

Range, como objeto, también tiene métodos, recordemos que los métodos sirven llevar a cabo una acción sobre un objeto. Por ejemplo el método Activate, hace activa una celda determinada, Clear, borra el contenido de una celda o rango de celdas, Copy, copia el contenido de la celda o rango de celdas en el portapapeles.

Comentarios

comentarios

¿DESEAS RECIBIR MÁS ARCHIVOS DE FORMA GRATUITA?
SUSCRÍBETE AL BOLETÍN AHORA »»

2 comentario(s) en “Gran Tutorial de Macros

Agregue un comentario a NORMAND EUGENIO LLONTOP HUAPAYA Cancelar respuesta

Su dirección de correo no se hará público. Los campos requeridos están marcados *

Current day month [email protected] *