Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Herramientas avanzadas
Marcvs
Guia de Participante
EXCEL
AVANZADO
Taller Excel Avanzado
Contenido
EXCEL AVANZADO ......................................................................................................................... 1
OBJETIVO ................................................................................................................................... 1
LA FICHA DESARROLLADOR ....................................................................................................... 1
EL LENGUAJE VISUAL BASIC PARA APLICACIONES ........................................................................ 2
LAS MACROS.............................................................................................................................. 2
PROGRAMACIÓN ORIENTADA A OBJETOS .................................................................................... 4
OBJETOS .................................................................................................................................... 4
JERARQUÍA DE OBJETOS............................................................................................................ 4
REFERENCIA A OBJETOS ............................................................................................................ 5
PARTES DEL EDITOR DE VISUAL BASIC .......................................................................................... 6
MENÚ DEL EDITOR DE VISUAL BASIC ........................................................................................ 6
BARRA DE HERRAMIENTAS DEL EDITOR DE VISUAL BASIC ....................................................... 6
VENTANA DE PROYECTO DEL EDITOR DE VBA: ......................................................................... 7
LA VENTANA DE PROPIEDADES. ................................................................................................ 7
ÁREA DE TRABAJO DEL EDITOR DE VBA: ................................................................................... 8
IMPORTANCIA DEL EDITOR VISUAL BASIC EN EXCEL ................................................................ 8
MÓDULOS ..................................................................................................................................... 9
LA CARPETA MICROSOFT EXCELOBJETOS ................................................................................. 9
LA CARPETA FORMULARIOS ...................................................................................................... 9
LA CARPETA MÓDULOS ............................................................................................................. 9
LA CARPETA MÓDULOS DE CLASE ............................................................................................. 9
INSERTAR MÓDULOS................................................................................................................. 9
ELIMINAR UN MÓDULO .......................................................................................................... 10
PROCEDIMIENTOS ....................................................................................................................... 11
CREAR PROCEDIMIENTOS SUB ................................................................................................ 11
CREAR PROCEDIMENTOS FUNCTION ...................................................................................... 12
LAS VARIABLES ............................................................................................................................ 14
UNA VARIABLE ES EL ELEMENTO DEL CÓDIGO QUE USAMOS PARA GUARDAR UN VALOR
TEMPORAL............................................................................................................................... 14
TIPOS DE VARIABLES ............................................................................................................... 14
NUMÉRICAS ............................................................................................................................. 14
CADENAS DE CARACTERES ...................................................................................................... 14
OPERADORES............................................................................................................................... 16
OPERADORES ARITMÉTICOS VBA ............................................................................................ 16
OPERADORES DE COMPARACIÓN VBA ................................................................................... 17
OPERADORES LÓGICOS EN VBA .............................................................................................. 18
FORMULARIO .............................................................................................................................. 19
VENTANA UserForm ................................................................................................................ 19
CUADRO DE HERRAMIENTAS ...................................................................................................... 22
ETIQUETAS (LABEL) ................................................................................................................. 23
CUADRO DE TEXTO (TEXTBOX)................................................................................................ 24
BOTÓN DE COMANDO (COMMANDBUTTON) ........................................................................ 24
El COMBOBOX ......................................................................................................................... 25
ESTRUCTURAS DE CONTROL ....................................................................................................... 28
ESTRUCTURAS SECUENCIALES................................................................................................. 28
SENTECNIAS DE CONTROL ....................................................................................................... 28
SENTENCIA IF ... THEN ... ELSE ... ............................................................................................. 29
ACTIVECELL (CELDA ACTIVA) ................................................................................................... 31
DIFERENCIA ENTRE RANGE Y CELLS ........................................................................................ 31
SENTENCIA ITERATIVA (CICLO) DO … LOOP ............................................................................ 32
SETENCIA FOR NEXT ................................................................................................................ 34
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
EXCEL AVANZADO
• Carpintería en Melamina
• Computación e Informática
• Confección Textil El curso está dirigido a usuarios que utilizan Excel como su herramienta de trabajo
• Cosmetología y Peluquería
• Electricidad y Electrónica
habitual, y desean potenciar, personalizar su entorno de trabajo, así como automatizar
•
•
Mecánica Automotriz y Motos
Mecánica de Producción
tareas para poderlas realizar de manera rápida y precisa, optimizar su manejo mediante el
•
•
Panadería y Pastelería
Tejidos a Maquina
uso de herramientas avanzadas, también la necesidad en el manejo de macros.
OBJETIVO
Mejorar la competencia en el empleo de la hoja de cálculo Excel para la resolución de
problemas, planificar soluciones a los problemas de gestión más frecuentes del ambito
laboral y la empresa.
El curso de Excel Avanzado y VBA le permite al usuario conocer el funcionamiento de
las macros de Excel y Aplicaciones para Excel.
LA FICHA DESARROLLADOR
Desarrollador es una de las fichas de la cinta de opciones de la versión 2019, 2016, 2013
de Office, que en las versiones 2007 y 2010 se denominaba Programador. En ella,
encontraremos los comandos que emplearemos para crear, editar y ejecutar macros, así
como lo necesario para gestionar complementos y crear formularios.
Por defecto, la ficha Desarrollador no se encuentra visible, por lo tanto, lo primero que
haremos para trabajar con macros es activarla. Para activarla en Excel 2013, vamos a la
ficha Archivo y seleccionamos Opciones. En la parte izquierda del cuadro de diálogo
Opciones de Excel, seleccionamos Personalizar cinta de opciones y, en la sección
Pestañas Principales, marcamos la casilla de verificación de la ficha Desarrollador para
hacerla visible y, por último, pulsamos Aceptar.
1
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
•
Carpintería en Melamina
Computación e Informática
EL LENGUAJE VISUAL BASIC PARA APLICACIONES
• Confección Textil
• Cosmetología y Peluquería
• Electricidad y Electrónica
Como seguramente sabemos, Excel es una potente aplicación incluida en el paquete
•
•
Mecánica Automotriz y Motos
Mecánica de Producción
Microsoft Office que nos proporciona herramientas y funciones destinadas a analizar,
•
•
Panadería y Pastelería
Tejidos a Maquina
compartir y administrar datos. Además, Excel nos ofrece amplias posibilidades para
automatizar tareas que realizamos de manera cotidiana, y para crear aplicaciones basadas
en el procesamiento y el análisis de datos numéricos por medio de la creación de macros.
Visual Basic para Aplicaciones (Visual Basic for Aplications), también conocido por su
abreviatura VBA, es un lenguaje de programación común a todas las aplicaciones del
paquete Microsoft Office, como así también en otros programas como Corel Draw y otros
La diferencia entre Visual Basic y Visual Basic para Aplicaciones radica en que el
primero nos permite, entre otras cosas, realizar ejecutables que se pueden instalar en
cualquier computadora bajo el entorno Windows. En cambio, VBA solo permite escribir
instrucciones que se ejecutarán dentro del entorno Excel.
LAS MACROS
2
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Carpintería en Melamina
• Computación e Informática
• Confección Textil
• Cosmetología y Peluquería
• Electricidad y Electrónica
• Mecánica de Producción
• Panadería y Pastelería
• Tejidos a Maquina
3
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Computación e Informática
•
Confección Textil
Cosmetología y Peluquería
Visual Basic para Aplicaciones es un lenguaje de programación orientada a objetos
• Electricidad y Electrónica
(POO). Este concepto de programación se basa en la existencia de un mundo lleno de
• Mecánica Automotriz y Motos
• Mecánica de Producción objetos. Excel, al igual que el resto de las aplicaciones de Microsoft Office, nos ofrece un
modelo de objetos que podremos manipular con VBA para cambiar sus propiedades. Por
• Panadería y Pastelería
• Tejidos a Maquina
ejemplo, podemos cambiar los atributos de la fuente (nombre, tamaño, color) o, mediante
métodos como Seleccionar, copiar un conjunto de datos.
OBJETOS
JERARQUÍA DE OBJETOS
El modelo de objetos de Excel está compuesto por más de 192 objetos diferentes, algunos
de ellos están ocultos, y otros se usan muy poco o se dejaron de utilizar.
Los objetos de Excel pueden contener otros objetos, y, a su vez, estos pueden contener
otros objetos. Esto significa que tenemos un cierto orden o jerarquía.
Libro
(Workbook)
Hoja
(Worksheet)
Celda
(Range)
Por ejemplo, cuando abrimos Excel, estamos abriendo una aplicación VBA representada
por el objeto Application, y, al mismo tiempo, estamos abriendo un libro representado
por el objeto Workbook, que contiene una hoja activa representada por el objeto
Woksheet, y a su vez se activa una celda representada por el objeto Range La disposición
jerárquica de estos objetos se llama modelo de objetos de Excel, que está relacionado con
la interfaz de usuario.
4
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
•
Confección Textil
Cosmetología y Peluquería
más. Por medio de este objeto, podemos acceder a las opciones de Excel como la
• Electricidad y Electrónica de elegir si el cálculo es manual o automático, entre otras.
• Mecánica Automotriz y Motos
• Mecánica de Producción
• Panadería y Pastelería
• Workbook (libro de trabajo): representa a un libro abierto dentro de la aplicación
• Tejidos a Maquina
• Range (celda): este objeto es el que representa todas las celdas de la hoja, así como
todas sus columnas y filas, los rangos, la selección de las celdas. Con este objeto
podemos manipular todo lo relacionado con una celda o grupo de celdas, introducir
valores, realizar operaciones, insertar celdas, entre otras cosas.
REFERENCIA A OBJETOS
Hacemos referencia a los objetos de Excel según la posición jerárquica que estos ocupan
en el modelo de objetos y empleamos el punto para separar el objeto contenedor de uno
o varios objetos. Es decir, el punto nos servirá para navegar por la jerarquía de objetos.
Por ejemplo, para hacer referencia a un libro de Excel llamado Planilla.xlsx, escribimos
la siguiente sentencia:
Application.Workbooks(“planilla.xlsm”)
Si, por ejemplo, quisiéramos hacer referencia a la celda A1 de la hoja Datos del libro
Planilla.xlsx, debemos indicar toda la ruta de la jerarquía del modelo de objetos:
Application.Workbooks(“planilla.xlsm”).Worksheets(“datos”).Range(“A1”).Select
Workbooks(“planilla.xlsm”).Worksheets(“datos”).Range(“A1”).Select
Worksheets(“datos”).Range(“A1”).Select
Y algo más simple aún, si sabemos que la hoja activa es Datos, también es posible omitir
el objeto Worksheets:
Range(“A1”).Select
5
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Computación e Informática El Microsoft Visual Basic Editor para aplicaciones de Excel es un programa que permite
•
•
Confección Textil
Cosmetología y Peluquería
la creación y modificación de macros en Excel. A pesar de ser programas distintos, su
• Electricidad y Electrónica trabajo conjunto facilita y mejora la eficiencia del trabajo realizado en el Excel.
• Mecánica Automotriz y Motos
• Mecánica de Producción
• Panadería y Pastelería El Visual Basic Editor cuenta con distintos barras y menús: Barra de menú, Barra de
• Tejidos a Maquina
Para añadir o retirar algunas de las barras de herramientas se puede ir a la opción VER,
luego "Barra de Herramientas", tal como se muestra en la siguiente imagen
6
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Carpintería en Melamina
VENTANA DE PROYECTO DEL EDITOR DE VBA:
• Computación e Informática
•
Confección Textil
Cosmetología y Peluquería
En esta ventana que se encuentra al lado izquierdo de la pantalla, hay 3 botones: Ver
• Electricidad y Electrónica
código, Ver objeto y Alternar carpetas. Debajo de estos botones, se encuentran numeradas
•
•
Mecánica Automotriz y Motos
Mecánica de Producción
las hojas del libro de Excel que se esta usando y en las cuales se pueden ingresar
•
•
Panadería y Pastelería
Tejidos a Maquina
funciones.
LA VENTANA DE PROPIEDADES.
(Ver→Ventana de Propiedades o F4), esta aparecerá debajo de la ventana del proyecto.
En esta se pueden apreciar las características de la hoja de trabajo activa que se
encuentran en el libro que se esta editando.
7
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Carpintería en Melamina
ÁREA DE TRABAJO DEL EDITOR DE VBA:
• Computación e Informática
•
Confección Textil
Cosmetología y Peluquería
El resto del espacio esta dedicado a una hoja donde se escribirán los comandos que
• Electricidad y Electrónica
servirán para programar las funciones que caracterizarán el macros que se está creando.
• Mecánica Automotriz y Motos
• Mecánica de Producción Para acceder a esta área puede hacer doble click sobre cualquiera de los elementos de la
•
•
Panadería y Pastelería
Tejidos a Maquina
ventana de proyectos.
1) Es la interfaz que permite la creación de las macros, desde el editor se puede crear,
reutilizar, o modificar diversos programas que se puedan emplear.
8
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
MÓDULOS
• Carpintería en Melamina
•
Computación e Informática
Confección Textil
El código VBA asociado a un libro está agrupado en un proyecto que contiene varias
• Cosmetología y Peluquería carpetas:
• Electricidad y Electrónica
• Tejidos a Maquina
Contiene un módulo de clase asociado al libro del proyecto (llamado por defecto
ThisWorkbook) y un módulo de clase por cada una de las hojas de cálculo u hojas de
gráfico del libro. En particular, en estos módulos de clase se encuentran los
procedimientos de eventos asociados al libro y a las hojas.
LA CARPETA FORMULARIOS
Contiene los formularios (UserForm) del proyecto y el código VBA asociado.
LA CARPETA MÓDULOS
Agrupa los diferentes módulos estándares (compuestos por uno o más procedimientos)
que pueden ser llamados desde cualquier procedimiento del proyecto.
• Para ver el código asociado a un módulo, haga doble clic sobre el nombre del
módulo.
INSERTAR MÓDULOS
Al trabajar con procedimientos es conveniente organizar el Código en módulos.
Para agregar un modulo al proyecto, dentro del editor de VBA, vamos al menú Insertar y
seleccionamos Módulo.
9
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
Al insertar el módulo, VBA le asigna un nombre por defecto, en este caso Módulo1, pero
• Carpintería en Melamina
podemos modificarlo a través de la ventana Propiedades. Para esto, seleccionamos el
• Computación e Informática Módulo1 en el Explorador de proyectos, vamos a la ventana Propiedades, hacemos clic
•
•
Confección Textil
Cosmetología y Peluquería
en Name, y escribimos un nombre nuevo.
• Electricidad y Electrónica
• Mecánica de Producción
• Panadería y Pastelería
• Tejidos a Maquina
ELIMINAR UN MÓDULO
Si necesitamos eliminar un módulo del proyecto, debemos realizar un procedimiento muy
sencillo. Primero, debemos dirigirnos al Explorador de proyectos y tenemos que
seleccionar el módulo que queremos eliminar.
Luego, hacemos un clic con el botón derecho del mouse y, en el menú que se abre,
seleccionamos Quitar Ejemplo....
10
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
PROCEDIMIENTOS
• Carpintería en Melamina
•
Computación e Informática
Confección Textil
Los procedimientos son subprogramas que permiten descomponer una tarea de
• Cosmetología y Peluquería programación compleja en un conjunto de tareas más breves y simples. Permiten
•
•
Electricidad y Electrónica
• Tejidos a Maquina
En este capítulo, solamente nos interesan los dos primeros, que son los más utilizados.
• Abra un nuevo libro de Excel, ingrese al Editor de Visual Basic e inserte un nuevo
módulo. En la ventana Código, escriba la palabra Sub y, a continuación, dejando
un espacio, el nombre del procedimiento, por ejemplo: Mi_Nombre.
• Escriba entre estas dos líneas el código que muestra la imagen, que le aplicará el
formato al nombre.
11
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Computación e Informática Al igual que como vimos en los procedimientos Sub, los procedimientos Function los
• Confección Textil
• Cosmetología y Peluquería podemos crear en cualquier objeto contenedor de código. También es algo muy sencillo
•
•
Electricidad y Electrónica
•
Mecánica de Producción
Panadería y Pastelería
vamos a hacerlo través de un pequeño ejercicio.
• Tejidos a Maquina
En el Paso a paso, que presentamos a continuación, describimos en detalle el
procedimiento que debemos realizar para crear una función en un módulo que nos
permitirá calcular el igv de una cantidad monetaria.
• Una vez ingresado el nombre, presione ENTER. El editor de VBA añade unos
paréntesis después del nombre y, a continuación, inserta una nueva línea con las
instrucciones End Function.
• Entre estas dos líneas, escriba el código que se muestra en la imagen, que contiene
la fórmula para calcular el igv.
Como vimos antes, podemos utilizar la sentencia Exit Function para salir de una función
antes de que esta finalice. Por ejemplo, tenemos la función calculo_igv que espera recibir
un valor positivo y mayor que cero para realizar el cálculo. Entonces, si el valor recibido
es menor que cero, la función no podrá continuar, mostrará un mensaje de error y, como
consecuencia, saldrá de la función de inmediato.
12
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
Por lo tanto, para detener la ejecución de la función cuando recibe un valor menor que
• Carpintería en Melamina
cero, empleamos la sentencia Exit Function como muestra la siguiente sintaxis:
• Computación e Informática
• Confección Textil
•
Cosmetología y Peluquería
Electricidad y Electrónica
Function calculo_igv(Cantidad)
• Mecánica Automotriz y Motos If Cantidad <= 0 Then
• Mecánica de Producción
Exit Function
Else
R = Cantidad * 0.18
calculo_igv = R
End If
End Function
13
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
LAS VARIABLES
• Carpintería en Melamina
• Computación e Informática A menudo necesitaremos guardar valores temporalmente cuando realicemos cálculos con
•
•
Confección Textil
Cosmetología y Peluquería
VBA. Por ejemplo, podemos almacenar los valores de las ventas y gastos totales de un
• Electricidad y Electrónica negocio para luego usarlos en un cálculo de margen de ganancia.
• Mecánica Automotriz y Motos
• Mecánica de Producción
Las variables permiten almacenar valores intermedios durante la ejecución del código
VBA para usarlos luego en cálculos, comparaciones, pruebas…
Las variables se identifican por un nombre que permite hacer referencia al valor que
contienen, y un tipo que determina la naturaleza de los datos que pueden almacenar.
TIPOS DE VARIABLES
NUMÉRICAS
Tipo Rango Tamaño en bytes
Byte 0 a 255 1
Integer (entero) -32.768 a 32.767 2
Long (entero largo) -2.147.483.648 a 2.147.483.647 4
Single (real simple de coma 3,402823E38 a 1,401298E45 4
flotante) (valores negativos)
1,401298E45 a 3,402823E38
(valores positivos)
Double (real doble de coma 1,79769313486231E308 a 8
flotante) 4,94065645841247E324
(Valores negativos)
4,94065645841247E324 a
1,79769313486231E308
(valores positivos)
Currency (monetario de punto 8
fijo)
Decimal 12
CADENAS DE CARACTERES
Es el tipo String, existen dos tipos de cadenas:
• Las cadenas de longitud variable pueden contener aproximadamente dos mil
millones de caracteres.
• Las cadenas de longitud fija pueden contener de 1 a aproximadamente 64 KB de
caracteres.
14
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Cosmetología y Peluquería
• Electricidad y Electrónica Las variables definidas como Integer pueden almacenar números enteros en el rango de
•
•
Mecánica Automotriz y Motos
Mecánica de Producción
valores de -32768 a 32767. Los enteros se almacenan en memoria como 2 bytes. Por
• Panadería y Pastelería ejemplo, para declarar la variable cantidad como Integer, usamos la siguiente sentencia:
• Tejidos a Maquina
Double
Las variables definidas como Double pueden almacenar números reales de 64 bits con
una precisión de 16 decimales que van de
-1.79769313486231E308 a -4,94065645841247E-324 para valores negativos y de
4,94065645841247E-324 a 1,79769313486232E308
para valores positivos. Por ejemplo, si queremos una variable llamada distancia que nos
permita almacenar la distancia entre la tierra y el sol, usamos la siguiente sentencia:
15
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
OPERADORES
• Carpintería en Melamina
• Cosmetología y Peluquería
• Electricidad y Electrónica En programación VBA Excel una expresión es una fórmula aritmética que permite
•
•
Mecánica Automotriz y Motos
Mecánica de Producción
calcular un valor, cuando se construye la formula se debe tener en cuenta la jerarquía de
• Panadería y Pastelería operadores. La jerarquía de operadores determina el orden en el que se resuelven las
• Tejidos a Maquina
Jerarquía de operadores
Cuando dos operadores tienen el mismo nivel de prioridad, dentro de una expresión se
evalúan de izquierda a derecha.
16
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Computación e Informática Los Operadores de comparación en VBA se usan para comparar dos cantidades y el
•
•
Confección Textil
Cosmetología y Peluquería
programa te muestra el resultado de la comparación en una expresión de verdad; es decir,
• Electricidad y Electrónica el resultado sera verdadero o falso (True or False).
• Mecánica Automotriz y Motos
• Mecánica de Producción
• Panadería y Pastelería Operadores de comparación Numéricos: Para toda expresión de comparación se utilizan
• Tejidos a Maquina
Expresión
Operador Significado condicional Descripción
Devuelve True si el valor a su
lblVentas:Caption > izquierda es numérica o
> Mayor que
Objetivo alfabéticamente mayor que el
que está a su derecha
Devuelve True si el valor a su
izquierda es numérica o
< Menor que Pago < 2000.00
alfabéticamente menor que el
que está a su derecha
Devuelve True si los valores
= Igual a Edad = Limite
comparados son iguales
Devuelve True si el valor a su
Mayor o igual izquierda es numérica o
>= Nombre >= “Miguel”
que alfabéticamente igual o mayor
que el que está a su derecha
Devuelve True si el valor a su
Menor o igual Num <= izquierda es numérica o
<=
que lblMonto.Caption alfabéticamente menor o igual
que el que está a su derecha
Devuelve True si el valor a su
izquierda es numérica o
<> Distinto de TxtRes.Text <> “Si”
alfabéticamente distinto al que
está a su derecha.
17
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Computación e Informática Los operadores lógicos permiten establecer condiciones entre expresiones, estas
•
•
Confección Textil
Cosmetología y Peluquería
expresiones pueden ser verdaderas o falsas, y según estas el resultado del operador puede
• Electricidad y Electrónica ser verdadero o falso. Los operadores lógicos que se pueden manejar en Excel con VBA
•
•
Mecánica Automotriz y Motos
Mecánica de Producción
son los siguientes:
• Panadería y Pastelería
• Tejidos a Maquina
• Conjunción (And)
El resultado de este operador es verdadero si todas las expresiones son
verdaderas, caso contrario el resultado es falso.
• Disyunción (Or)
El resultado de este operador es verdadero si al menos una de las
expresiones es verdadera. Si todas son falsas el resultado será falso.
Ejemplos:
18
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Carpintería en Melamina
FORMULARIO
• Computación e Informática
•
Confección Textil
Cosmetología y Peluquería
Los formularios, llamados también cuadros de diálogos personalizados, son ventanas
•
•
Electricidad y Electrónica
• Tejidos a Maquina y para permitirle al usuario introducir o seleccionar contenido. Se les puede asociar una
combinación de código VBA y de datos para responder a las acciones del usuario. Un
libro de trabajo puede tener cualquier cantidad de formularios.
VENTANA UserForm
Permite crear las ventanas o los cuadros de diálogo de un proyecto. Puede dibujar y ver
los controles de un formulario.
Insertar un formulario
Para agregar un formulario a un proyecto, desde la ventana del Editor de Visual Basic
para Aplicaciones hacemos clic en el menú Insertar y, luego, seleccionamos la opción
denominada UserForm.
19
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Carpintería en Melamina
• Computación e Informática
• Confección Textil
• Cosmetología y Peluquería
• Electricidad y Electrónica
• Mecánica de Producción
• Panadería y Pastelería
• Tejidos a Maquina
A continuación, vamos a conocer los distintos métodos que nos permiten manejar los
formularios.
Sub mostrar_formulario()
frmEjemplo.Show
End Sub
20
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
•
Carpintería en Melamina
Computación e Informática
• Load: carga el formulario en memoria, pero no lo hace visible. Su sintaxis es.
• Confección Textil
• Cosmetología y Peluquería
• Mecánica de Producción
•
• Panadería y Pastelería
• Tejidos a Maquina
Hide: oculta el formulario, sin descargarlo de la memoria. Si bien los controles
no estarán al alcance del usuario, podemos seguir haciendo referencia a ellos a
través del código. Esto quiere decir que los valores de las variables a nivel
formulario no desaparecen, sino que permanecen ocultas. Su sintaxis es
NombreFormulario.Hide. Por ejemplo, el procedimiento que presentamos a
continuación oculta el formulario llamado frmEjemplo.
Sub mostrar_formulario()
frmEjemplo.Hide
End Sub
21
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
CUADRO DE HERRAMIENTAS
• Carpintería en Melamina
• Computación e Informática Muestra los controles estándar de Visual Basic, además de los controles ActiveX y los
•
•
Confección Textil
Cosmetología y Peluquería
objetos insertables que haya agregado a su proyecto.
• Electricidad y Electrónica
• Mecánica de Producción
• Panadería y Pastelería
• Tejidos a Maquina
Crea una casilla que el usuario puede elegir fácilmente para indicar
CheckBox si algo es verdadero o falso, o para mostrar varias opciones cuando
el usuario puede elegir más de una.
22
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Carpintería en Melamina
Propiedad Crea un botón que el usuario puede elegir para llevar a cabo un
• Computación e Informática CommandButton comando.
• Confección Textil
• Cosmetología y Peluquería
• Electricidad y Electrónica
ETIQUETAS (LABEL)
El control Etiqueta (Label) se utiliza para mostrar información que los usuarios no pueden
modificar y para identificar a otros controles, como, por ejemplo, los cuadros de texto y
las barras de desplazamiento.
Propiedades
Al igual que en los formularios, es posible establecer las propiedades de cualquier control
Por ejemplo, si queremos que el texto de la etiqueta lbl_titulo tenga fuente Arial, estilo
Negrita, tamaño 14 y color azul tenemos que usar la sentencia que presentamos a
continuación:
With lbl_titulo
.Font.Name = “Arial”
.Font.Size = 14
.Font.Bold = True
.Font.Italic = True
.ForeColor = RGB(0, 0, 255)
End With
23
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Carpintería en Melamina
Eventos
• Computación e Informática Los eventos más empleados en las etiquetas son:
• Confección Textil
• Cosmetología y Peluquería
•
Electricidad y Electrónica
•
Panadería y Pastelería
Tejidos a Maquina
DbClick: ocurre cuando se hace doble clic sobre el control.
Propiedades
Las propiedades más importantes de los cuadros de texto son:
Eventos
Los eventos más empleados en los cuadros de texto son:
• Change: ocurre cuando se modifica el contenido del área de edición del cuadro
de texto.
• KeyPress: se produce cuando el usuario presiona una tecla.
Propiedades
Las propiedades más importantes del botón de comando son:
Métodos
Este control prácticamente no posee métodos. El más importante es SetFocus, que
establece el foco en un control VBA, en este caso, el botón de comando. Para usar este
método, el control debe estar habilitado.
Eventos
El evento más empleado en el botón de comando es Click, que ocurre cuando el usuario
presiona el botón de comando con el botón izquierdo del mouse o cuando pulsa la tecla
ENTER.
24
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
El COMBOBOX
• Carpintería en Melamina
• Computación e Informática
• Confección Textil
• Cosmetología y Peluquería
• Electricidad y Electrónica
• Mecánica de Producción El COMBOBOX es una herramienta muy importante dentro del EXCEL especialmente
•
•
Panadería y Pastelería
Tejidos a Maquina
en la creación e implementación de formularios.
Por ejemplo:
‘Otro Ejemplo
Private Sub UserForm1_Activate()
ComboBox1.Clear
With ComboBox1
.AddItem "Americana"
.AddItem “Hawaiana"
.AddItem "Pepperoni"
.AddItem "Suprema"
.AddItem “Full Meat”
.AddItem “Meat lovers”
End With
End Sub
25
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
•
Panadería y Pastelería
Tejidos a Maquina
seleccionado del Listado del combo
Por Categorias
Apariencia
Comportamiento
Dato
Fuente
Posición
Otros
26
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Computación e Informática Las palabras clave del lenguaje Visual Basic para Aplicaciones Excel y los miembros de
•
•
Confección Textil
Cosmetología y Peluquería
las bibliotecas en tiempo de ejecución están organizados por uso y propósito.
• Electricidad y Electrónica
• Tejidos a Maquina
Ejemplo:
Mayúsculas:
Text1.Text = UCase(Text1.Text)
Minusculas:
Text1.Text = LCase(Text1.Text)
Val(cadena)
Devuelve los números contenidos en una cadena como un valor numérico del tipo
adecuado.
Dim MiValor
MiValor = Val("2457")
' Devuelve 2457
Dim A As Single
A = Val(TextBox1.Text)
27
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
ESTRUCTURAS DE CONTROL
• Carpintería en Melamina
•
Computación e Informática
Confección Textil
En el desarrollo de aplicaciones VBA se utiliza tres tipos de estructuras de control: las
• Cosmetología y Peluquería secuenciales, las selectivas y las iterativas.
• Electricidad y Electrónica
• Tejidos a Maquina
Las instrucciones se siguen en una secuencia fija que normalmente viene dada por el
número de renglón. Es decir que las instrucciones se ejecutan de arriba hacia abajo.
SENTECNIAS DE CONTROL
Las sentencias de control, denominadas también estructuras de control, permiten tomar
decisiones y realizar un proceso repetidas veces. Son los denominados bifurcaciones y
bucles. Se trata de unas estructuras muy importantes ya que son las encargadas de
controlar el flujo de un programa según los requerimientos del mismo. Visual Basic para
Aplicaciones Excel dispone de las siguientes estructuras de control:
Select Case
Do ... Loop
While … Wend
28
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Computación e Informática Esta estructura permite ejecutar condicionalmente una o más sentencias y puede
•
•
Confección Textil
Cosmetología y Peluquería
escribirse de dos formas. La primera ocupa sólo una línea y tiene la forma siguiente:
• Electricidad y Electrónica
•
Mecánica Automotriz y Motos
Mecánica de Producción
If condicion Then sentencia1 [Else sentencia2]
• Panadería y Pastelería
• Tejidos a Maquina
If condicion Then
sentencia(s)
[Else
sentencia(s)]
End If
Bifurcaciones If e If...Else.
29
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
Ejemplo
• Carpintería en Melamina
•
Confección Textil
Cosmetología y Peluquería
estructura condicional: IF condición THEN sentencia-1 ELSE sentencia-n END IF
• Electricidad y Electrónica
•
Mecánica Automotriz y Motos
Mecánica de Producción
Con los siguientes criterios:
• Panadería y Pastelería
• Tejidos a Maquina
30
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Computación e Informática Usamos la propiedad ActiveCell para referirnos a la celda activa. Es importante
•
•
Confección Textil
Cosmetología y Peluquería
mencionar que será la celda activa ubicada en el archivo y la hoja activos. Si tenemos
• Electricidad y Electrónica varios archivos abiertos o uno con varias hojas, será importante confirmar que estamos
•
•
Mecánica Automotriz y Motos
Mecánica de Producción
trabajando en la hoja correcta.
• Panadería y Pastelería
• Tejidos a Maquina
Selection
La propiedad Selection puede aplicarse a cualquier objeto seleccionado, desde un rango
de celdas, hasta imágenes.
Offset. Activaremos un rango en referencia a la celda A1. Nos moveremos 10 filas hacia abajo y
10 columnas hacia la derecha.
Range(“A1”).Offset(10, 10).Select
Value. Vamos a mostrar un valor de una celda.
MsgBox Range(“A1”).Value
USO COMÚN
Para seleccionar una celda
Ejemplo:
Si se quiere seleccionar la celda “C2”, se tiene dos opciones.
Range(“C2”).select o Cells(2,3).select
* cells(i,j) , donde i=fila i ; j=columna j.
Range(“C2”).value=620 o Cells(2,3).value=620
31
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Computación e Informática Las estructuras en ciclo o repetitivas permiten repetir la ejecución de un conjunto de
•
•
Confección Textil
Cosmetología y Peluquería
instrucciones.
• Electricidad y Electrónica
•
Mecánica Automotriz y Motos
Mecánica de Producción
Un Loop (bucle) repite la ejecución de un conjunto de sentencias mientras una condición
• Panadería y Pastelería dada sea cierta, o hasta que una condición dada sea cierta. La condición puede ser
• Tejidos a Maquina
Este bucle Do…Loop repite las operaciones en función de una cierta condición
Sintaxis 1
Las instrucciones se ejecutan, mientras que la condición devuelve el valor True.
Do While <Condición>
<Instrucciones>
Loop
Sintaxis 2
Las instrucciones se ejecutan una primera vez sin condición y, luego, mientras la
condición devuelva True.
Su sintaxis es la siguiente
Do
<Instrucciones>
Loop While <Condición>
Ciclo Do … Loop
32
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
Ejemplo
• Carpintería en Melamina
• Computación e Informática Cambiar los nombres de los clientes registrados en minúsculas a mayúsculas mediante la
•
•
Confección Textil
Cosmetología y Peluquería
implementación de una estructura iterativa (ciclo): DO WHILE condición LOOP
• Electricidad y Electrónica sentencia
• Mecánica Automotriz y Motos
• Mecánica de Producción
• Panadería y Pastelería
Situación Condición Resultado
• Tejidos a Maquina
Sub mayusCulaColumna()
End Sub
33
EXCEL AVANZADO
UANCV CENTRO DE INFORMÁTICA
GUÍA DE PARTICIPANTE
• Carpintería en Melamina
SETENCIA FOR NEXT
• Computación e Informática
• Confección Textil
• Cosmetología y Peluquería
Esta forma es la más útil , ya que no se tiene que
•
•
Electricidad y Electrónica
•
Panadería y Pastelería
Tejidos a Maquina
la información es agregada en ciertas celdas del
Excel, la cual con un código pertinente será insertada
dentro del COMBOBOX.
Por ejemplo:
Se despliega la información.
34