Análisis de Datos Avanzados El Editor de Visual Basic Dicha pestaña, denominada como Desarrollador (o Developer), contiene el botón de acceso directo a la ventana de desarrollo de Excel VBA (cuyo atajo es <ALT> + F11): • Explorador de proyectos: Hojas de cálculo disponibles, grupos de macros, módulos • Ventana de propiedades: Ventana de exploración Propiedades del objeto seleccionado en la • Ventana de edición: Area de edición de subrutinas UANL 2017 Análisis de Datos Avanzados El Editor de Visual Basic Para utilizar el espacio de programación tenemos: UANL 2017 Análisis de Datos Avanzados El Editor de Visual Basic Subrutinas Explorador de Proyectos Ventana de edición Ventana de propiedades UANL 2017 Análisis de Datos Avanzados El Editor de Visual Basic Para cambiar el tamaño y tipo de letra en el editor : UANL 2017 Análisis de Datos Avanzados Inserción de una Hoja de Macros Menú Insert Module Estructura de una Macro (Subrutina) Sub Nombre_Macro(Argumento_opcional) Cuerpo del programa <F5> para ejecutar End Sub UANL 2017 Análisis de Datos Avanzados Habilitación de Macros en Excel UANL 2017 Análisis de Datos Avanzados Almacenamiento de libros con Macros en Excel 2007 OJO : ¡De no guardar bajo esta modalidad los programas desarrollados se perderán! UANL 2017 Análisis de Datos Avanzados Manejo de Rangos en la hoja de cálculo El objeto Range Worksheets("Sheet1").Range("A1").Value = 1 El objeto Cells renglón columna Worksheets("Sheet1").Cells(1,1) = 9 columna renglón El orden de referencia es opuesto UANL 2017 Análisis de Datos Avanzados Manejo de Rangos en la hoja de cálculo ¿Cuál de ambos tipos de referencia resulta ser más conveniente? ... Depende del escenario que se esté modelando. Podemos comparar su efectividad mediante el uso del ciclo simple For ... Next : Sintaxis: For Contador = Principio To Fin [Step valor] [Instrucciones] [Exit For] Next [Contador] Ejemplo 1 : Desarrolle 2 versiones distintas de Macros en Excel VBA que generen la lista adjunta (una mediante el objeto Range y otra mediante el objeto Cells) UANL 2017 Análisis de Datos Avanzados Manejo de Rangos en la hoja de cálculo Version 1 (Objeto Range) : Conector de Concatenación Version 2 (Objeto Cells) : El valor del i-ésimo renglón en la columna 1 es igual al cuadrado del iesimo renglón que se está revisando UANL 2017 Análisis de Datos Avanzados Ejemplo 2: ¿Podría desarrollar 2 versiones diferentes (de manera análoga al ejemplo previo) para una macro que genere los siguientes valores? : Es factible resolver el conflicto previo mediante el uso de la propiedad Offset : Range("A5").Offset(0,3) = 2 No. columnas No. renglones Reto: Resuelva el Ejemplo 2 mediante el uso de esta propiedad UANL 2017 Análisis de Datos Avanzados Manejo de Rangos en la hoja de cálculo Ejemplo 3 : Desarrolle una Macro que sea capaz de completar la hoja de acuerdo al siguiente modelo : Ejemplo 4 : Desarrolle una Macro que sea capaz de completar la hoja de acuerdo al siguiente modelo : UANL 2017 Análisis de Datos Avanzados Manejo de Rangos en la hoja de cálculo Explore las siguientes subrutinas procurando “predecir“ el resultado que éstas arrojarán antes de ser ejecutadas. ¿Concuerdan sus predicciones? Explique lo que está ocurriendo ... *Probar ubicado en la celda C3 UANL 2017 Análisis de Datos Avanzados Manejo de Rangos en la hoja de cálculo *Probar ubicado en la celda B4 ¿Qué otras opciones se te ocurren para hacer lo mismo? UANL 2017 Análisis de Datos Avanzados Alternativas de ejecución directa de Macros A continuación revisaremos diversas alternativas que se tienen para la ejecución de Macros realizadas en Excel VBA : 1. Uso de la tecla <F5> al estar ubicado sobre alguna de las líneas de la Macro de interés El cursor se posiciona en cualquier sección del cuerpo del programa Nota : En caso de estar colocado fuera del programa es probable que seleccionarse manualmente la Macro a ejecutar UANL 2017 Análisis de Datos Avanzados Alternativas de ejecución directa de Macros 2. Ejecución mediante el botón “Play“ del Editor de Visual Basic Applications Botón “Play“ Botón “Reset“ (Usar en caso de errores de ejecución) UANL 2017 Análisis de Datos Avanzados Alternativas de ejecución directa de Macros 3. Adición de Teclas de “Atajo“ (“Short Cuts“) La macro “SerieCells“ se ejecuta al presionar la combinación <Control>+<j> UANL 2017 Análisis de Datos Avanzados Alternativas de ejecución directa de Macros 4. Adición de un Botón de Comando en la hoja de cálculo (Botón derecho del mouse) UANL 2017 Análisis de Datos Avanzados Alternativas de ejecución directa de Macros La propiedad “Caption“ permite cambiar la descripción que aparece sobre el botón UANL 2017 Análisis de Datos Avanzados Alternativas de ejecución directa de Macros Y para asignar una macro al botón ... Damos doble click sobre el botón en „“Modo de edición“ y asignamos el nombre de la macro en el evento que aparece en pantalla UANL 2017 Análisis de Datos Avanzados Alternativas de ejecución directa de Macros Y para asignar una macro al botón ... Al presionar el botón Design Mode, el botón creado queda en “Modo de ejecución“ Al presionar el botón la Macro creada es ejecutada de inmediato UANL 2017 Análisis de Datos Avanzados Alternativas de ejecución directa de Macros 5. Adición de botones a la barra de herramientas de acceso directo Selección del grupo “Macros“ UANL 2017 Análisis de Datos Avanzados Alternativas de ejecución directa de Macros Se agrega a la Barra de Acceso Rápido (o “Quick Access Toolbar“) la Macro que se desea incluir UANL 2017 Análisis de Datos Avanzados Alternativas de ejecución directa de Macros Debe seleccionarse la imagen a asociar a la macro en cuestión UANL 2017