Documentos de Académico
Documentos de Profesional
Documentos de Cultura
GUIA MACRO 2020 Rev 1 PDF
GUIA MACRO 2020 Rev 1 PDF
AUTORES:
BOGOTÁ 2020
ÍNDICE
PARTICULARIDADES ...................................................................................................................... 18
BIBLIOGRAFÍA ................................................................................................................................. 19
CREAR UNA MACRO EN EXCEL
Para la elaboración de una macro existen varios métodos, de los cuales se explicará uno de los
más fáciles y rápidos a continuación:
Botón
Por medio de esta opción es posible insertar una imagen e incluso una figura, con el fin de
asignarle una macro como se puede ver en el ejemplo a continuación
Macro Grabada
Antes de grabar una macro es importante asegurarse de que la ficha “Programador” se encuentre
habilitada, en caso contrario, los pasos a seguir para activarla son:
1. Dar click en archivos.
2. Entrar a opciones
3. Seleccionar “Personalizar cinta de opciones”
4. En el lado derecho (Pestañas principales) seleccionar “Programador”
5. Cuando aparezca un chulo, dar click en aceptar
De esta manera se observará en la barra de tareas la opción de “Programador”, donde se
encuentran opciones como:
Visual Basic
Macros
Grabar macros
Insertar (desde aquí se pueden generar los botones).
3
Este método es uno de los más sencillo de utilizar, debido a que las operaciones que deseas
realizar se harán por medio de una grabación previa que haya realizado el usuario (se
recomienda más que todo para operaciones, darle color a las celdas que necesita, entre otras
operaciones sencillas). Grabar una macro hace que las acciones que se registren se traduzcan
posteriormente a instrucciones en VBA que se podrán modificar por medio de lenguaje de
programación.
Luego de dar click en aceptar en el cuadro de dialogo anterior “grabar macro”, se va a hacer
la grabación de todos los movimientos que se realicen, para ello una recomendación es no
salir del Excel en el que se está grabando la macro, ni tampoco abrir archivos externos en el
momento, debido a que afectaría el resultado final (No olvidar que todo lo que se realice
mientras se está ejecutando la grabación, todo queda como un proceso a ejecutar).
4
Al finalizar el proceso de grabación deberá detener la grabación de la macro, en la barra de
herramientas de programador.
Nota: Para que la macro pueda ejecutarse correctamente después de cerrar el archivo, es
importante guardar el documento como “MS Excel habilitado para macros” cuya extensión es
.xlsm.
Botón de Comandos
Este tipo de botón funciona de forma diferente, ya que el código no aparecerá en la opción de
barra de herramienta (Macros).
5
Para modificar el nombre de un botón se debe realizar un doble click en el botón, mientras que
este activado la opción de modo Diseño y seleccionar la opción de objetivo Botón de comando,
como se muestra a continuación:
6
Se abre una ventana emergente como la siguiente donde se debe estructurar el código:
La ventana del editor muestra todo lo necesario para comenzar a crear una macro.
El Procedimiento Sub
Se puede decir que un procedimiento Sub es un conjunto de instrucciones que realizan una serie
de acciones específicas.
7
Hay dos tipos de procedimientos Sub:
8
NOMBRAR LAS VARIABLES
9
VARIABLES DE DURACIÓN:
I. Variables Locales: son las que se declaran dentro de un procedimiento y sus valores sólo
pueden ser utilizados en éste. Para declararlas se utiliza la sentencia Dim.
EJEMPLO:
II. Variables Públicas: Son las que estarán disponibles para todos los procesos, sus valores
pueden ser utilizados en cualquier módulo. Sé declaran como Public, es aconsejable utilizar un
módulo especialmente destinado a la declaración de estas variables lo que facilitará su
ubicación. Si se declararán en un módulo utilizado para otro procedimiento deberán ser las
primeras instrucciones
Ejemplo:
III. Constantes: A diferencia de las variables que modifican sus valores durante la ejecución de un
proceso, las Constantes mantienen su valor. También pueden ser Locales o Públicas.
10
FUNCIONES EN VBA
El uso de funciones en VBA es muy sencillo, solo basta con abrir la hoja de Excel, seleccionar la
pestaña “Fórmulas” y posteriormente en “Insertar función”.
Tras encontrar la función que se desea usar, se selecciona para ver los parámetros que exige para
ejecutarse de manera correcta, posteriormente, se define una variable tal que esta ejecute la función
con sus respectivos comandos.
1. La función Input Box: Es una función que permite interactuar con el usuario solicitándole
información mientras se ejecuta una macro. Esto se hace mediante un cuadro de diálogo.
Sintaxis de InputBox: InputBox(Mensaje, Título, Valor por defecto, Posición
horizontal, Posición Vertical, Archivo ayuda, Número de contexto para la
ayuda).
11
Valor por defecto: Es el valor que se mostrará por defecto el cuadro donde la
persona va a ingresar el valor. Parámetro de carácter opcional.
2. La función MsgBox: Es la función más utilizada en VBA. Se emplea para obtener una respuesta
simple como Sí o No del usuario y para mostrar mensajes breves como errores y algún dato
relevante para la ejecución de la macro. La función MsgBox hace dos cosas: Muestra un cuadro
de diálogo para darle información al usuario y devuelve un valor del tipo Integer dependiendo del
botón pulsado. Si quiere conocer el botón que se ha pulsado debes guardar el valor generado en
una variable.
Sintáxis de MsgBox: MsgBox(Mensaje, Botones, Título, Archivo de ayuda, contexto).
12
3. La función de conversión de variables: Cuando utilizas una función de conversión de tipo, ésta
devuelve el valor del dato convertido, pero no cambia el valor almacenado
4. Las funciones de comprobación: Este tipo de funciones ayudan al usuario a comprobar el tipo
de dato que contiene una expresión o variable. Estas son las funciones de comprobación:
5. Las funciones matemáticas: VBA también cuenta con funciones matemáticas propias para
realizar operaciones matemáticas y que se pueden emplear en los procedimientos. Casi todas
ellas coinciden con alguna de las funciones de hoja. Te muestro algunas de ellas:
6. Las funciones de cadena: VBA también te ofrece muchas funciones que te permitirán trabajar
con variables de cadena. Estas son algunas de las variables de cadena más utilizadas:
13
Len: Devuelve el número de caracteres de una cadena.
Left: Devuelve un número de caracteres determinado desde la parte izquierda de la cadena.
Right: Devuelve un número de caracteres determinado desde la parte derecha de la cadena.
Mid: Devuelve los n caracteres de una cadena especificada, situados a partir de una
determinada posición.
7. Las funciones de fecha y hora: Con VBA también puedes realizar operaciones relacionadas con
fechas y horas. Estas son las funciones más utilizadas:
FUNCIONES ANIDADAS
Las funciones anidadas ayudan a realizar una acción cuantas veces necesita que el usuario lo
realice.
For
14
Por medio de esta función es posible realizar una operación cuantas veces lo desee el usuario,
por ejemplo, una operación matemática, el análisis de dato y entre otras.
If
Por otra parte se encuentra esta función, la cual sirve para emplear condiciones es decir se puede
comparar dato, realizar operaciones matemáticas aquellos datos que cumpla con la condición
establecida, entre otros.
15
Select case
Esta herramienta tiene similitudes con el IF, sin embargo, esta función facilita el proceso de
condición como se muestra en el siguiente ejemplo. (Recomendaciones esta herramienta es muy
útil, se debe tener en cuenta la lógica y la función que va cumplir esta herramienta en su
programación).
16
ACTIVATE AND SELECT
Son dos comandos que se diferencian por factores de cantidad; es decir "activate" solo se puede
seleccionar solamente una hoja o una celda, mientras que con "select" se pueden seleccionar varias
celdas u hojas a la vez.
Dentro de estas identificamos unos objetos determinados tales como range y cells en la mayoría de
casos pueden ser utilizados sin distinción alguna, sin embargo, hay casos puntuales donde se
recomienda el uso de uno de los dos, son los siguientes:
17
PARTICULARIDADES
Objeto Cells: Es compatible con selección de celdas bajo un patrón de formula. La ventaja del uso
del objeto cells, es permitir vincular funciones numéricas al uso de las celdas y/o a su selección.
Ejemplo:
Se desea conocer la suma que, de la combinación de una fila y columna, entonces se establece el
siguiente programa:
Sub celdasuma ()
For i = 1 To 10 For j = 1 To 10
Cells (i, j). Value = i + j
Next i
Next j
End Sub
18
EVENTOS A TENER EN CUENTA PARA LIBROS EN EXCEL:
BIBLIOGRAFÍA
19
https://www.excel-avanzado.com/ejemplos-if-en-vba
https://www.aprenderaprogramar.com/index.php?option=com_content&view=
article&id=140:tipos-de-variables-en-visual-basic-integer-single-double-string- object-
boolean-etc-ejemplos-cu00308a&catid=37&Itemid=61
https://www.excel-avanzado.com/vba-excel
https://ayudaexcel.com/megaguia-macros-vba/
https://www.excel-avanzado.com/24252/constantes-en-vba.html
https://excelforo.blogspot.com/2014/04/vba-variables-dim-public-private-y.html
https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=140:ti
pos-de-variables-en-visual-basic-integer-single-double-string-object-boolean-etc-ejemplos-
cu00308a&catid=37&Itemid=61
https://www.excel-avanzado.com/10865/diferencia-entre-range-y-cells.html
https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=140:ti
pos-de-variables-en-visual-basic-integer-single-double-string-object-boolean-etc-ejemplos-
cu00308a&catid=37&Itemid=61
Acosta, P. (2010). MS Excel 2007 con Programación de Macros en VBA. NA: Saccec.
20