Publicado el 22 de Enero del 2020
3.722 visualizaciones desde el 22 de Enero del 2020
512,4 KB
23 paginas
Creado hace 15a (12/10/2009)
Macros y Visual
Basic para
Aplicaciones en
Excel
Creación de Macro
Para grabar una macro debemos acceder a la
pestaña Vista y despliega el submenú Macros y
dentro de este submenu seleccionar la opción
Grabar macro...
Creación de Macro
Además de esta opción en el menú podemos
encontrar las siguientes opciones:
Ver Macros... - Donde accedemos a un listado de
las macros creadas en ese libro.
Usar referencias relativas - Con esta opcion
utilizaremos referencias reativas para que las
macros se graben con acciones relativas a la celda
inicial seleccionada.
Creación de Macro
Al seleccionar la opción Grabar macro..., lo
primero que vemos es el cuadro de diálogo
Grabar macro donde podemos dar un nombre
a la macro (no está permitido insertar espacios
en blanco en el nombre de la macro).
Creación de Macro
Podemos asignarle un Método abreviado:
mediante la combinación de las tecla CTRL +
"una tecla del teclado". El problema está en
encontrar una combinación que no utilice ya
Excel.
En Guardar macro en: podemos seleccionar
guardar la macro en el libro activo, en el libro
de macros personal o en otro libro.
En Descripción: podemos describir cuál es el
cometido de la macro o cualquier otro dato que
creamos conveniente.
Introducción al VBA
Es el lenguaje de macros de Microsoft Visual
Basic que se utiliza para programar
aplicaciones Windows y que se incluye en
varias aplicaciones Microsoft. VBA permite a
usuarios y programadores ampliar la
funcionalidad de programas de Microsoft
Office. Visual Basic para Aplicaciones es un
subconjunto casi completo de Visual Basic 5.0
y 6.0.
Introducción al VBA
VBA viene integrado en aplicaciones de Microsoft Office, como
Word, Excel y Access, Powerpoint y Visio. Prácticamente cualquier
cosa que se pueda programar en Visual Basic 5.0 o 6.0 se puede
hacer también dentro de un documento de Office, con la sola
limitación que el producto final no se puede compilar separadamente
del documento, hoja o base de datos en que fue creado; es decir, se
convierte en una macro (o más bien súper macro).
Esta macro puede instalarse o distribuirse con sólo copiar el
documento, presentación o base de datos.
Ejemplo de Macro
' Esta macro escribe el 1500 en la celda A1
Sub MiPrimeraMacro()
Range("A1").Value = 1500
End Sub
El Editor de VBA o Macros
El Editor de Visual Basic es la aplicación que
trae Excel desde donde se escriben y guardan
las macros o código VBA.
Se puede acceder al editor presionando Alt +
F11.
El Código VBA
El comentario siempre comienza con el signo ' y no afecta para nada
a la macro. Es un simple texto.
El nombre de la macro lo pondremos anteponiendo la palabra Sub
los paréntesis de apertura y cierre al final. Conviene dar un nombre
que nos indique que hace la macro.
La instrucción principal la colocaremos entre Sub y End Sub.
El fin siempre es igual, con la frase End Sub.
El Código VBA
Las macros consisten en operar sobre un
Objeto, ya sea alterando una de sus
Propiedades o ejecutando un Método sobre el
mismo.
El Código VBA
Objeto: Es una parte de Excel
Por ej. una celda de Excel, una hoja, un gráfico.
Propiedad: Es una característica del objeto
Por ej. el valor de la celda, el nombre de una hoja,
el color de un gráfico.
Método: es una acción sobre el objeto > por ej.
copiar la celda, borrar la hoja, agrandar el
gráfico.
El Código VBA
' Esta macro muestra un texto en una ventana
emergente
Sub MostrarTexto()
Msgbox "Ejemplo de Mensaje"
End Sub
El Código VBA
' Esta macro oculta las líneas de división de las
celdas
Sub OcultarLineas()
ActiveWindow.DisplayGridlines = False
End Sub
El Código VBA
' Esta macro copia un rango a la celda activa
Sub CopiaRango()
Range("A1:A5").Copy Destination:=ActiveCell
End Sub
El Editor de VBA
Las principales ventanas de editor son:
Proyecto (arriba a la izquierda)
Propiedades (abajo a la izquierda)
Inmediato (arriba a la derecha)
Código (abajo a la derecha)
El Editor de VBA
En la ventana de Proyecto
hay carpetas donde se
guardarán y escribirán las
macros.
Objetos: ThisWorkbook
siempre está presente. Si
escribimos una macro aquí
la misma afectará a todo el
libro.
Los módulos sirven para
escribir macros a nivel
genérico, sin estar
relacionadas a la hoja o
libro en particular.
El Editor de VBA
Se debe Recuerdar: antes de escribir una macro debes evaluar
donde hacerlo.
Si es una macro que solo debe afectar una hoja en particular
escríbela en los objetos de Hoja, en el nombre de Hoja
correspondiente.
Si la macro debe afectar a todo un libro en particular escríbela
en el objeto ThisWorkbook. Estas suelen ser macros que se
ejecutan al abrir, cerrar o guardar el libro.
Si la macro es de tipo genérica escríbela en un Módulo.
Si quieres hacer un formulario utiliza el objeto Userform.
El Editor de VBA
La ventana inmediato sirve para escribir,
ejecutar y probar un código macro
rápidamente, sin tener que armar toda la
macro.
Por ejemplo: podemos escribir
?thisworkbook.Sheets.Count
El Editor de VBA
La macro se puede ejecutar desde:
El código fuente, posicionándonos en cualquiera de
las lineas, y presionando F5.
Desde la ventana Macro y dando clic en ejecutar.
Asignándole acceso directo con CTRL + Una letra
(no se aconseja utilizar combinaciones
preestablecidas; Por eso lo que se hace es
presionar Mayúsc antes de la letra de tal forma que
la macro se ejecutará con Ctrl+Mayús+Letra y de
esta forma no alterar las teclas de método
abreviado por defecto de Excel.)
La Ficha Programador
La ficha programador permite mostrar el editor
de VBA, así como la ventana de Macros.
La Definición del Código VBA
Como prácticamente todas las macros utilizan variables. Una
variable es sencillamente un dato o valor que VBA guarda en
memoria.
Para definir una variable utilizamos una sintaxis del tipo:
Dim NombreVariable as TipoVariable
Dim NombreVariable as TipoVariable
Dim: indica que estamos creando una variable
NombreVariable: escribimos el nombre de nuestra variable a
gusto (sin espacios)
as: necesario para definir el tipo de variable
TipoVariable: debemos indicar si es una variable texto, fecha,
valor, etc.
La Definición del Código VBA
Sub MiNombre ()
' Indicamos que "Nombre" es una variable "String" (texto)
Dim Nombre as String
' Le asignamos un valor a la variable (también podríamos indicarle
una celda Excel)
Nombre = "Memin"
' Mostramos el valor de la variable en un mensaje
Msgbox Nombre
End Sub
Comentarios de: Macros y Visual Basic para Aplicaciones en Excel (0)
No hay comentarios