EXCEL AVANZADO CON MACROS Laboratorio – 02 TEMA:
Nro. DD-106 Página 1/17
FUNDAMENTOS DE MACROS EN EXCEL
OBJETIVOS
Identificar las principales herramientas para trabajar con macros que trae incorporado Microsoft Excel Crear un documento en Excel que permita almacenar macros Visualizar la ficha “Desarrollador” en la cinta de opciones de Excel Grabar macros simples Visualizar el código de una macro empleando la herramienta Visual Basic para Aplicaciones que viene incorporado con Excel
REQUERIMIENTOS
PC con 2 GB memoria RAM Microsoft Excel instalado
PROCEDIMIENTO 1. Creación de macros en Excel 1.1. Crear un documento que permite almacenar Macros en Excel
Encienda la PC utilice la cuenta de usuario: tecsup clave: Virtu@l Inicie el software MS Excel Crear un nuevo libro y guardarlo con el nombre Lab_02 <nombre_completo>.xlsm en la carpeta de la unidad E
3. Nombre del libro 2. Tipo de libro
1. Grabar el libro
Nota: Los archivos con extensión *.xlsx de Excel no permiten almacenar macros, para poder grabar macros es necesario almacenar el archivo con la extensión *.xlsm como se indica en el ítem anterior
1.2. Visualización de la ficha “Desarrollador” en la cinta de opciones
Visualice la cinta de opciones de Excel. 1
EXCEL AVANZADO CON MACROS Laboratorio – 02
Nro. DD-106 Página 2/17
Puede ser que no vea la ficha “Desarrollador” como se ve en la siguiente figura:
Click derecho en la cinta de opciones como se indica en la figura anterior en alguna zona libre y luego elija la opción “Personalizar la cinta de opciones”
1. Click Derecho Aquí
En la ventana Opciones de Excel. En el recuadro “Fichas principales” seleccione el elemento “Desarrollador”. Click en el botón Aceptar
1. Seleccione Desarrollador 2. Click Botón Aceptar
Verifique la presencia de la ficha Desarrollador en la cinta de opciones
2
EXCEL AVANZADO CON MACROS Laboratorio – 02
Nro. DD-106 Página 3/17
Haga Clic en la ficha Desarrollador y vea las herramientas que vienen disponibles:
1.3. Grabación de macros
Grabaremos una macro denominada Macro1 que coloque la palabra “Mes” en la celda A1 Seleccione o active la “Hoja 1” En la ficha “Desarrollador” en la categoría “Código” elija la herramienta: “Grabar Macro”
Complete los datos de identificación de la macro y luego presione el botón Aceptar:
A partir de este momento Excel “Grabará” cada una de las acciones que usted realice Proceda a ingresar la palabra Mes en la celda A1. Al finalizar presione la tecla ENTER Ahora procederemos a detener la grabación de la Macro anterior, para ello presione el botón denominado “Detener grabación” ubicado en la categoría “Código” de la ficha “Desarrollador”:
1.4. Ejecución de una macro
Verificaremos el funcionamiento de la macro anterior Active o cambie a la Hoja 2 Desde la Ficha Desarrollador, en la categoría Código elija la herramienta Macros
3
EXCEL AVANZADO CON MACROS Laboratorio – 02
Nro. DD-106 Página 4/17
Seleccione la única macro disponible hasta el momento denominada Macro1 y presione el botón Ejecutar
Verifique que en la celda A1 de la Hoja 2 haya aparecido el texto Mes como resultado de la acción de la macro
Repita el procedimiento anterior para que la macro coloque el texto Mes en la celda A1 de la Hoja 3
1.5. Visualizar el código de la macro creada
Vamos a visualizar el código VBA generado por Excel para la macro “Macro1” que hemos creado en la sección anterior Desde la ficha Desarrollador, en la categoría Código elija la herramienta Visual Basic
A continuación se muestra el entorno de la Herramienta Visual Basic
4
EXCEL AVANZADO CON MACROS Laboratorio – 02
Nro. DD-106 Página 5/17
Del Panel izquierdo, denominado Proyecto, expanda el nodo Módulos y abra el archivo Módulo1 para ver su contenido:
El listado anterior representa el código de nuestra primera macro denominada Macro1 que fue creada por nosotros previamente. Las instrucciones corresponden al lenguaje Visual Basic que es utilizado por Excel para la programación de las macros.
2. Ejercicios propuestos de creación de macros en Excel 2.1. Macro para borrar el contenido de una celda
Grabar una nueva macro denominada m_borrar_celda que al ser ejecutada elimine el contenido de la celda actual. Para ello siga los siguientes pasos: empiece una grabación nueva ingrese el nombre propuesto de la macro cuando ya esté grabando la nueva macro, hacer clic sobre cualquier celda borre su contenido presionando la tecla SUPR o DEL Detenga la grabación Active la “Hoja 2”, coloque algún valor en la celda B3 Seleccione la celda B3 y ejecute la macro creada Visualice el código generado para la nueva Macro y anote dicho código
2.2. Macro para realizar cálculos simples
Grabar una nueva macro denominada m_calculo_porcentaje que al ser ejecutada calcule el 19% del valor numérico almacenado en la celda A2 y coloque el resultado en la celda B2. Para ello realice lo siguiente: empiece una grabación nueva ingrese el nombre propuesto de la macro ubíquese en la celda B2 ingrese la fórmula para calcular el 19% del valor de la celda A2 detenga la grabación Active la “Hoja 2”, coloque algún valor en la celda A2 Ejecute la macro creada Visualice el código generado para la nueva Macro y anote dicho código
5
EXCEL AVANZADO CON MACROS Laboratorio – 02
Nro. DD-106 Página 6/17
2.3. Macro para imprimir una hoja de un libro
Grabar una nueva macro denominada m_imprimir que al ser ejecutada envíe a la impresora actual el contenido de la hoja actual o activa. Para ello realice lo siguiente: elija una hoja de cálculo que quiera imprimir (debe tener valores) empiece una grabación nueva ingrese el nombre propuesto de la macro efectúe los pasos para imprimir imprima el documento como PDF (de estar disponible) detener la grabación Active la “Hoja 2” y ejecute la macro creada Visualice el código generado para la nueva Macro y anote dicho código
2.4. Macro para rellenar las celdas con números enteros
Grabar una nueva macro denominada que al ser ejecutada rellene el rango de celdas A1..A10 con los 10 primeros números enteros (Realice pasos similares a los anteriores ejercicios para generar nuevas macros con la herramienta de grabación) Active la “Hoja 2”, borre todo el contenido de la hoja y ejecute la macro creada Visualice el código generado para la nueva Macro y anote dicho código
6
EXCEL AVANZADO CON MACROS Laboratorio – 02
Nro. DD-106 Página 7/17
2.5. Macro para asignar títulos a una Hoja Excel
Grabar una nueva macro denominada m_titulos que al ser ejecutada genere los siguientes títulos en la hoja de cálculo activa
Active la “Hoja 2”, borre todo el contenido de la hoja y ejecute la macro creada Visualice el código generado para la nueva Macro y anote dicho código
7
EXCEL AVANZADO CON MACROS Laboratorio – 02
8
Nro. DD-106 Página 8/17
EXCEL AVANZADO CON MACROS Laboratorio – 02
Nro. DD-106 Página 9/17
2.6. Macro para generar gráficos de barras
Agregar una nueva Hoja al libro En la nueva Hoja adicionar los siguientes valores:
Grabar una nueva macro denominada m_grafico_barras que al ser ejecutada genere un gráfico de barras con los datos indicados en la hoja anterior Ejecute la macro creada Visualice el código generado para la nueva Macro y anote dicho código
9
EXCEL AVANZADO CON MACROS Laboratorio – 02
Nro. DD-106 Página 10/17
2.7. Macro para generar gráficos circulares
Grabar una nueva macro denominada m_grafico_pie que al ser ejecutada genere un gráfico circular con los mismos datos indicados en el ejercicio anterior Ejecute la macro creada Visualice el código generado para la nueva Macro y anote dicho código
¿Qué diferencia encuentra usted entre las dos macros anteriores? La orden que indica acerca del tipo de grafico a realizar.
2.8. Macros propuestas por el alumno
Crear un nuevo libro habilitado para macros denominado lab_02b <nombre_completo>.xlsm almacenado en la carpeta de la unidad E: Proponga usted diferentes macros que realicen acciones distintas de Excel. Adjunte en hojas adicionales el código generado para cada macro propuesta. Nota: El mínimo número de macros a proponer es 10
10
EXCEL AVANZADO CON MACROS Laboratorio – 02
11
Nro. DD-106 Página 11/17
EXCEL AVANZADO CON MACROS Laboratorio – 02
12
Nro. DD-106 Página 12/17
EXCEL AVANZADO CON MACROS Laboratorio – 02
Nro. DD-106 Página 13/17
PARTE 3 – VISUAL BASIC PARA APLICACIONES 3.1.
Creación de una calculadora en Microsoft Visual Basic para Aplicaciones. a. En el libro inicial, en una nueva hoja de Excel, inserta lo siguiente:
b. Seleccionamos la pestaña “Desarrollador”. En la cinta de opciones seleccionamos “Visual Basic”. c. Una vez dentro, en la barra de menú seleccionamos la opción Insertar y clic en “Módulo”. d. Hacer clic encima del módulo creado y presionar la tecla F4 (para ver sus propiedades) e. En el casillero (Name), cambiamos el nombre por “Operacionesmatemáticas” (todo junto). f. En la ventana “General”, insertamos la siguiente instrucción: Sub Sumarceldas( ) (luego presionar Enter) 13
EXCEL AVANZADO CON MACROS Laboratorio – 02
Nro. DD-106 Página 14/17
Nota: Observar que se coloca automáticamente el mensaje “End Sub” al final g. Ingresar la siguiente instrucción en el medio: Range(“B5”).Value = Range(“B2”).Value + Range(“B3”).Value Nota: Hemos creado el procedimiento con nombre “Sumarceldas” que permite sumar dos valores específicos. Observar que el procedimiento empieza con el mensaje “Sub” y termina con el mensaje “End Sub”. h. El resultado debe ser como la siguiente imagen.
ENTER
i.
Guardamos los cambios y regresamos a la Hoja10 de Excel.
j. En Excel insertaremos un botón de comando, ubicado en la ficha “Desarrollador”.
k. Dibujamos un botón cuadrado que será el botón para la suma. Seleccionamos el botón, clic en propiedades.
14
EXCEL AVANZADO CON MACROS Laboratorio – 02
Nro. DD-106 Página 15/17
l. Nos mostrará la ventana “Propiedades”. Cambiamos los siguiente datos: En la casilla (Name) escribimos “cmdsuma”; en la casilla (Caption) colocamos el signo “+” y cerramos la ventana.
m. Damos doble clic en el botón de suma, nos mostrará plataforma VBA – Libro1. En la ventana de “cmdsuma”, escribimos “sumarceldas”. Luego damos doble clic a Operacionesmatemáticas
1 2 n. Repetimos la operación para la resta. Nota: Esta instrucción indica que al hacer doble clic en el botón creado, queremos utilizar el procedimiento sumarceldas, creado en el módulo Operacionesmatemáticas. o. Damos clic en (“B5”) y seleccionamos la opción Play.
15
EXCEL AVANZADO CON MACROS Laboratorio – 02
Nro. DD-106 Página 16/17
p. Regresamos a Excel q. En las celdas B2 y B3 insertamos dos valores al azar, damos clic en el botón suma y comprobamos la suma. r. Para detener la acción, estando en Excel nos dirigimos a VBA y seleccionamos la opción de pausa o detención. s. Realizar la misma operación para la resta, multiplicación y división: En el módulo Operacionesmatematicas, agregar los procedimientos para la resta, multiplicación y división (utilizar el mismo código que el de la suma, realizando los cambios correspondientes). En Excel crear tres botones de comando adicionales. Cambiar sus nombres (name) y mensajes (caption) según corresponda. Hacer doble clic en cada botón de comando generado. Utilizar el procedimiento que corresponda para restar, multiplicar o dividir. Probar el funcionamiento de cada botón.
OBSERVACIONES Y CONCLUSIONES ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ 16
EXCEL AVANZADO CON MACROS Laboratorio – 02
Nro. DD-106 Página 17/17
____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________
17