Excel 2007 AbacoIV

19
Visual Basic con Microsoft Excel 2007 Ing. Dennis T. Ballena García [email protected] Página 1 MICROSOFT EXCEL 2007 IV UNIDAD

Transcript of Excel 2007 AbacoIV

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 1

MICROSOFT EXCEL 2007

IV UNIDAD

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 2

SEMANA 15

Programación con Visual Basic y Microsoft Excel.

1. Introducción a la programación con Visual Basic. 2. Activando la ficha del Programador 3. Aplicación del entorno de la ficha del Programador 4. Aplicación del control de Macro 5. Grabar y Parar una Macro 6. Seguridad de Macro

SEMANA 16

7. Controles de Formulario asociados a una Macro para la ejecución de una aplicación en Visual Basic.

8. Habilitar, deshabilitar Macros por Seguridad 9. Descripción del Editor de Visual Basic 10. Barras de Herramientas del Editor de Visual Basic 11. Lista de Propiedades

SEMANA 17

12. Explorador de Proyectos 13. Agregar o Insertar un Módulo 14. Cambiar el nombre a un Módulo 15. Eliminar un Módulo

SEMANA 18

16. Implementar una Función dentro de un Módulo 17. Casos de Ejemplos 18. Agregar o Insertar un Formulario 19. Caso de Desarrollo 1: NAVEGADOR WEB

SEMANA 18

20. Proyecto Macro.

SEMANA 19

21. Examen de Unidad Formativa IV

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 3

PROGRAMACION CON VISUAL BASIC EN EXCEL

1.- Introducción

¿EL OFFICE Y SU RELACIÓN CON VISUAL BASIC?

¿Desea limpiar 1000 filas en Excel?

¿Desea crear un informe por cada cliente que compró productos

en su tienda y al final imprimir el monto total vendido?

¿Quiere exportar los registros de su tabla en Word a Excel?

¿Cuál es el futuro de Visual Basic?

La evolución de Visual Basic ha sido pasar a la plataforma .Net,

ofreciendo las Herramientas para Aplicaciones de Microsoft Visual

Studio, que corren bajo la plataforma .Net

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 4

2.- Activando la ficha del programador en Excel.

o Clic en el botón Office – Opciones Avanzadas

o Check en: Mostrar Ficha Programador en la cinta de opciones.

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 5

o El menú mostrará: Programador

o Activar y Mostrar la Ficha Programador

3.- Descripción del entorno de Visual Basic

A través de botón accedemos al entorno de VBA ó Alt + F11

Este botón nos permite mostrar el entorno de control de

macros públicas para Excel, es decir, podrá editar, ejecutar o

eliminar las macros. Desde este entorno no solamente visualiza

macros creadas desde Excel sino también las implementadas en

Visual Basic como funciones o procedimientos públicos. Alt + F8

4.- Cómo Grabar en una Macro

Permite iniciar la grabación de una nueva macro

que posteriormente usted la podrá administrar desde la

herramienta Macros.

Cuando observamos un mensaje como este

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 6

y

optó por seleccionar Habilitar contenido, la advertencia ocurre por

la actividad macro que se encuentra dentro de Excel y que al no

configurar la Seguridad de macros; Excel opta por preguntar si

desea habilitarlas.

5.- Controles de Formulario

Los controles de los formularios

presentan una lista de objetos que pueden asociarse a una macro

para la ejecución de una aplicación VBA.

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 7

Si deseamos que Excel no pregunte por la

seguridad de las Macros debemos dar clic en Seguridad de macros y

habilitar la opción: Habilitar todas las Macros.

6.- Editor de Visual Basic

Descripción del Editor de VBA.

Este editor tiene una apariencia amigable y muy parecida a Visual

Basic, si usted es usuario de Visual Basic le será familiar muchas de

las herramientas que aparecen en este entorno, la única diferencia

es que VBA construye aplicaciones para Office, pero no genera

aplicaciones de plataforma ni Web ni mucho menos móviles.

1. Barra de Herramientas Estándar

2. Ventana Explorador de Proyectos (Ctrl + R)

3. Ventana de Propiedades (F4)

4. Entorno de Edición de Código y desarrollo.

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 8

7.- Barras de Herramientas del Editor

Barra de Herramientas

Volver al entorno de Excel.

Grabar Macro básico, tener en cuenta que grabar desde el

editor o Grabar desde Excel es la misma tarea sólo debe asignar

como tipo Libro de Excel habilitado para Macros.

Ejecutar el código Visual Basic.

Interrumpir, permite detener la ejecución de la macro y poder

continuar al presionar F5.

Restablecer, permite detener y salir del modo de ejecución de la

macro.

Permite mostrar las propiedades de un objeto seleccionado.

Permite mostrar las herramientas sólo del entorno de desarrollo

de un UserForm.

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 9

Para un trabajo más fluido en el código VBA, se recomienda también

habilitar la barra de herramientas Edición (Ver – Barra de Herramientas -

Edición).

1 2 3 4 5

1.- Lista de Propiedades y métodos cuando se está

implementando código en VBA es necesario invocar a las

propiedades de un determinado objeto ya que será difícil

aprender todas las propiedades o métodos de todos los objetos

en VBA.

2.- Lista de constantes, se presenta una lista de constantes

declaradas dentro del entorno VBA.

3.- Información rápida, muestra el formato que tiene el objeto

en referencia.

4.- Sangría derecha – izquierda, permite tabular el código VBA

para poder visualizarlo ordenadamente.

5.- Bloque de comentarios, esto permite añadir el símbolo de

comentario al inicio de la línea de código y no se tomará en

cuenta cuando se realice la depuración de la aplicación. Toda

línea de instrucción de color verde es tomada como comentario

por VBA. Ejemplo:

‘Declaración de variables (comentario)

Dim N as Integer (Instrucción VBA)

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 10

8.- Explorador de Proyectos

El Explorador de Proyectos:

Desde el explorador de proyectos se puede tener el control de todos

los objetos que tiene Excel.

1. Permite visualizar el código fuente de VBA

Permite visualizar el formulario y sus objetos ocultando

momentáneamente el código fuente

Permite mostrar y/o ocultar en jerarquía de carpetas de los

objetos contenidos en el Proyecto VBA.

2. Visualiza el nombre del documento habilitado para macros

(macros básicos.xlsm) enmarcados en el proyecto VBA.

3. Visualiza las hojas del libro activo: Sheets(Sheets1) –

Hoja1(Hoja1) ThisWorkBook representa al libro activo.

4. UseForm1 en el formulario

5. Módulo1: Es el objeto que permite crear funciones o

procedimientos definidos por el usuario. Cuando usted crea una

macro en Excel automáticamente se crea un módulo con el

código autogenerado por VBA.

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 11

9.- Agregar o Insertar un Módulo

Agregar un Módulo:

En el desarrollo de una aplicación se necesita agregar un Módulo y

dentro de él, colocar el código VBA por medio de Funciones o

Procedimientos, además de declarar variables globales. Usted puede

añadir un número indeterminado de Módulos al proyecto. Veamos:

Primera Forma

o Desde el menú: Insertar – Módulo

Segunda Forma

o Haga clic derecho en el Explorador de Proyectos

o Seleccione Insertar

o Seleccione Módulo

En esta ventana se puede implementar Funciones o Procedimientos que

serán públicos dentro de Excel, entienda que si se implementa una

Función (Function), Excel la visualizará dentro de la lista de funciones y se

implementa un Procedimiento (Sub) Excel lo podrá visualizar por medio

de una macro.

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 12

10.- Cambiar el nombre a un Módulo

Cambiar el nombre al módulo

Una vez agregado el módulo el proyecto notará que VBA le asigna el

nombre Módulo1 por la tendencia de los objetos, así que imagine si

inserta 10 módulos, será complicado saber que contiene cada módulo

por lo tanto se hace necesario colocar un nombre a cada módulo ya

que fueron creados con una tarea específica.

Pasos para el cambio de nombre:

o Seleccione el módulo desde el Explorador de Proyectos.

o Cambie la propiedad (name) desde la ventana Propiedades; por

ejemplo, moFunciones que representa a un módulo de pura

funciones.

11.- Eliminar un Módulo

Eliminar un módulo:

Tenga en cuenta que al eliminar un Módulo estará eliminando a todas

las funciones o procedimientos programados en él.

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 13

Pasos para la eliminación:

o Presione clic derecho sobre la función desde el Explorador de

Proyectos.

o Seleccione Quitar nombreMódulo

o A la ventana siguiente, se sugiere que seleccione la opción No, ya

que si lo vas a eliminar es porque no lo necesitarás, pero

dependerá de usted.

12.- Implementar una Función dentro de un Módulo

Implementar una función dentro de un módulo:

Veamos un caso de implementación de una función dentro del Módulo

moFunciones.

Caso. Implemente una función que determine la raíz cúbica de un número

N dentro del módulo moFunciones.

Como notará hay varias funciones que se deben explicar en los siguientes

capítulos como Round o la misma función.

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 14

Para probar la función debe implementar en Excel una hoja de la siguiente

forma:

13.- Agregar un Formulario

Agregar un UserForm

Un UserForm es la forma en que el usuario se puede comunicar con

una aplicación VBA, la idea principal es que el programador

implemente lo mejor posible dicho UserForm y sea amigable para el

usuario. Existen varias formas de agregar un UserForm tenemos:

Primera Forma:

o Desde el Menú Insertar - UserForm

Segunda Forma

o Presiones clic derecho en el Explorador de Proyectos

o Seleccione Insertar

o Seleccione UserForm

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 15

CASO DE DESARROLLO 1: NAVEGADOR WEB

Implemente una Macro que permita mostrar el Navegador Web dentro de

la hoja de Excel de la siguiente forma:

Tener en cuenta:

Deberá colocar cualquier URL en la celda D19 como se visualiza en

la imagen.

Al presionar el botón Mostrar la Web, la macro mostrará la página

en el explorador WebBrowser1, colocado dentro de cualquier hoja

de Excel.

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 16

Solución del Caso:

Ficha Programador – Gabe Macro y asigne las siguientes

características a la nueva Macro

Luego de aceptar, presione clic en la celda B2 y coloque el texto Mi

Explorador WEB

Seleccione desde la celda B2 hasta N2 y presione el botón Combinar

y Centrar.

Cambie el tamaño del texto Mi Explorador Web a 20 puntos, con un

tipo de letra Trebuchet Ms y aplique un color Plomo de relleno a las

celdas.

Ubíquese en la celda B4.

En la ficha Programador – Insertar – Más Controles de la

ventana Más Controles, seleccione Microsoft Web Browser.

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 17

Una vez aceptada la ventana, arrastre sobre la hoja de Excel desde

la celda B4 hasta N17 aproximadamente, notará que aparece el

siguiente cuadro.

Note que se activó el botón Modo Diseño de la Ficha Programador

y ahora es el momento de poder ampliar la imagen hasta la celda

N17.

Ubíquese en la celda B19 y coloque el texto Digite aquí su Web

Ubíquese en la celda D19 y digite una URL válida, es decir, la

dirección tendrá el protocolo Http como inicio de la URL.

Finalmente agregue un botón de comando de los controles Active X

a la celda F21.

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 18

Para la grabación de la Macro y obtendrá el siguiente código fuente.

Ahora deberá ingresar el siguiente código al botón de comando

insertado en la hoja de Excel, dando doble clic en el botón.

Visual Basic con Microsoft Excel 2007

Ing. Dennis T. Ballena García [email protected] Página 19

TAREA_1: Cree una Macro para el siguiente informe, debe tener en cuenta

que los colores y el formato dependerá de su creatividad.