Está en la página 1de 27

▪ Definición de VBA. Comparando VB y VBA.

▪ Macros y su relación con VBA


▪ La ficha Desarrollador de Excel
▪ Grabar una aplicación VBA
▪ Descripción del Editor VBA (VBE)

Sesión 6:
Introducción a Macros y VBA
Introducción.
Excel es una herramienta muy potente, nos ofrece una
gran cantidad de funciones preestablecidas de todo tipo
(Estadísticas, Financieras, de Ingeniería, etc.) pero algo
que realmente impacta es la facilidad para crear
funciones a nuestra medida, imagínese que ninguna de
todas las funciones preestablecidas de Excel le da lo que
busca, entonces debemos crearla, es el objetivo del
presente curso.
Definición de VBA.
Las iniciales VBA proviene del inglés Visual Basic for
Applications, el cual podemos entenderlo como «aplicaciones
para Visual Basic», es un entorno de desarrollo que se
encuentra dentro de cualquier aplicación de Office.
Asimismo, VBA funciona mediante la ejecución de macros,
estos permiten realizar en un objeto de Excel un conjunto de
instrucciones llamado código, es decir, podrían estar sobre una
hoja, libro, celda, etc.
Comparando VB y VBA

Basic es un lenguaje de programación de alto nivel, es decir, puede ser desarrollado


de manera sencilla y entendible, además cuenta con un entorno de desarrollo
integrado el cual permite crear un ambiente de programación amigable y sencillo. La
principal característica de Visual Basic es que permite crear aplicaciones
independientes de su entorno; quiere decir, una aplicación desarrollada en Visual
Basic puede ser ejecutada como un archivo independiente o como un archivo
ejecutable.
En cambio, Visual Basic Aplicaciones (VBA) es considerado como un lenguaje de
programación residente de Microsoft Office, es decir, que para ejecutar una aplicación
VBA se necesita un programa de acogida como Word, Excel, PowerPoint o Access.
Nosotros abarcaremos la acogida en Excel por ser uno de las aplicaciones más usadas
por los profesionales.
Macros y su relación con VBA

Muchas de las tareas que realiza en Excel, como introducir los datos de ventas de
un día determinado o agregar una fórmula a una hoja de cálculo (hoja de cálculo:
documento principal que se utiliza en Excel para almacenar y trabajar con datos.
Por ejemplo, puede que desee resaltar las celdas más importantes de una hoja de
cálculo cada vez que presente un informe a sus compañeros.
En vez de tener que ejecutar una larga serie de pasos manualmente, puede crear
una macro, o serie de acciones grabadas, que realice estos pasos
automáticamente.
Si conoce el lenguaje de programación Microsoft Visual Basic® para
Aplicaciones (VBA), puede escribir una macro personalizada nueva. En cualquier
caso, una vez creada la macro podrá ejecutarla, editarla o eliminarla según le
convenga.
Macros y su relación con VBA (continuación)
Macros: 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 programas 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.
La ficha Programador/Desarrollador de Excel
Pasos para activar la ficha Desarrollador:
1. Clic derecho sobre cualquier pestaña en Excel.
2. Clic en Personalizar la cinta de opciones…
3. Se visualizará la ventana:
Opciones de Excel.
4. Activar la pestaña Programador
Grabar una aplicación VBA

Grabar una macro


Hay algunos puntos útiles que le interesa saber sobre las macros:
• Al grabar una macro para llevar a cabo una serie de tareas en un rango de Excel,
la macro solo se ejecutará en las celdas del rango. Así, si ha agregado otra fila al
rango, la macro no ejecutará el proceso en la fila nueva, sino solo en las celdas
del rango.
• Si ha planeado grabar un proceso largo de tareas, plantéese tener macros
relevantes más pequeñas en lugar de tener una macro larga.
• No es necesario que solo las tareas de Excel se puedan grabar en una macro. El
proceso de macros puede extenderse a otras Office y a cualquier otra aplicación
compatible con Visual Basic (VBA). Por ejemplo, puede grabar una macro en la
que primero actualice una tabla en Excel y, después, abrir Outlook para enviarla
por correo electrónico a una dirección de correo electrónico.
Grabar una aplicación VBA
Antes de entrar completamente al desarrollo de aplicaciones con
VBA debemos tener en cuenta cómo se guarda un documento de
Excel el cual contiene VBA, para lo cual debemos considerar que
existen diferentes formas de realizar esta actividad, para nuestro
caso seleccionaremos solo dos opciones:
Opción → Desde Excel
Una vez diseñada la aplicación en Excel con VBA:
▪ Presione <F12>
▪ Asigne un nombre al archivo
▪ Seleccione el tipo de archivo Libro habilitado para macros
(*.xlsm)
Grabar una aplicación VBA 1 Verificar la ubicación del
archivo.

Digite el nombre del


3 2 archivo.
Seleccione el tipo
xlsm

4
Clic en Guardar.
Utilizar la grabadora de macros

La grabadora de macros es algo así como


poner a funcionar un programa de
grabación de sonido o una videocámara
y empezar a hablar o cantar. Luego podrá
reproducir cada vez que desee lo que
grabó.

La grabadora de macros guarda todos los


clics del mouse (ratón) y las pulsaciones
de teclas mientras trabaja, y permite
reproducirlas más adelante.
Cómo ejecutar una macro
Existen varias formas de ejecutar una macro:

1 Desde el menú

Asignar una combinación de teclas


2 para ejecutar la macro

3 Desde un objeto en la hoja de cálculo

Desde la barra de herramientas de


4 acceso rápido
Descripción del Editor VBA (VBE)

Editor VBA (VBE). Es la herramienta de VBA que nos permite


analizar, instrucción por instrucción el código de programación de las
macros y realizar las modificaciones necesarias.

Hay varias formas de acceder al Editor VBA:

1.
1 Botón Visual Basic dentro de la ficha del PROGRAMADOR
2 Botón Modificar dentro del cuadro
de diálogo MACRO

3 ALT + F11
Descripción del Editor VBA (VBE) 1

4
Descripción del Editor VBA (VBE)

Nota: Según el tema de Windows,


puede variar el color del entorno.
Descripción del Editor VBA (VBE)
1. Barra de Menú: muestra las opciones clásicas como Archivo, Edición, Ver,
etc, así como las propias de Visual Basic como Depuración, Ejecutar y
Complementos.
2. Barra de Herramientas: muestra opciones básicas para el uso habitual,
como Guardar, Cortar, Copiar, Pegar así como las propias del editor como
Ejecutar, Interrumpir y Restablecer Macro, Modo de Diseño, Explorador
de Proyectos, Ventana de Propiedades, Examinador de Objetos y Cuadro
de Herramientas.
3. Explorador de Proyectos: permite observar los Libros de Excel Activos
en el sistema, así como el número de Hojas en cada uno de estos y los
Módulos de programación activos.
4. Ventana de Propiedades: muestra las características del objeto activo.
5. Ventana de Trabajo: es el área en donde se codifica la Macros, ya sea
escribiendo manualmente en ella el código de programación o usando
del Grabador de Macros desde la hoja de Excel activa.
Las ventanas
Las activamos con las opciones incluidas en el menú VER

 VENTANA DE CÓDIGO
En esta se trabaja directamente con el código de programación
 VENTANA INMEDIATO
Podemos ejecutar código VBA, si escribimos directamente la
instrucción y presionamos Enter. Nos permite probar el
funcionamiento de instrucciones, sin tener que ejecutar una macro
en su totalidad.
 VENTANA INSPECCIÓN
Podemos seguir el funcionamiento de ciertas instrucciones de
nuestros procedimientos si les agregamos una “inspección”. Estas
expresiones de inspección se actualizan en forma automática cuando
se entra en modo de “interrupción” (suspensión temporal de la
ejecución de la macro).
Las ventanas (continuación)

• VENTANA LOCALES
Permiten ver los valores que poseen las “variables”
definidas dentro de una macro durante su ejecución,
ejecutando en modo paso a paso (F8).

• VENTANA EXPLORADOR DE PROYECTOS


Desde aquí podremos navegar por las estructura VBA
de los archivos excel que estén abiertos.

• VENTANA PROPIEDADES
Visualiza las diferentes propiedades de cada uno de los
objetos de VBA que seleccionemos.
Modelo de objetos de Excel.
OBJETOS, PROPIEDADES Y MÉTODOS
Los objetos en Excel (VBA) son cosas. Una
celda es un objeto, una hoja es un objeto, un
libro es un objeto y de esta manera existen
muchos más objetos en Excel. A esto lo
conocemos como el modelo de objetos de
Excel.

Cada uno de los objetos de Excel tiene


propiedades y métodos. Las propiedades son
las características del objeto y los métodos son
las acciones que el objeto puede hacer.

Lectura sugerida:
https://docs.microsoft.com/es-es/office/vba/api/overview/excel/object-model
Modelo de objetos de Excel.
OBJETOS, PROPIEDADES Y MÉTODOS
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.
Modelo de objetos de Excel.
OBJETOS, PROPIEDADES Y MÉTODOS
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


Ejercicios propuestos.

Ejercicio 1:
Actualización automática de la tabla dinámica con macros.

Private Sub Worksheet_Activate()


ActiveSheet.PivotTables("reportes").PivotCache.Refresh
End Sub
Ejercicios propuestos.
D
Ejercicio 2:
A.- Crea un nuevo archivo.
C
B.- Ingrese al Editor de VBA.
C.- Inserte un nuevo Módulo (Módulo 1).
D.- Inserte un Procedimiento, llamado Saludo.
E.- En la ventana Código, escriba las siguientes instrucciones:

Application.Workbooks(1).Worksheets(1).Range("A1").Value = "Hola"

F.- En la Hoja1, inserte una Forma Rectangular con el texto “Saludar”.


G.- Asigne la macro creada (Procedimiento Saludo).
F
Ejercicios propuestos.
Ejercicio 2 (continuación):

También podría gustarte