View
1.285
Download
28
Category
Preview:
DESCRIPTION
Fichas de Aprendizaje 2014 para el Curso de Excel Advanced Macros.
Citation preview
1
Ficha de Aprendizaje N° 1
Curso: Excel Advanced Macros
Módulo 1: Conceptos Iniciales
Tema: Macros: grabación y ejecución
Duración: 2 horas pedagógicas
Planifica las acciones para grabar una macro.
Realiza los pasos correctos para grabar una macro.
Ejecuta una macro.
Conocimientos previos
Logros de aprendizaje
Observa la siguiente imagen. ¿Sabías
que las macros nos permiten realizar
este tipo de tareas de manera rápida?
2
Las macros
Planificar acciones
Grabar Ejecutar
Automatizar tareas
Mapa de Contenidos
Contenidos de aprendizaje
I. Definición de una macro
Es una herramienta que permite automatizar tareas. Es decir, un usuario
podrá evitar la ejecución repetitiva de estas tareas, porque solo tendrá que
ejecutar la macro para poder realizarlas de forma automática.
Recuerda: Los archivos de
Excel que contienen
macros poseen la
extensión .xlsm.
permiten
para crearlas debes:
3
Una vez que tengamos una orden creada en una macro, esta realizará automáticamente los
pasos que le hayamos indicado que ejecute. Por ello es importante planificar previamente las
acciones por seguir. Para ello, en primer lugar, descarga de la plataforma el archivo
notas.xlsx:
En este archivo se encuentran registradas las notas de 40 alumnos de determinada sección.
Se necesita calcular por cada alumno cual es la máxima nota, la minima y el promedio de todas
las notas.
Además, cada fin de año se desea conocer el promedio de notas, así como la menor y mayor
calificación obtenida en el aula
II. Planificando las acciones que se graban en una macro
4
Antes de empezar con la grabación
de una macro, debes planificar los
pasos que deseas que se registren
en ella.
En esta primera parte, vas a generar una macro que te permita obtener los cálculos mostrados
anteriormente.
Ahora debes seguir los pasos presentados a continuación para grabar la macro:
III. Grabando una macro
En este caso, los pasos son los siguientes:
Celda de Inicio: A2
Paso 1: Realizar el cálculo del máximo de notas del primer alumno (celda H2).
Paso 2: Realizar el cálculo del mínimo de notas del primer alumno (celda I2).
Paso 3: Realizar el cálculo del promedio de notas del primer alumno (celda J2).
Paso 4: Realizar el cálculo de los máximos, mínimo y promedio de los demás
alumnos.
Paso 5: Realizar el cálculo de la máxima y mínima nota, y promedio de la clase.
Paso 6: Aplicar los formatos (fuente Arial, tamaño 12, color de fondo amarillo,
negritas) en las celdas A46, H46, I46 y J46.
En la ficha Vista, ubica el botón Macro y, en el menú desplegable, haz clic en la opción Usar referencias relativas.
Ubícate en la celda A2, desde donde se iniciará la grabación
de la Macro.
5
Luego, ejecuta los pasos definidos en la etapa de planificación
Realizar el calculo de los máximos, mínimo y promedio de los demás alumnos
Ubica y selecciona la opción Grabar Macro.
Calcula la máxima nota del rango D2:G2.
Calcula la mínima nota del rango D2:G2.
Calcula el promedio del rango D2:G2.
Selecciona el rango D2:G2 y arrastra el mouse hasta
la fila 41.
6
Realizar el calculo de la máxima, mínima nota y promedio de la clase
Ya que has terminado, haz clic en Detener grabación.
Para ejecutar la macro que creaste previamente, debes hacer lo siguiente:
Para el caso que estás trabajando, ubícate en la celda A5 de la hoja 2.
Ubica y selecciona la opción Ver Macros.
IV. Ejecutando una macro
5
6
Calcula la máxima nota del rango
H2:H41.
Calcula la mínima nota del rango I2:I41.
Calcula el promedio del rango J2:J41.
Aplica los formatos en las
celdas A46, H46, I46 y J46.
Ubícate en la celda A2 de la hoja 2.
7
Aplicación 1.1 Crea una macro que de formato a la cabecera del listado de notas.
Aplicación 1.2
Crea una macro que calcule el promedio y elimine la menor de 5 evaluaciones.
Aplica lo aprendido
1
Ficha de Aprendizaje N° 2
Curso: Excel Advanced Macros
Módulo 1: Conceptos Iniciales
Tema: Asignando botón a una macro
Duración: 2 horas pedagógicas
Asigna un botón a una macro para lograr una ejecución mas sencilla.
Configura la seguridad de una macro para lograr ejecutarla.
Conocimientos previos
Logros de aprendizaje
¿Qué método crees que sea más
práctico para ejecutar una macro?
Comenta con tus compañeros.
1) Menú Vista / Macros/Ver
Macros y clic en Ejecutar
2) Combinación de
teclas: Ctrl + Y
2
Para la creación y manejo de macros avanzadas, Excel posee un conjunto de herramientas
ubicadas en una ficha llamada Programador. Esta no se encuentra disponible dentro de la
instalación básica de Excel. Para activarla, debes hacer lo siguiente:
Las macros
modifica la seguridad
pueden usar botones
Ejecutarlas
1
Mapa de Contenidos
Contenidos de aprendizaje
I. Activando la ficha Programador
Haz clic en el Botón de Office.
se
para para
3
Se activará la ficha Programador dentro de la cinta de opciones de Excel. En ella podremos
encontrar opciones para editar las macros, insertar nuevos controles, entre otras opciones.
Habilita la opción “Mostrar ficha Programador en la cinta de opciones”.
3
2 Haz clic en las Opciones de Excel.
4
Asignar la macro a un botón
nos permitirá una ejecución
más sencilla.
En primer lugar, descarga de la plataforma el archivo edad.xlsx.
Este archivo contiene una macro que permite calcular tu edad a partir de tu fecha de
nacimiento. Para ejecutarla, debes ingresar tu nombre en la celda B1; luego, elige tu fecha de
nacimiento en la celda B3; por último, ejecuta la combinación de teclas Ctrl + Mayus + E. Si no
ingresas tu nombre, la macro te alertará y te pedirá que lo ingreses.
A continuación, asignaremos la macro a un botón nuevo que crearemos dentro de la hoja de
cálculo. Para ello, debes hacer clic en la ficha Programador y seguir los pasos presentados a
continuación:
II. Asignando a un botón una macro
Utilizando el mouse dibuja el botón en la posición que desees.
Ubica y selecciona el siguiente elemento.
5
Si deseas modificar el texto
predeterminado de un botón, solo debes
hacer clic derecho sobre él y escoger la
opción Modificar texto.
Para ejecutar la macro que creaste previamente, basta con hacer clic en el botón Calcula Edad.
Hazlo tú mismo:
En el archivo notas_v2.xlsx, asigna un botón a la macro Calcula_Promedios y prueba su
ejecución. Coloca como texto del botón la palabra “Calcular”.
3
Selecciona la macro que deseas ejecutar y haz clic en Aceptar.
III. Ejecutando una macro desde un botón
6
En algunos casos, en Excel la seguridad de las macros es alta, lo cual hace imposible que
estas se puedan ejecutar. Si vas a ejecutar macros, deberás cambiar la configuración de
seguridad. Para ello, debes hacer lo siguiente:
Aplicación 1.3
Crea una macro que genere una tabla dinámica.
Aplicación 1.4 Asigna a un botón la macro creada en la aplicación anterior.
Aplica lo aprendido
Ubica y selecciona la siguiente opción.
Selecciona esta opción.
Haz
clic
aquí.
3
IV. Configurando la seguridad en las macros
2
1
Ficha de Aprendizaje N° 3
Curso: Excel Advanced Macros
Módulo 1: Conceptos Iniciales
Tema: Conociendo el editor VBA
Duración: 2 horas pedagógicas
Reconoce las funciones de Visual Basic
Identifica las herramientas del entorno de VBA
Conocimientos previos
Logros de aprendizaje
¿Qué elementos (controles)
puedes identificar en el
siguiente formulario?
2
VBA es un lenguaje de programación estructurado creado para ser utilizado dentro de
programas de Microsoft Office. Por ello, una macro de VBA no puede ejecutarse
independientemente del Excel.
Terminología de VBA
Al trabajar con Visual Basic para aplicaciones, será necesario que conozcas el significado de
algunos términos importantes tales como “aplicación”, “tiempo de diseño”, “tiempo de
ejecución”, “formulario”, “objetos”, “propiedades”, “métodos” y “eventos”.
a. Aplicación
Es el programa que has desarrollando utilizando las herramientas de VBA.
b. Tiempo de diseño
Visual Basic para aplicaciones
(BVA)
Lenguaje de programación
Editor
escribir y editar programas
crear formularios
aplicaciones con interfaz gráfica
Mapa de Contenidos
Contenidos de aprendizaje
I. Visual Basic para Aplicaciones (VBA)
es un
se pueden
A través
del
que son
3
Es el momento en que se está diseñando la aplicación.
c. Tiempo de ejecución
Es el momento en que estás ejecutando la aplicación.
d. Formulario
Es el área en donde se colocan los objetos gráficos para la aplicación.
Por ejemplo:
e. Objetos
Un objeto es una denominación común a cualquier elemento de una aplicación; por
ejemplo, una hoja de cálculo, una celda, un formulario, un control, entre otros.
f. Propiedades
Son las características de un objeto.
g. Eventos
Es una notificación de que algo ha ocurrido con el objeto. Son respuestas a acciones
del usuario; por ejemplo, pulsar teclas, hacer clic, doble clic o elegir opciones de un
menú.
h. Métodos
En VBA se pueden producir dos tipos de eventos: los eventos iniciados
por el usuario y los iniciados por el sistema.
4
Son las acciones que un objeto puede realizar, generalmente como respuesta a un
evento.
Observa la relación de los distintos términos en el cuadro:
El Editor de Visual Basic (VBE, por sus siglas en inglés) contiene todas las herramientas de
programación necesarias para escribir y editar programas que, luego, podrás ejecutar en tu
libro de trabajo de Excel.
Para ingresar al editor de VBA, debes hacer clic en el ícono que está ubicado dentro de la
sección Código de la ficha Programador.
Esta es la ventana que se presenta al ingresar al editor de VBA:
Una vez dentro del editor, podrás agregar los elementos y utilizar las herramientas necesarias
que te permitan desarrollar tu aplicación o programa en VBA.
II. El editor de VBA
5
Aquí puedes ver los principales elementos del editor de VBA:
Barra de menú
Proporciona las herramientas necesarias para desarrollar, probar y archivar la aplicación.
Barra de herramientas
Permite activar las tareas más comunes sin necesidad de utilizar los menús.
Explorador de proyectos (ventana de objetos)
Muestra un diagrama de árbol con los libros de trabajo
actualmente abiertos en Excel, donde cada libro es un proyecto.
Desde esta ventana, se puede añadir, seleccionar o eliminar los
objetos del proyecto.
III. Formularios
6
La cuadrícula de
diseño permite
alinear los controles
fácilmente, al mismo
tiempo que diseña
su interfaz.
Un formulario es un contenedor en el que se colocan los controles
(etiquetas, cuadros de texto, cajas de verificación, botones de opción,
listas, etc.), y permite crear una aplicación con interfaz gráfica. Para crear
un nuevo formulario, se debe escoger la opción “UserForm” del menú
Insertar.
Luego de insertar un formulario, este se muestra en conjunto con el cuadro de herramientas.
Los elementos de un formulario son los siguientes:
Cuadro de Herramientas
Se utiliza para dibujar y diseñar controles dentro del formulario.
7
Por ejemplo, para dibujar un botón dentro del formulario, se debe seguir los siguientes pasos:
La ventana de propiedades
Una propiedad es una característica de un objeto como su nombre o color. A través de esta
ventana, se configuran las propiedades en tiempo de diseño.
3
2
Haz clic en la opción “Botón de Comando” del cuadro de herramientas.
Utilizando el mouse, dibuja un rectángulo dentro del formulario.
El botón se mostrará en
la región dibujada.
8
¡Importante!
Se asigna un nombre predeterminado a cada
uno de los controles existentes de un
formulario. Por ejemplo, el primer control Label
que se adicione al formulario se denominará
Label1; si se agrega otro del mismo tipo, se
denominará Label2 y así sucesivamente.
La propiedad Name (o nombre), identifica un
control. Cuando un formulario tiene muchos
controles del mismo tipo, se puede utilizar la
propiedad nombre del control para
identificarlo.
A continuación, se coloca una lista con algunas de las propiedades más comunes de los
formularios.
Backcolor: define el color de fondo del objeto.
Name: es el nombre del objeto; este nombre servirá para identificarlo dentro de la
ventana de VBA.
Caption: es el título del objeto y puede ser diferente de su nombre.
Enabled: si se coloca “False”, el objeto no responderá a ningún evento y se mostrará
como deshabilitado dentro del formulario. Si el valor de la propiedad es “True”,
responderá a sus eventos asociados.
Visible: permite mostrar u ocultar un objeto con las opciones True o False
respectivamente.
Font: es el formato de fuente del texto que posee el objeto.
Por ejemplo, si deseas cambiar el título del botón dibujado anteriormente, basta con
seleccionar e ingresar un nuevo valor en la propiedad Caption, ubicada en la ventana de
propiedades
2
9
Área de programación
Es el lugar en donde se escribirá el código por utilizar para responder a cada evento. En ella se
distinguen dos secciones:
Lista de objetos del
formulario (CommandButton,
TextBox, CheckBox, etc.).
Lista de eventos del objeto
activo (Click, Dblclick,
KeyPress, Change,
MouseDown, etc.).
Para agregar un código al botón dibujado realiza los siguientes pasos:
3
2
Haz clic derecho en el botón y escoge la opción Ver código.
Ingresa el código
indicado en la imagen.
Escoge la opción “Ejecutar Sub/UserForm” del
menú Ejecutar.
10
Obtendrás el siguiente mensaje:
Aplicación 1.5
Dibuja el formulario y coloca las propiedades que se indican en la imagen.
Aplicación 1.6
Ingresa código y ejecuta tu aplicación.
Aplica lo aprendido
3
Haz clic en el botón
Saludar.
1
Ficha de Aprendizaje N° 4
Curso: Excel Advanced Macros
Módulo 1: Conceptos Iniciales
Tema: Primer programa utilizando Excel y VBA
Duración: 2 horas pedagógicas
Crea una macro para escribir en una celda.
Crea una macro para leer el contenido de una celda.
Conocimientos previos
Logros de aprendizaje
¿Crees que sería útil leer los datos
desde las celdas de la hoja de cálculo
en lugar de solicitarlos a través de
un formulario?
2
Ahora verás cómo hacer un primer programa en VBA utilizando los datos de una hoja de
cálculo de Excel.
En primer lugar, vamos a insertar un botón. Este nos mostrará un mensaje con la palabra
“Hola”. El objetivo de este ejercicio es modificar la acción que se realiza al presionar un botón,
por ejemplo, emitir un saludo. Para ello, haz lo siguiente:
Abre una nueva hoja de cálculo en Excel y dibuja un botón dentro de ella. Luego,
coloca como título del botón “Saludar”.
Las Macros
Programas en VBA
escribir
leer
Mapa de Contenidos
Contenidos de aprendizaje
I. Primer programa utilizando Excel y VBA
Aplicaciones (VBA)
permiten
crear
para
y
Contenidos
de celdas
botones
a través de
3
Ahora, asigna el siguiente código al botón dentro del evento Click.
Guarda tu archivo como un libro de Excel habilitado para macros, y cierra el editor de
VBA.
Dentro de la hoja de cálculo, debes salir del modo Diseño y hacer clic en el botón
Saludar que creaste.
2
3
4
4
Vamos a crear una macro que te permitirá modificar el contenido de una celda determinada.
Para ello, realiza los siguientes pasos:
Abre una nueva hoja de cálculo en Excel y dibuja un botón dentro de ella. Además,
coloca como título del botón “Escribir” y como nombre “cmdEscribir”.
Ahora, asigna el siguiente código al botón dentro del evento Click. Posteriormente,
guarda tu archivo como un libro de Excel habilitado para macros y cierra el editor de
VBA.
II. Utilizando una macro para escribir en celdas
2
La instrucción MsgBox permite
mostrar una ventana emergente
acompañada de un texto
personalizado, el cual se indica
como parametro de la instrucción.
5
La instrucción Range permite
modificar el contenido del rango de
celdas que se indiquen como
parametros.
Dentro de la hoja de cálculo, debes salir del modo Diseño y hacer clic en el botón
“Escribir” que creaste.
Vamos a crear una macro que te permitirá leer el contenido de una celda determinada. Para
ello, realiza los siguientes pasos:
En la hoja de cálculo en Excel que has estado trabajando, dibuja un nuevo botón, cuyo
título será “Saludar” y cuyo nombre, “cmdSaludar”. Además, modifica el diseño de tu
hoja de cálculo para que se muestre de la siguiente manera:
3
III. Utilizando una macro para leer el contenido de celdas
6
Los operadores “+” ó “&” permiten
concatenar dos o más valores del tipo
texto.
Ahora, asigna el siguiente código al botón “cmdSaludar” dentro del evento Click.
Posteriormente, guarda tu trabajo y cierra el editor de VBA.
Dentro de la hoja de cálculo, debes salir del modo Diseño, ingresar tu nombre en la celda
B1 y hacer clic en el botón “Saludar” que creaste.
Aplicación 1.7
Dibuja un nuevo botón que borre el contenido de la celda B2.
Aplicación 1.8 Modifica el botón saludar para que agregue al saludo el nombre y apellido.
Aplica lo aprendido
2
3
1
Ficha de Aprendizaje N° 5
Curso: Excel Advanced Macros
Módulo 2: Fundamentos de programación
Tema: Algoritmos y diagramas de flujo
Duración: 2 horas pedagógicas
Comprende el concepto de algoritmo.
Identifica los símbolos de un diagrama de flujo.
Realiza un diagrama de flujo.
Realiza un pseudocódigo.
1 2 3 4 5 ...
Conocimientos previos
Logros de aprendizaje
Si tuvieras que organizar el viaje de
tu promoción. Enumera los pasos
que seguirías.
2
Los algoritmos
conjunto de pasos
resolver problemas
Diagramas de flujo Pseudocódigos
Cotidianamente las personas nos enfrentamos a problemas que resolvemos realizando una
serie de pasos, procedimientos o acciones.
Por ejemplo:
Durante la mañana tenemos la labor de asistir al colegio; para lograrlo, podemos realizar las
siguientes tareas:
1) Despertar.
2) Tomar una ducha.
3) Cambiar de vestimenta.
4) Tomar desayuno.
5) Ingresar a la movilidad.
6) Salir de la movilidad.
7) Ingresar al aula de clases.
Mapa de Contenidos
Contenidos de aprendizaje
I. Algoritmos
son un
para
a través de
3
Concepto de algoritmo
Un algoritmo es un conjunto de pasos definidos y organizados que describen la secuencia
que se debe seguir para dar solución a un problema determinado.
Análisis del problema
Es recomendable hacer un breve análisis del problema antes de aplicar algún algoritmo para
poder resolverlo. Una forma simple de hacer esto es con una breve descripción utilizando el
lenguaje natural.
Por ejemplo:
Calcular el área de un triángulo rectángulo en función a la base y altura.
1. Descripción del problema: se desea calcular el área de un triángulo.
2. Datos que se necesitan para el cálculo (datos de entrada): base, altura.
3. Respuesta por obtener (datos de salida): área.
4. Fórmulas por aplicar: para calcular el área de un triángulo se aplica la siguiente fórmula:
El diagrama de flujo se utiliza para visualizar una secuencia detallada de pasos por seguir para
resolver un problema. En este tipo de diagramas, se utilizan los siguientes símbolos.
Símbolos utilizados en los diagramas de flujo
El algoritmo debe ser legible, correcto, modular, eficiente,
ordenado, conciso y, de ser posible, debe desarrollarse en el
mínimo de tiempo.
Luego de analizar el problema, debes diseñar la solución.
Para ello se pueden utilizar técnicas o métodos estándar como
el uso de diagramas de flujo y pseudocódigos.
II. Diagramas de flujo
4
Representación del símbolo Descripción
Este símbolo marca el inicio y fin de un diagrama de flujo.
Se utiliza para definir los datos de entrada.
Representa un proceso.
Representa una decisión (si algo se cumple, seguir la S; si no fuera el caso,
seguir la N).
Símbolo utilizado para representar una decisión múltiple. En su interior se
almacena una expresión condicional y, dependiendo del valor de dicha expresión,
se sigue por uno de los caminos alternativos.
Este gráfico representa la impresión de un resultado.
Las flechas indican la dirección del flujo del diagrama.
Por ejemplo: diagrama de flujo para calcular el área de un triángulo:
Inicio Fin
Lee los valores de
Base y Altura.
Envía como salida el
valor de la variable
Área.
Inicio del algoritmo.
Inicia en 0 el valor de
Base y Altura.
Realiza el calculo del
área del triangulo.
Termina el
algoritmo.
5
Cualquier método de diseño o
representación de un algoritmo te permitirá,
más adelante, escribir un programa de
computadora en cualquier lenguaje de
programación.
Permite describir un algoritmo en un lenguaje simplificado sin depender de uno de
programación.
Por ejemplo:
a) Pseudocódigo para calcular el área de un triángulo:
b) Pseudocódigo para determinar si un número es par:
Inicio
Leer número.
Calcular el residuo del número entre dos.
Si residuo igual 0, el número es par.
En caso contrario, el número es impar.
Fin
III. Pseudocódigo
6
Aplicación 2.1
Realiza el diagrama de flujo de los problemas planteados.
Aplicación 2.2
Realiza el pseudocódigo de los problemas planteados.
Aplica lo aprendido
1
Ficha de Aprendizaje N° 6
Curso: Excel Advanced Macros
Módulo 2: Fundamentos de programación
Tema: Datos y variables
Duración: 2 horas pedagógicas
Reconoce las partes de un programa y comprende su estructura.
Reconoce la diferencia entre los tipos de datos.
Asigna datos a las variables
Conocimientos previos
Logros de aprendizaje
¿A que operación crees que
pertenezca le siguiente diagrama de
flujo?
2
Un programa es un conjunto de instrucciones que se envían a una computadora para que
realice una o varias acciones. Se compone básicamente de las siguientes partes:
Los programas
cabecera
el objetivo
declaración de constantes
valores que nunca
cambia
declaración de variables
distintos valores
cuerpo
instrucciones para ejecutar
tipos de datos
numérico
alfanumérico
fecha/hora
lógicos
Mapa de Contenidos
Contenidos de aprendizaje
I. Las partes de un programa
se componen de
utilizan diferentes
donde se define que son pueden recibir contiene las
3
1. Cabecera del programa
Define el objetivo del programa comentándolo; es decir, se utiliza para documentar el
programa, lo que las personas suelen dejar en segundo plano. Dentro del comentario, se
incluye lo siguiente:
Autor
Versión actual
Fecha del período de inicio o creación o de la última modificación del programa
El objetivo del programa
Otros detalles que ayuden a documentar el programa
2. Declaración de constantes
Como su nombre lo dice, una constante es un valor que nunca cambia. Para declarar una
constante, se utiliza la variable Const, siguiendo la sintaxis detallada a continuación:
Por ejemplo:
Un comentario sirve para agregar texto dentro de un programa;
dicho texto no será condiserado como una instrucción dentro del
codigo.
En VBA, para colocar un comentario, solo debes anteponer el
carácter apóstrofe (') antes del comentario; así, por ejemplo:
‘Este es un comentario
Nota que el editor de VBA coloca el comentario en un color
verde.
Const nombre_de_constante = valor
4
Const Pi = 3.1415
Recuerda que la constante debe tener un valor asignado.
3. Declaración de variables
Todo programa consta de variables, las cuales podrán cambiar de valor a lo largo de la
ejecución de un programa. Para poder declarar una variable, debes seguir la siguiente sintaxis:
Aquí tienes algunos ejemplos de declaración de variables:
Dim edad as Integer
Dim nombre as String
Dim resultado as Boolean
4. Cuerpo del programa
Dentro de esta sección, se colocan las instrucciones que deseamos que ejecute el computador.
Pueden ser simples o complejas dependiendo de la aplicación que estás desarrollando.
Por ejemplo:
Área = (base * altura) /2
II. Tipos de datos
A diferencia de una constante, una variable puede recibir distintos valores. Por
ejemplo, si declaramos una variable llamada edad, en una ejecución puede adoptar
el valor 20; en otra, 30, y así indefinidamente.
Por el contrario, una constante recibe un valor desde su declaración, el cual no
cambiará.
Integer, String y Boolean son tipos de
datos manejados por VBA. Más
adelante, revisaremos los conceptos
acerca del manejo de variables y tipos
de datos.
5
Al desarrollar un programa, muchas veces se manejan datos de diferentes tipos, tales como
números, letras, fechas u otros, los cuales dependen del valor que ellos representan.
Por ejemplo:
Nombre de una persona ¿Eres mayor de edad?
Tipo de cambio del dólar Porcentaje de IGV
VBA maneja los datos agrupándolos de acuerdo a los siguientes tipos:
1. Datos numéricos
Están conformados por los caracteres numéricos del 0 al 9 y los caracteres especiales “+”, “-“,
“( )”, “/”, “e” (formato científico).
Los principales tipos de datos numéricos son los siguientes:
Byte: generalmente es utilizado para representar números naturales. Ocupa 1 byte
desde 0 hasta 255.
Integer: generalmente es utilizado para representar números enteros. Ocupa 2 bytes y
puede tomar un valor desde -32,768 hasta 32,767.
Long: generalmente es utilizado para representar números enteros largos. Ocupa 4
bytes y puede tomar un valor desde −2,147,483,648 hasta 2,147,483,647.
Single: generalmente es utilizado para representar números reales. Ocupa 4 bytes y
puede tomar un valor desde -3,4028235E+38 hasta -1,401298E-45 para números
negativos, y desde 1,401298E-45 hasta 3,4028235E+38 para números positivos.
2. Datos alfanuméricos
Un dato alfanumérico es aquel que está formado solo por letras o por letras y números a la vez.
Puede ser solo un carácter (por ejemplo, “a”) o una cadena de caracteres, la cual está
conformada por más de un carácter (por ejemplo, “marco”, “A001”).
Para VBA, el tipo de dato alfanumérico es el String.
3. Datos fecha/hora
La fecha se almacena como números de serie y la hora, como fracciones de decimales. Esta
es la razón por la cual una fecha y hora pueden ser utilizadas para realizar operaciones de
cálculo.
6
Sin embargo, estos datos pueden ser presentados de acuerdo con el formato que sean
requeridos:
Fecha : DD/MM/AA o DD-MM-AA
Hora : HH:MM:SS AM/PM o HH:MM
Para VBA, este tipo de dato alfanumérico es el Date.
4. Datos lógicos
Permite usar variables que tienen dos posibles valores: verdadero o falso.
Por ejemplo:
¿Aprobaste el examen?
¿Sabes inglés?
Para VBA, el tipo de dato lógico es el Boolean.
Cuando un programa solicita el ingreso de un dato, este será almacenado en un espacio de
memoria de la computadora. A este espacio de memoria se le llama variable.
1. Declaración de variables
Para poder utilizar variables dentro de un programa, estas deben ser declaradas al inicio de
este con su respectivo nombre, tipo y con la sintaxis siguiente.
Por ejemplo:
a) Declaración de un tipo de dato entero:
Dim nota as Interger
III. Variables en VBA
Recuerda:
Dato Tipo
Numérico Byte, Integer, Long, Single
Alfanumérico String
Fecha/hora Date
Lógicos Boolean
7
b) Declaración de un tipo de dato lógico (boolean):
Dim aprobado as Boolean
c) Declaración de un tipo de dato texto:
Dim texto as String
2. Asignando datos a las variables
Para asignarle un valor a una variable se usa el operador “=”. Por ejemplo:
Para asignar un valor a una variable del tipo texto, se debe colocar
entre comillas dicho valor a la derecha del símbolo =.
Para asignar un valor a una variable numérica, basta con colocar dicho
valor a la derecha del símbolo =.
Reglas para nombrar una variable:
Se pueden usar letras, números y algunos caracteres de puntuación, pero
el primer carácter debe ser siempre alfabético.
VBA no distingue entre mayúsculas o minúsculas; se recomienda seguir
un estándar para hacerlo legible.
No se pueden usar espacios ni puntos.
No se pueden usar algunos caracteres especiales como “#”, “$”, “%” o “!”.
Los nombres pueden contener hasta 254 caracteres de longitud.
Existen palabras reservadas tales como Dim, Date, Integer, If, entre
otras, las cuales no se pueden emplear para nombres de variables.
Dim nombre as String
nombre=”marco”
Dim edad as Integer
edad =15
8
Aplicación 2.3
Relaciona los datos numéricos según el tipo al que pertenezcan.
Aplicación 2.4 Identifica los distintos tipos de datos.
Aplicación 2.5 Escribe un código en VBA que calcule el área de un triángulo.
Aplica lo aprendido
1
Ficha de Aprendizaje N° 7
Curso: Excel Advanced Macros
Módulo 2: Fundamentos de programación
Tema: Operaciones en VBA
Duración: 2 horas pedagógicas
Identifica los tipos de operaciones que puede realizar en VBA.
Resuelve operaciones combinadas utilizando código VBA.
Conocimientos previos
Logros de aprendizaje
Recuerdas como resolver
operaciones combinadas. Desarrolla
el ejercicio que se presenta a
continuación y compara el
resultado con tus compañeros
2
Con VBA se puede realizar los siguientes tipos de operaciones, las cuales dependen de los
tipos de datos que tengan.
Operación Tipo de dato
Aritmética Byte, Integer, Long, Single
Lógica Boolean
Concatenación String
VBA
operaciones
aritméticas
Byte, Integer, Long, Single
lógicas
Boolean
de concatenación
String
Mapa de Contenidos
Contenidos de aprendizaje
I. Operaciones en VBA
realiza
de tipo
con datos
3
Reglas para resolver operaciones aritméticas
• Las operaciones son evaluadas de izquierda a derecha.
• El orden de precedencia de los operadores es el siguiente:
1. ()
2. ^
3. *, /
4. Mod
5. +, -
1. Operaciones aritméticas
Las operaciones aritméticas básicas que podemos realizar son suma, resta, multiplicación y
división. Entre los operadores aritméticos, tenemos:
Operador Ejemplo Tipo de operación Resultado
+ 5+2 Suma 7
- 5-2 Resta 3
* 5*2 Multiplicación 10
/ 5/2 División 2.5
^ 5^2 Exponente (“elevado a la”) 25
Mod 18 mod 7 Obtiene el residuo de una división. 4
Por ejemplo, vamos a resolver, utilizando el código en VBA, la siguiente operación combinada:
Para ello, deberás descargar el archivo operadores.xlsx y asignar el siguiente código al botón
Resolver que se encuentra en la hoja de cálculo:
Declaramos una variable para calcular el resultado.
4
Guarda tu archivo y presiona el botón Resolver. Tu trabajo debe verse así:
2. Operaciones lógicas
Se utilizan para establecer condiciones entre expresiones. Entre los operadores lógicos,
tenemos:
Operador Ejemplo Tipo de operación Resultado
And (5<2) and (3>8) Y (conjunción) Falso
Or (6>=4) or (2<1) O (disyunción) Verdadero
Not Not (2>1) NO (negación) Verdadero
3
2 Calculamos el valor de la
operación combinada.
Asignamos el valor calculado a la celda B3.
5
3. Operaciones de concatenación
Se utiliza para unir textos.
Operador Ejemplo Tipo de operación Resultado
& o + “Milagros ” & “Pérez” concatenación Milagros Pérez
Por ejemplo, descarga el archivo nombre.xlsx y asigna el siguiente código al botón Saludar:
Declaramos las variables.
2 Leemos los valores de entrada.
3 Realizamos la concatenación.
6
Guarda tu trabajo y presiona el botón Saludar. Tu trabajo debe verse así:
Aplicación 2.6
Resuelve las siguientes operaciones combinadas utilizando código VBA.
Aplicación 2.7
Concatena el nombre y edad de las personas en la lista mostrada.
Aplica lo aprendido
4
Mostramos el resultado a través de una ventana emergente.
1
Ficha de Aprendizaje N° 8
Curso: Excel Advanced Macros
Módulo 2: Fundamentos de programación
Tema: Formularios
Duración: 2 horas pedagógicas
Elabora un formulario con los elementos que lo componen
Asigna código a un botón para mostrar cálculos
Conocimientos previos
Logros de aprendizaje
En la siguiente imagen, ¿qué
elementos del editor de VBA
recuerdas?.
2
Un formulario facilita la
comunicación directa
entre el usuario y el
programa.
Ahora vas a realizar un programa utilizando un formulario, el cual permitirá recoger los datos de
entrada de una manera más amigable para el usuario.
Para dibujar un formulario en Excel, realiza los siguientes pasos:
Los formularios en VBA
Datos de entrada Elementos de la
Caja de controles
Etiquetas
texto no editable
Cajas de texto
ingreso de información
Botones de comando
ejecutar una orden
Mapa de Contenidos
Contenidos de aprendizaje
I. Formularios en VBA
permiten recoger se crean con
para visualizar que permiten que permiten
como
3
Se mostrará el formulario y un cuadro de herramientas que permitirá dibujar diversos controles
en el formulario:
Antes de elaborar tu programa con formularios, debes conocer el uso de los principales
elementos de la caja de controles que puedes utilizar.
1. Etiquetas
Se utilizan para visualizar el texto que no se puede editar. De este modo, el usuario puede
reconocer otros controles.
2
Haz clic en la ficha Programador; luego, en la opción Visual Basic
Haz clic en el menú Insertar; luego, en la opción UserForm
4
Para dibujar una etiqueta dentro de un formulario en Excel, debes seguir los siguientes pasos:
Tu trabajo debe verse así:
2
Haz clic en el botón Etiqueta del cuadro de herramientas.
Dibuja la etiqueta dentro del formulario.
3 Modifica la propiedad Caption del control “Label” dibujado. Coloca como título “Ingresa un número”.
5
2. Cajas de texto
Permite que el usuario ingrese una información a la aplicación y que esta sea visualizada por
él. Asimismo, sirven para mostrarle determinada información. Por lo tanto, se considera un
control de “entrada y salida de datos”.
Para dibujar una caja de texto dentro de un formulario en Excel, debes seguir los siguientes
pasos:
Tu trabajo debe verse así:
Además, completa el formulario para que el trabajo luzca como se muestra:
2
3
Haz clic en el botón Cuadro de texto del cuadro de herramientas.
Dibuja el cuadro de texto dentro del formulario.
Modifica la propiedad nombre del control “TextBox” dibujado. Coloca como nombre “txtNumero”.
6
3. Botones de comando
Permiten ejecutar una orden tal como realizar cálculos, validaciones, mostrar mensajes, entre
otras. Para dibujar una caja de texto dentro de un formulario en Excel, realiza los siguientes
pasos:
Haz clic en el botón Botón de Comando del cuadro de herramientas.
2 Dibuja el Botón dentro del formulario.
3 Modifica las propiedades:
Nombre: cmdCalcular
Caption: Calcular
7
Tu trabajo debe verse así:
Ahora asignaremos el código que permita mostrar el cálculo de la suma de los N primeros
números. Recuerda que la suma de los ”n” primeros números naturales obedece a la fórmula:
Haz clic derecho en el botón Calcular y escoge la opción Ver código.
2
< Ingresa el siguiente código dentro del evento Click del botón Calcular.
8
La funcion CInt permite convetir un
tipo de texto texto a un tipo Entero.
Guarda tu trabajo, ejecuta tu aplicación con el botón F5. Luego ingresa un número válido en el
cuadro de texto correspondiente y presiona el botón Calcular.
Aplicación 2.8
Crea un formulario que solicite como datos de entrada la base y la altura de un triángulo isósceles y devuelva como resultado el área.
Aplicación 2.9
Crea un formulario que convierta un valor de grados centígrados a grados Fahrenheit.
Aplica lo aprendido
1
Ficha de Aprendizaje N° 9
Curso: Excel Advanced Macros
Módulo 3: Programación modular
Tema: Procedimientos
Duración: 2 horas pedagógicas
Crea procedimientos que calculen diversas operaciones,
Conocimientos previos
Logros de aprendizaje
Completa el siguiente diagrama de
flujo de un programa que permita
calcular el volumen de un cubo.
2
La programación modular se basa en la filosofía de “divide y vencerás”; es decir, se divide el
problema planteado en problemas más simples, y cada uno de estos será implementado en
módulos independientes, los cuales, en el entorno de VBA, se conocen como subprogramas.
Un subprograma es un conjunto de instrucciones que permiten realizar una tarea específica.
Los subprogramas en VBA
conjunto de intrucciones
tarea específica
Dos tipos
Procedimientos
tareas relacionadas.
Funciones
Mapa de Contenidos
Contenidos de aprendizaje
I. Subprogramas en VBA
En VBA existen dos tipos de subprogramas:
Procedimiento
Función
son un
que permiten realizar
son de
que realizan
3
Procedimiento
Un procedimiento es una parte de un programa que realiza una o más tareas relacionadas y
que tiene su propio nombre. El procedimiento puede tener cero, uno o más argumentos
(parámetros de entrada) y se caracteriza por no poseer parámetros de salida.
Esta es la sintaxis para el uso de procedimientos en VBA:
Donde arg1, arg2, arg3, …, argn son los parámetros o argumentos del procedimiento.
Por ejemplo:
Procedimiento que usa una hoja de Excel y lee los datos necesarios para calcular el área de un
trapecio:
Invocando a un procedimiento
Invocar a un procedimiento se define como la llamada o uso que se hace a un procedimiento
desde alguna parte del programa. Esto lo puedes hacer de dos formas:
1ra forma: NombreProcedimiento (arg1, arg2, arg3, …, argn)
2da forma: Call NombreProcedimiento (arg1, arg2, arg3, …, argn)
Por ejemplo:
Elaboraremos un procedimiento que limpie los valores ingresados en un formulario. Para ello
realiza los siguientes pasos.
4
Las propiedades de los controles son las siguientes:
Control Name Caption
Form frmArea Área de un trapecio
Label lblBaseMayor Base mayor
Textbox txtBaseMayor
Label lblBaseMenor Base menor
Textbox txtBaseMenor
Label lblAltura Altura
Textbox txtAltura
Command button cmdLimpiar Limpiar
Label lblArea Área
Textbox txtArea
Diseña el siguiente formulario.
Creamos un procedimiento que coloque en blanco la propiedad Text de las cajas de texto.
2
Invocamos el procedimiento en el evento Click del botón Limpiar.
3
5
Guarda tu trabajo y presiona el botón Ejecutar. Luego, ingresa cualquier valor en los campos
de entrada y presiona el botón Limpiar. Tu trabajo debe verse así:
Para borrar el valor ingresado en un cuadro de texto, basta
con asignar una cadena de texto vacía (“”) a la propiedad
Text.
Por ejemplo
txtBase.Text = ""
4
Tu código debe lucir de esta manera.
6
Aplicación 3.1
Crea un procedimiento que concatene el nombre y apellido. Los datos serán ingresados en celdas de Excel y el resultado se mostrará en una ventana emergente.
Aplicación 3.2
Crea un procedimiento que calcule el promedio de 4 números. Los valores deben ser ingresados en un formulario y el resultado se mostrará en una ventana emergente.
Aplica lo aprendido
1
Ficha de Aprendizaje N° 10
Curso: Excel Advanced Macros
Módulo 3: Programación modular
Tema: Funciones
Duración: 2 horas pedagógicas
Desarrolla programas con funciones propias y del editor de VBA.
Conocimientos previos
Logros de aprendizaje
En el siguiente diagrama de flujo,
¿cuantos módulos crees que
conformen el programa? ¿Será
importante dividir el programa en
subprogramas más pequeños?
2
Al desarrollar un programa en VBA,
puedes crear tus propias funciones o
utilizar las funciones proporcionadas por
el editor de VBA y Excel.
Una función es un subprograma diseñado para realizar una tarea específica. Una función toma
una lista de valores de entrada llamados argumentos o parámetros, y devuelve un único valor
como salida.
c
Esta es la sintaxis para el uso de funciones en VBA:
Los subprogramas en VBA
Dos Tipos
Procedimientos Funciones
argumentos
entradas
un valor único
salida
Mapa de Contenidos
Contenidos de aprendizaje
I. Funciones en VBA
son de
ingresan devuelven
como como
3
Recuerda que en este caso
necesitamos insertar un
formulario en VBA.
Donde: arg1, arg2, arg3, …., argn son los parámetros o argumentos de la función.
Por ejemplo:
Función que calcula el promedio de 3 notas.
Invocando a una función
Invocar a una función se define como la llamada o uso que se hace a una función desde dentro
de un subprograma. Para ello, debes digitar su nombre, sus argumentos entre paréntesis y,
finalmente, asignar el resultado a una variable.
variable_resultado = nombre_funcion(arg1, arg2, arg3,….., argn)
Por ejemplo, vamos a elaborar un programa que calcule el área de un trapecio.
El diseño será como se muestra a continuación:
Las funciones no pueden ser ejecutadas directamente desde
el editor de VBA. Para ello, es necesario definir un
procedimiento que las invoque.
Parámetros de entrada
Salida de la función
Palabra reservada: Function
End Function
4
El diagrama de flujo que representa el programa que se ejecutará en el formulario es el
siguiente:
Ahora vamos a escribir el código que calcule el área del trapecio. Para ello, realiza los
siguientes pasos:
En este caso, vamos a asignar los siguientes valores a las propiedades antes mencionadas:
Dibuja el formulario que se muestra en la imagen. No olvides modificar las propiedades Name y Caption de cada control.
5
Control Name Caption
Form frmArea Área de un trapecio
Label lblBaseMayor Base mayor
Textbox txtBaseMayor
Label lblBaseMenor Base menor
Textbox txtBaseMenor
Label lblAltura Altura
Textbox txtAltura
Command button cmdCalcular Calcular
Label lblArea Área
Textbox txtArea
3
4
Leemos los datos de entrada.
2
Creamos una función que calcule el área del trapecio.
5
Invocamos a la función que creamos en el paso 2.
6
Guarda tu trabajo y presiona el botón Ejecutar. Tu trabajo debe verse así:
Para establecer el valor de salida de una función, se debe
escribir el nombre de la función y asignarle un valor o una
variable determinada. Por ejemplo:
Function areaTrapecio (baseMayor, baseMenor, altura) As Double
areaTrapecio = area
End Function
6
Asignamos a la propiedad Text de la caja de texto el valor del resultado.
7
Aplicación 3.3
Crea una función que calcule la raíz cuadrada de un número determinado.
Aplicación 3.4
Crea una función que permita resolver una ecuación de segundo grado tomando como entrada los coeficientes.
Aplica lo aprendido
1
Ficha de Aprendizaje N° 11
Curso: Excel Advanced Macros
Módulo 3: Programación Modular
Tema: Funciones predefinidas: texto
Duración: 2 horas pedagógicas
Comprende las diferencias entre los tres grupos de funciones.
Asigna funciones de texto a un botón.
Conoce funciones más importantes para el manejo de cadenas de texto.
Dim cadena as String
cadena = “Excel Avanzado”
Conocimientos previos
Logros de aprendizaje
Si tuvieras el siguiente texto ¿Cómo
determinarías la cantidad de
caracteres que la componen?
Comenta tu opinión en clase.
2
Son aquellas funciones que vienen incorporadas en VBA y que puedes utilizar o invocar desde
dentro de tus subprogramas cuando lo necesites.
VBA
FUNCIONES DE CADENA DE TEXTO
Un conjunto de caracteres numéricos y alfanuméricos.
FUNCIONES MATEMÁTICAS
FUNCIONES DE FECHA Y HORA
FUNCIONES PREDETERMINADAS
Mapa de Contenidos
Contenidos de aprendizaje
I. Funciones Predefinidas en VBA
Estas funciones se dividen en tres grandes grupos:
Funciones de cadena de texto
Funciones matemáticas
Funciones de fecha/hora
tiene incorporadas
que se dividen en
Para trabajar con
3
Recuerda que el valor de
una cadena de texto debe
ir entre comillas (“ “).
1. Funciones de cadena de texto
Una cadena de texto es un conjunto de caracteres numéricos y/o alfanuméricos.
Por ejemplo:
“hola, mundo”
“AIV-261”
“12345”
Por ejemplo, abre un nuevo archivo de Excel y dibuja un botón.
Asigna el siguiente código:
3
2 Asignamos un valor a la variable,
Declaramos una variable del tipo String también llamado Cadena de textos,
Enviamos la variable a la salida.
4
Guarda tu trabajo y presiona el botón anteriormente creado. Deberás obtener el siguiente
mensaje:
Posición de un carácter en una cadena
Se denomina posición de un carácter en una cadena al lugar que ocupa comenzando a contar
a partir de uno.
Por ejemplo:
Cadena V i s u a l B a s i c
Posición 1 2 3 4 5 6 7 8 9 10 11 12
A continuación conocerás las funciones más importantes para el manejo de cadenas de texto.
LEFT (cadena, n)
Devuelve los “n” primeros caracteres de una cadena a partir de la izquierda. Por ejemplo:
Salida
5
RIGHT (cadena, n)
Devuelve los últimos “n” caracteres. Por ejemplo:
MID (cadena, m, n)
Extrae ‘n’ caracteres a partir de la posición ‘m’. Por ejemplo:
LEN (cadena)
Devuelve la longitud de la cadena, es decir la cantidad de caracteres de la que esta
compuesta. Por ejemplo:
Salida
Salida
Salida
6
TRIM (cadena)
Omite los espacios al lado izquierdo y/o derecho de una cadena, pero no borra los espacios
dentro de esta. Por ejemplo:
También existen funciones que permiten realizar conversiones entre tipos de datos, como
convertir un formato tipo número a uno tipo texto o viceversa.
STR (numero)
Convierte un número a una cadena de caracteres. Por ejemplo:
Salida
Salida
7
VAL (cadena)
Convierte una cadena de caracteres, que contenga solo números, a su correspondiente valor
numérico. Por ejemplo:
Aplicación 3.5
Crea un formulario que genere un código a partir de los datos ingresados.
Aplicación 3.6
Crea un formulario que indique cuantas letras tiene una frase determinada sin contar los espacios en blanco anteriores o posteriores a dicha frase.
Aplica lo aprendido
Salida
1
Ficha de Aprendizaje N° 12
Curso: Excel Advanced Macros
Módulo 3: Programación Modular
Tema: Funciones predefinidas: matemáticas, fecha y hora
Duración: 2 horas pedagógicas
Crea funciones utilizando datos numéricos y operaciones matemáticas.
Crea funciones matemáticas y las incorpora en formularios.
Conocimientos previos
Logros de aprendizaje
¿Cómo sería el algoritmo para calcular
la raíz cuadrada de un número
determinado?
2
2. Funciones matemáticas
Son funciones que operan sobre datos numéricos o los devuelven. Para desarrollar los
ejemplos, abre un nuevo archivo de Excel y dibuja un botón tal como se muestra en la siguiente
figura.
VBA
FUNCIONES DE CADENA DE TEXTO
Un conjunto de caracteres numéricos y alfanuméricos.
FUNCIONES MATEMÁTICAS
Datos numéricos
FUNCIONES DE FECHA / HORA
FUNCIONES PREDETERMINADAS
Mapa de Contenidos
Contenidos de aprendizaje
tiene incorporadas
que se dividen en
Para trabajar con Para trabajar con
3
Recuerda que el operador “_” permite coloca en varias lineas una misma
sentencia y tiene el mismo efecto de haberla colocado en una mima linea.
Por ejemplo: MsgBox “Hola ” _
& “mundo”
Eqiuvale a MsgBox “Hola mundo”
Las principales funciones para el trabajo con números son las siguientes:
SQR (número)
Devuelve la raíz cuadrada del número ingresado como parámetro. Por ejemplo:
ABS (número)
Devuelve el valor absoluto del número ingresado como parámetro. Por ejemplo:
ROUND (número, decimales)
Redondea un número a una cantidad de decimales especificado. Por ejemplo:
Salida
Salida
4
RND
Proporciona un número aleatorio en el rango [0,1>. Por ejemplo:
APPLICATION.PI()
Devuelve el valor de π. Por ejemplo:
INT (número)
Devuelve el mayor valor entero de un número decimal. Por ejemplo:
Salida
Salida
Salida
Salida
5
3. Funciones de fecha y hora
VBA cuenta con algunas funciones que permiten realizar cálculos con fechas y horas. Para
desarrollar los ejemplos, en una nueva hoja, dibuja un botón tal como se muestra en la
siguiente figura.
Entre las principales funciones, se tienen:
DATE
Devuelve la fecha actual con formato MM/DD/YYYY, donde MM: Mes; DD: Día; YYYY: Año. Por ejemplo:
TIME
Devuelve la hora actual en el formato HH:MM:SS.SSS, donde HH: Horas; MM: Minutos; SS: Segundos. Por ejemplo:
Salida
Salida
6
NOW
Devuelve la fecha y la hora del día. Por ejemplo:
Aplicación 3.7 Crea una función que devuelva números enteros aleatorios entre 1 y 20.
Aplicación 3.8
Crea un formulario que permita calcular el área de un círculo cuyo radio sea un dato entrada.
Aplica lo aprendido
Salida
1
Ficha de Aprendizaje N° 13
Curso: Excel Advanced Macros
Módulo 4: Estructuras de control
Tema: Estructura Condicional lf, then, else
Duración: 2 horas pedagógicas
Diseña e implementa un programa utilizando una estructura condicional simple.
Diseña e implemente un programa utilizando una estructura condicional con
contingencia de la forma.
Conocimientos previos
Logros de aprendizaje
Escribe el seudocódigo o diagrama
de flujo de un programa que
determine si un alumno está
aprobado o desaprobado en base a
su nota final.
2
1 Estructuras de control condicional
Son aquellas que permiten verificar si el programa cumple una determinada condición para que
se pueda ejecutar un conjunto de instrucciones definidas.
Por ejemplo: si se desea imprimir el resultado final que obtuvo un alumno en un curso, se
debería llegar a la siguiente condición:
Si el promedio es mayor que 10.5, entonces:
VBA
Estructuras de control
CONDICIONAL
De la forma: If...then...else
De la forma: If...then
DE CICLO REPETITIVO
Mapa de Contenidos
Contenidos de aprendizaje
I. Estructuras de control en VBA
En el mundo de la programación, existen dos tipos de estructuras
de control:
Estructuras de control condicional
Estructuras de control de ciclos repetitivos
tiene
de dos tipos:
simple
con contingencia
3
El resultado de una expresión
booleana puede ser TRUE
(verdadero) o FALSE (falso).
Imprimir “Aprobado”
Caso contrario:
Imprimir “Desaprobado”
A continuación, estudiaremos cada uno de los tipos de estructuras condicionales con mayor
detalle.
1.1 Condicional simple de la forma: If… then
Se utiliza cuando se necesita realizar un conjunto de acciones establecidas siempre y cuando
se cumpla una condición.
Su sintaxis es la siguiente:
Esto quiere decir que si se cumple la expresión booleana, se realizarán todas las sentencias
escritas después del then.
Su representación en diagrama de flujo es la siguiente:
Observa el siguiente ejemplo de aplicación:
En VBA, los principales tipos de estructuras condicionales son las siguientes:
Condicional simple de la forma: If….then
Condicional con contingencia de la forma: If….then….else
Condicionales anidadas
Condicional múltiple de la forma: Select….case
4
Se desea diseñar e implementar un programa que permita verificar si un número es par o
impar.
Diagrama de flujo
Ahora vamos a escribir el código que nos permita determinar si un número es par. Para ello,
realiza los siguientes pasos:
En este caso, vamos a asignar los siguientes valores a las propiedades antes mencionadas
Control Name Caption
Form frmDeterminar Determinar si un número es par
Label lblNumero Ingrese un número
Textbox txtNumero
Command button cmdVerificar Verificar
Dibuja el formulario que se muestra en la imagen. No olvides modificar las propiedades Name y Caption de cada control.
5
Guarda tu trabajo, ejecuta el formulario, ingresa un número y presiona el botón Verificar. Tu
trabajo debe verse así:
3
2 Declaramos las siguientes variables en el evento Click del botón Verificar.
Leemos el dato de entrada.
4
Calculamos el residuo de dividir entre 2.
5 Agregamos la sentencia “If” que emitirá el mensaje de salida solo si el residuo es cero.
6
1.2 Condicional con contingencia de la forma: If… then… else
Se utiliza cuando se desea que se ejecuten de un grupo de instrucciones cuando la condición
sea verdadera, y de otro grupo de instrucciones cuando la condición sea falsa.
Su sintaxis es la siguiente:
Su representación en diagrama de flujo es la siguiente:
Para el ejemplo anterior, en caso el número no sea par, mostraremos un mensaje indicando
que el número es impar. Para ello, realiza los siguientes pasos:
7
No olvides que siempre debes iniciar con la
sentecnia If y terminar con las palabras End if. En
caso contrario, el editor de VBA mostrará un error.
Guarda tu trabajo, ejecuta el formulario, ingresa un número y presiona el botón Verificar. Tu
trabajo debe verse así:
]
1
Completaremos la sentencia “Else”
dentro del bloque If.
8
Aplicación 4.1
Elabora un programa que emita un saludo “Buenos días” o “Buenas noches” según la hora del día.
Aplicación 4.2
Elabora un programa que permita calcular el menor de 3 valores ingresados.
Aplica lo aprendido
1
Ficha de Aprendizaje N° 14
Curso: Excel Advanced Macros
Módulo 4: Estructuras de control
Tema: Condicionales anidadas y múltiple
Duración: 2 horas pedagógicas
Elabora un programa utilizando una estructura condicional anidada.
Elabora un programa utilizando una estructura condicional multiple.
Observa el siguiente diagrama. ¿Qué
tipo de número crees que permita
determinar?
Conocimientos previos
Logros de aprendizaje
2
Cuando trabajas con
estructuras condicionales
anidadas, todo bloque de
sentencias que tenga más
de una instrucción debe
terminar con End If.
1.3 Condicionales anidadas
Se utiliza cuando una de las sentencias de una estructura condicional es otra estructura
condicional.
Por ejemplo: en una tienda comercial, desean hacer un descuento a sus clientes tomando
como primera condición que sean de sexo femenino y, dentro de esta condición, que sean
mayores de 50 años.
Existen diferentes formas de anidar estructuras condicionales, por lo que no existe una sintaxis
única. Presta atención al siguiente ejemplo de sintaxis basado en el caso anterior:
VBA
Estructuras de control
CONDICIONAL
Una estructura condicional dentro de
otra
De la forma: Select…case
DE CICLO REPETITIVO
Mapa de Contenidos
Contenidos de aprendizaje
tiene
de dos tipos:
múltiple
anidadas
3
Por ejemplo, se desea elaborar un programa en VBA que permita clasificar la resistencia de un
producto cuando se expone a altas temperaturas, teniendo como dato de entrada el porcentaje
de pérdida de peso del producto y como salida, la clasificación correspondiente.
Porcentaje de pérdida de peso Clasificación
Menor o igual a 1 Altamente resistente
Mayor a 1 pero menor o igual a 5 Resistente
Mayor a 5 pero menor o igual a 10 Medianamente resistente
Mayor a 10 pero menor o igual a 20 Muy poco resistente
Mayor a 20 No resistente
Diagrama de flujo
Implementación del programa
4
Ahora vamos a escribir el código que nos permita desarrollar el programa indicado
anteriormente. Para ello, realiza los siguientes pasos:
3
2 Declaramos la variable de entrada en el evento Click del botón Calcular.
Leemos el dato de entrada.
Dibuja el formulario que se muestra en la imagen.
4
Agregamos las sentencias que contienen los condicionales anidados.
5
Aquí se ejecutan las
sentencias ubicadas en la
lista que coincidan o
contengan el valor de la
expresión.
Guarda tu trabajo, ejecuta el formulario, ingresa un número y presiona el botón Calcular. Tu
trabajo debe verse así:
1.4 Condicional múltiple de la forma Select… case
Permite ejecutar un conjunto de sentencias que posee varios bloques, similar a la sentencia If...
then... else, con la diferencia de que, al existir varias opciones, el código es más comprensible.
La sintaxis de una condicional múltiple es la siguiente:
Si la expresión no se encuentra en ninguna de las listas, entonces se ejecutan las sentencias
del bloque Case Else. Este bloque es opcional; se coloca solo si es necesario.
6
Su diagrama de flujo es el siguiente:
Por ejemplo: se desea elaborar un programa que reciba como dato de entrada un número
entero entre 1 y 7, y luego escriba el día de la semana correspondiente. Es decir: 1=Lunes,
2=Martes, 3=Miércoles, 4=Jueves, 5=Viernes, 6=Sábado, 7=Domingo
Ahora vamos a escribir el código que nos permita desarrollar el programa indicado
anteriormente. Para ello, realiza los siguientes pasos:
3
2 Declaramos la variable de entrada en el evento Click del botón Día de la semana.
Leemos el dato de entrada.
Dibuja el formulario que se muestra en la imagen.
7
Guarda tu trabajo, ejecuta el formulario, ingresa un número y presiona el botón Día de la
semana. Tu trabajo debe verse así:
4 Agregamos una validación al dato de entrada.
5 Agregamos las sentencias condicionales múltiples.
8
La sentencia Exit Sub permite finalizar un
procedimiento sin que se ejecuten las lineas
posteriores a dicha sentencia.
Aplicación 4.3 Elabora un programa que emita un saludo “Buenos días”, “Buenas tardes” o “Buenas noches” según la hora del día.
Aplicación 4.4
Elabora un programa que permita el porcentaje de descuento que obtendrá un cliente de acuerdo a la frecuencia de asistencia en el año a un cine.
Aplica lo aprendido
1
Ficha de Aprendizaje N° 15
Curso: Excel Advanced Macros
Módulo 4: Estructuras de control
Tema: Bucles dela forma For…Next
Duración: 2 horas pedagógicas
Utiliza estructuras de control de ciclos repetitivos For… Next
Conocimientos previos
Logros de aprendizaje
¿Qué conjunto de sentencias nos
permitirán resolver la siguiente
ecuación?
2
Las estructuras de repetición permiten ejecutar una o más líneas de código repetidamente. A
los bloques de instrucciones repetitivos se les conoce como bucles o iteraciones.
Por ejemplo:
Si se desea elaborar un programa que imprima los 100 primeros números naturales, con lo que
conoces hasta el momento, lo harías de la siguiente manera.
VBA
Estructuras de control
CONDICIONAL DE CICLO REPETITIVO
For...Next
Un número exacto de repeticiones
Mapa de Contenidos
Contenidos de aprendizaje
I. Estructuras de control de ciclos repetitivos
tiene
de dos tipos:
donde se define
como
3
El contador es una forma de controlar las
iteraciones realizadas. Este sufre un
incremento o decremento en una cantidad
fija en cada iteración.
Si no se coloca Step, el contador se
incrementará en 1 en cada iteración.
Pero utilizando estructuras de control de ciclos repetitivos, lo podrías hacer con un algoritmo
más simple como este.
1.1 Ciclos de la forma For… Next
Se utiliza cuando se conoce el número exacto de repeticiones por ejecutar.
Su sintaxis es la siguiente:
El bloque de sentencias es ejecutado tantas veces como lo indique el contador desde su valor
inicial hasta el final, tomando en cuenta el incremento o decremento indicado en Step.
Su diagrama de flujo es el siguiente:
Donde:
I: es el contador.
vi: es el valor inicial del contador.
vf: es el valor final del contador.
En VBA, los principales tipos de estructuras de control de ciclos repetitivos son los siguientes:
Ciclos de la forma: For.... Next
Ciclos de la forma: Do… Loop While
4
Por ejemplo:
Se desea elaborar un programa que permita imprimir los números pares desde un inicio y fin
ingresados por el usuario. Para lograrlo, vamos a escribir el código que nos permita desarrollar
el programa indicado anteriormente. Realiza los siguientes pasos:
3
2 Declaramos las variables de entrada en el evento
clic del botón Calcular.
Leemos los datos de entrada.
Dibuja el formulario que se muestra en la imagen.
4 Creamos una función que permita determinar
si un número es par.
5
Guarda tu trabajo, ejecuta el formulario, ingresa un número de inicio y fin. Luego, presiona el
botón Mostrar. Tu trabajo debe verse así:
5
4
6
Agregamos las sentencias de validación de datos de entrada.
Agregamos el bucle que mostrará los
números pares.
6
Aplicación 4.5 Elabora un programa que muestre los números impares comprendidos en un rango de valores ingresados por el usuario.
Aplicación 4.6 Elabora un programa que permita la suma de los “n” primeros números al cuadrado.
Aplica lo aprendido
La sentencia If permite evaluar una condicion
lógica, la cual puede ser inclusive la salida de
una funcion.
1
Ficha de Aprendizaje N° 16
Curso: Excel Advanced Macros
Módulo 4: Estructuras del control
Tema: Bucles de la forma Do…Loop while
Duración: 2 horas pedagógicas
Reconoce la diferencia entre los bucles de la forma For…Next y Do…Loop while.
Elabora un programa utilizando estructuras Do…Loop while.
Dim i, cont as Integer
i = 0
cont = 0
For i = 1 To 500
cont = cont +1
Next
Determina el valor final de la
variable cont en el siguiente
fragmento de código.
Conocimientos previos
Logros de aprendizaje
2
1.2 Ciclos de la forma Do … Loop While
Este tipo de estructura se usa cuando no se conoce el número de iteraciones. Las
instrucciones se ejecutarán mientras la condición establecida sea verdadera.
Su sintaxis es la siguiente:
Su diagrama de flujo es el siguiente:
VBA
Estructuras de control
DE CICLO REPETITIVO
For...Next
El número exacto de repeticiones
Do...Loop While
CONDICIONAL
Mapa de Contenidos
Contenidos de aprendizaje
tiene
de dos tipos:
como
donde se conoce donde no se conoce
3
Un interruptor (switch, centinela,
bandera o flag) te permiten
controlar si se ejecutarán o no
ciertos bloques de programa.
Tiene dos valores diferentes a lo
largo de la ejecución: 1 y 0,
verdadero y falso, sí y no, etc.
Observa el siguiente ejemplo de aplicación:
Se desea elaborar un programa que permita calcular el promedio de notas del curso de
computación. El programa se detendrá cuando el usuario ingrese un valor negativo.
Implementación del programa
Ahora vamos a escribir el código que nos permita desarrollar el programa indicado
anteriormente. Para ello, realiza los siguientes pasos:
2 Declaramos la variable de entrada en el evento Click del botón Calcular.
3 Leemos el dato de entrada desde un Inputbox.
1 Dibuja un botón dentro de una nueva hoja de cálculo.
4
Guarda tu trabajo, ejecuta el formulario, ingresa un número y presiona el botón Calcular. Tu
trabajo debe verse así:
4
Agregamos las sentencias y variables para el bucle.
5
Al presionar cancelar o ingresar un valor que no es un número, el programa finalizará y
mostrará el cálculo del promedio.
Aplicación 4.7 Elabora un programa que muestre cada digito que compone un número ingresado desde un formulario. Recuerda controlar si el valor ingresado es un número.
Aplicación 4.8 Elabora un programa que calcule el mayor de los números ingresados por el usuario. Los números se ingresarán por un control Inputbox y el programa finalizará cuando se dé clic en Cancelar.
El comando Inputbox permite mostrar al usuario un
cuadro de texto en el cual se puede ingresar un dato específico. No obstante, se debe controlar el valor
recibido.
La función IsNumeric devuelve un valor del tipo
boolean. Aparecerá True si el valor ingresado como parámetro es numérico; y False, en caso contrario.
Aplica lo aprendido
6
Como proyecto final desarrollarás el programa que se plantea a continuación:
1. Descarga el archivo produccion.xlsm de la plataforma. En el encontrarás los datos de una
empresa que se dedica a la producción de galletas, caramelos, chocolates y wafers en tres
diferentes turnos: mañana, tarde y noche.
2. Durante la producción, se puede registrar cinco tipos de defectos, los cuales se encuentran
descritos en la hoja “Defectos” del archivo.
3. En la hoja “Producción”, se registrará, en caso exista, el tipo de error que se tuvo por cada
producto y turno. Por ejemplo, la siguiente figura indica que, en el turno tarde de la
producción de galletas, se tuvo un error eléctrico; un error mecánico en el turno mañana;
cantidad de agua insuficiente en el turno tarde de la producción de chocolates; y falta de
insumos en el turno noche de wafers:
Proyecto integrador
7
4. Si hubo un error en más de un turno de un producto, dicho producto no estará disponible
para la venta del día. En el caso anterior, estarán disponibles todos los productos menos
los chocolates. Estos se registran en la fila 10.
5. Tu trabajo consistirá en crear una macro que genere números aleatorios enteros entre 1 y
20 al presionar el botón “Iniciar simulación” que represente el valor obtenido en la
producción. Si dicho valor se encuentra entre 1 y 5, entonces se trata de un defecto; en
caso contrario, no hubo defectos. Por ejemplo:
6. Asimismo, la macro debe colocar en la celda B10 los productos disponibles, en el formato
que se muestra a continuación:
7. Por último, debes modificar el evento “BeforeDoubleClick” para que, al hacer doble clic en
cualquiera de las celdas del rango B2:E4, se obtenga un “MsgBox” con la descripción del
error. Por ejemplo, en el caso anterior, al hacer doble clic en la celda B3, se obtiene el
siguiente mensaje:
8
Recommended