ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

MACROS EN MS EXCEL

h0lac0m029 de Mayo de 2013

27.946 Palabras (112 Páginas)550 Visitas

Página 1 de 112

¿Que es una macro?

Una macro son un conjunto de instrucciones de código escritos en un lenguaje de programación denominado VBA (Visual Basic para Aplicaciones) y que sirven para automatizar procesos y realizar una determinada tarea. La macros permiten expandir las posibilidades de un programa. 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. Los progtamas que conforman “Ms Office” ya traen incorporado el editor de VBA, que es donde programaremos y escribiremos las instrucciones y el código necesario para la ejecución de estos procesos automatizados.

¿En se aplican las macros?

Inicialmente se puede decir que las macros se aplican en las siguientes tareas;

• Automatización de procesos. Cuando se ejecutan tareas repetitivas con mucha frecuencia resulta tedioso su realización, las macros pueden reproducir dichas tareas un número infinito de veces, lo que significa un ahorro significativo de tiempo e incremento de la productividad.

• Creación de nuevas funciones (UDF’s User Defined Functions). Uno de los principales fundamentos del Excel es el cálculo, para lo cual usamos la funciones incorporadas con este. Las funciones definidas por el usuario (UDF) son funciones personalizadas que amplían las capacidades de cálculo, son funciones a medida que hacen exactamente lo que queremos. Estas funciones se compartaran de la misma manera que las funciones propias. Los programadores crean paquetes personalizados de cálculo para proporcionar,

o Funciones que no están integradas en Excel (nuevas funciones)

o Implementaciones personalizadas para funciones integradas.

• Construcción de nuevos menús y comandos. Los programas vienen con sus propios menus y comandos, el mayor o menor uso que un usuario le de a estos comandos dependerá de las necesidades de cada usuario en particular. La posibilidad de “personalizar” una determinada aplicación permitirá a cada usuario hacer sus tadeas cotidianas en forma mas comoda y eficiente, comandos que no so habituales para algunos usuarios pueden serlo para otros, las macros nos dan esa posibilidad.

• Creación de Complementos. Los complementos son programas que amplian la funcionalidad de un programa, ya sea con comandos o funciones que normalmente no poseen, podemos hacer nuestros propios complementos, conseguir algunos que se distribuyen en forma gratuita en internet y también existen algunos complementos de pago, los cuales tienen fines muy específicos y que son utiles (generalemente) para tareas mas especializadas.

• Creación de aplicaciones a la medida. El VBA es un “programa para hacer programas”, lo cual permite la creación de aplicaciones para cualquier uso, una aplicación no es solo una hoja de claculo con formulas y funciones, pueden incluir formularios para la introducción de datos, comandos para la creación de reportes, muchas de estas aplicaciones no requieren que el usuario tenga que acceder a los modulos de programación, vienen listos para que los usemos sin necesidad de tener que ser expertos en Excel.

Objetos, propiedades y métodos.

A la hora de trabajar con macros en Excel (en genral programación con VBA), 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 tres conceptos que es necesario entender, estos son 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 Excel prácticamente cualquier cosa es un objeto, un libro de Excel, cada hoja contenida en el libro, la misma etiqueta, una fila o una columna, una celda es un objeto, lo mismo que un menu, una tabla dinámica, un gráfico, para no citarlos todos y resumiendo, cada elemento identificable es un objeto. En la programación orientada a objetos (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. Para entender este concepto en Excel se pueden mencionar algunas propiedades ya conocidas de algunos de objetos claramente identificables, por ejemplo, el objeto celda tiene algunas propiedades, altura, color de fondo, alto de la misma, una propiedad puede ser el estar vacia, o contener un texto o un número, o una fórmula, otro ejemplo es una hoja de cálculo, una propiedad es tener líneas de división o por el contrario no tenerlas, o estar visible o estar oculta, tener o no etiqueta, se puede decir entonces que las características que diferencian un objeto de otro son las propiedades del objeto.

Métodos.

La mayoría de objetos tienen comportamientos o realizan acciones, o podemos realizar acciones sobre sus diferentes propiedades, 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. En Excel los métodos que podemos realizar sobre un objeto hoja pueden ser copiar, borrar mover, ocultar, eliminar líneas de división etc., puese que acciones podemos realizar sobre una celda o rango de celdas en particular, esas acciones son los métodos que afectaran y/o cambiaran las propiedades de los objetos.

La OOP se basa en lo anterior, lo mismo que las macros en Excel, y es aplicar métodos a las propiedades conocidas de los objetos, es bueno aclarar que además de los objetos propios del Excel, el programador también se puede crear nuevos objetos, usando el lenguaje de programación del Excel el VBA y definir que propiedades tendrá el objeto y aplica diferentes métodos sobre los mismos.

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), o Cell (Objeto celda), o Workbook (Objeto Libro).

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,...

En el cuadro siguiente puede entender mejor los conceptos mencionados, el objetivo es realizar o ejecutar métodos a las propiedades de los Objetos que están dentro del Excel, para lo cual emplearemos el VBA

OBJETOS PROPIEDADES METODOS

Workbook Libro Value Valor Copy Copiar

WorkSheet Hoja Color Color Cut Cortar

Row Fila Width Ancho Replace Reemplazar

Column Columna Height Altura Sort

Ordenar

Range Rango Format Formato Move Mover

Cell Celda Size Tamaño Delete Borrar

Conjuntos.

Un conjunto es una colección de objetos del mismo tipo, para los que conozcan algún lenguaje de programación es un array de objetos (arreglo de objetos). Por ejemplo, dentro de un libro de trabajo puede existir más de una hoja (WorkSheet), todas las hojas de un libro de trabajo forman un conjunto, el conjunto WorkSheets.

Cada elemento individual de un conjunto se referencia por un índice, de esta forma, la primera, segunda y tercera hoja de un libro de trabajo, se referenciarán

...

Descargar como (para miembros actualizados) txt (201 Kb)
Leer 111 páginas más »
Disponible sólo en Clubensayos.com