Вы находитесь на странице: 1из 93
Desarrollo de Aplicaciones con VBA SILABO DE DESARROLLO DE APLICACIONES EN VBA I. INFORMACION GENERAL

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA SILABO DE DESARROLLO DE APLICACIONES EN VBA I. INFORMACION GENERAL 1.
Desarrollo de Aplicaciones con VBA SILABO DE DESARROLLO DE APLICACIONES EN VBA I. INFORMACION GENERAL 1.

SILABO DE DESARROLLO DE APLICACIONES EN VBA

I. INFORMACION GENERAL

1. Pre-requisito: Excel Avanzado

2. Duración: 24 Horas Pedagógicas (50min /Hora)

3. Metodología: Teoría 10% Practica 90%

II. OBJETIVOS

Crear macros usando el grabador de macros o usando el editor VBA

Crear funciones

Entender la teoría de objetos

Hacer uso de los Userforms

Dominar la técnica de programación con VBA, siendo capaz de manejar una hoja de cálculo utilizando VBA

III. UNIDADES TEMÁTICAS

Sesión 1

Editor de visual Basic

Descripción del Editor de visual Basic

Ventanas de proyectos

Procedimientos y principios fundamentales

Macros

Crear una macro (procedimiento sub)

Seguridad de macros

Guardar archivos con macros

Programar en el Editor de Visual Basic

El objeto contenedor y el contenido

Uso de los objetos, propiedades y métodos

Uso de la instrucción with

Objetos predeterminados

Objeto range

Cells

Consejos para la escritura del código

Comentarios

Caracteres de continuación

Añadir sangrías

Nombres de procedimientos, variables y constantes.

Sesión 2  Msgbox  Inputbox  Información en líneas  Errores de macros 

Sesión 2

Msgbox

Inputbox

Información en líneas

Errores de macros

Errores de digitación

Variables no declaradas

Corregir errores

Depurar líneas de código

Variables

Declarar variables a objetos

Reglas

Tipos de variables

Programación básica

Reglas  Tipos de variables  Programación básica Desarrollo de Aplicaciones con VBA Sesión 3 

Desarrollo de Aplicaciones con VBA

Programación básica Desarrollo de Aplicaciones con VBA Sesión 3  Controles de formulario  Tipos de

Sesión 3

Controles de formulario

Tipos de controles de formulario

Controles ActiveX

Propiedades de los controles ActiveX

Control cuadro de texto

Control cuadro de lista

Control cuadro combinado

Control casilla de verificación

Control botón de opción

Formularios en Vba

Mostrar/ocultar cuadro de herramientas

Controles del cuadro de herramientas

Diseño de un formulario

Cambiar nombres a los controles

Abrir formularios desde la hoja de cálculo

Programando controles de formulario

Sesión 4

Estructuras de decisión

If then else

If then

If then else

If then elseif

If and

If or

Select case

Case is

Case to

Delimitar valores

Declarando variables

Desarrollo de Aplicaciones con VBA Sesión 5  Bucles de repetición  For … next

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA Sesión 5  Bucles de repetición  For … next 

Sesión 5

Bucles de repetición

For … next

While wend

Do while loop

For-each-in-next

Do until

Do

Do

Loop

Loop while

Loop until

Sesión 6

Do until Do Do Loop Loop while Loop until Sesión 6  Funciones  Definición 

Funciones

Definición

Funciones nativas

Uso de la propiedad: fórmula

Funciones de librería en Vba

Funciones de conversión de tipos

Funciones UDF (funciones definidas por el usuario)

Sesión 7

Aplicaciones

IV. METODOLOGÍA

Las sesiones se desarrollarán de forma teórica y mayormente práctica (inductivo deductivo), el alumno tendrá una exigencia total en los temas de interés relacionados con el curso, al término de cada sesión se tendrá una práctica referente al tema expuesto.

V. RECURSOS DE ENSEÑANZA

Medios: Clases teórico prácticas con ayuda audiovisuales. Referente al tema, Material adicional vía correo electrónico.

Materiales:

Separata y/o prácticas del módulo a desarrollar, pizarra acrílica, plumones,

proyector multimedia.

VI. EVALUACION

Los elementos de evaluación serán exámenes escritos y prácticos, intervención del alumno y trabajos asignados PF=EF+TP+ > 13, 0

2

EF: Examen Final. TP: Promedio de trabajos prácticos.

VII.

BIBLIOGRAFIA

Manual de Infouni

Desarrollo de Aplicaciones con VBA EDITOR DE VISUAL BASIC El editor de Visual Basic es
Desarrollo de Aplicaciones con VBA EDITOR DE VISUAL BASIC El editor de Visual Basic es

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA EDITOR DE VISUAL BASIC El editor de Visual Basic es la

EDITOR DE VISUAL BASIC

El editor de Visual Basic es la aplicación que se utiliza para construir las macros que interactúan junto con los libros de trabajo.

Para trabajar con el editor de Visual Basic lo primero que tendrá que hacer es activar la Ficha Desarrollador (para versiones anteriores es Programador).

Active la pestaña Desarrollador realizando los siguientes pasos:

1. Hacer un clic con el botón derecho en un espacio vacío dentro de la cinta de opciones, luego hacer un clic en Personalizar la cinta de opciones

hacer un clic en “ Personalizar la cinta de opciones ” 2 . En la parte

2. En la parte derecha de la ventana de opciones, active la casilla Desarrollador, Aceptar.

de opciones , active la casilla Desarrollador, Aceptar . Al aceptar y cerrar la ventana de

Al aceptar y cerrar la ventana de opciones, en la cinta de opciones se mostrará al final de las fichas a esta nueva ficha Desarrollador.

se mostrará al final de las fichas a esta nueva ficha Desarrollador. Universidad Nacional de Ingeniería
Desarrollo de Aplicaciones con VBA DESCRIPCION DEL EDITOR DE VISUAL BASIC Abre el Editor de

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA DESCRIPCION DEL EDITOR DE VISUAL BASIC Abre el Editor de Visual
Desarrollo de Aplicaciones con VBA DESCRIPCION DEL EDITOR DE VISUAL BASIC Abre el Editor de Visual

DESCRIPCION DEL EDITOR DE VISUAL BASIC

Abre el Editor de Visual Basic:

Seleccione la Ficha Desarrollador / Clic en el icono Visual Basic.

la Ficha Desarrollador / Clic en el icono Visual Basic. Barra de Menú (1) .- Presenta
la Ficha Desarrollador / Clic en el icono Visual Basic. Barra de Menú (1) .- Presenta

Barra de Menú (1).- Presenta los comandos que se usan para trabajar con Visual Basic. Además de los menús estándar Archivo, Edición, Ver, Ventana y Ayuda, contiene otros menús para tener acceso a funciones específicas de programación, como Formato, Depuración, Ejecutar, etc.

Barra de Herramientas (2).- Permite un acceso directo (solo un clic) a muchas de las operaciones más frecuentes utilizadas durante el desarrollo de aplicaciones.

Espacio de trabajo (3).- Es el lugar en el cual se van a mostrar las ventanas de proyectos según el tipo de trabajo que se va a ejecutar. Estas ventanas son: Ventana de Módulo o Código y Ventana de Formulario o Diseño.

Explorador de proyectos (4).- Ventana superior izquierda, permite visualizar los objetos que contiene el proyecto actual agrupados por categorías. Además en la parte superior izquierda

de esta ventana hay dos botones que nos permiten intercambia cálculo o a la ventana de código en la ventana del proyecto.

Ventana de propiedades (5).- Situada debajo del explorador de proyectos, contiene el conjunto de propiedades, con el valor actual correspondiente, de cada uno de los objetos. Es aquí donde podremos modificar los valores iniciales de esas propiedades, en lo que se conoce como tiempo de diseño.

r a la vista de hoja de

Desarrollo de Aplicaciones con VBA VENTANAS DE PROYECTOS VENTANA CÓDIGO La ventana o editor de
Desarrollo de Aplicaciones con VBA VENTANAS DE PROYECTOS VENTANA CÓDIGO La ventana o editor de

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA VENTANAS DE PROYECTOS VENTANA CÓDIGO La ventana o editor de código

VENTANAS DE PROYECTOS

VENTANA CÓDIGO

La ventana o editor de código de Visual Basic proporciona de manera automática información relevante a medida que se ingresa código. El código está compuesto por instrucciones que le da a la máquina. Esas instrucciones se ejecutan, pero no necesariamente resultan visibles al usuario durante la ejecución. En pocas palabras aquí es donde escribirá el código.

Para ejecutar la ventana de código debe asegurarse de que esté ubicado en el módulo apropiado como puede ser una hoja de Excel, un objeto de control, o en un módulo.

A continuación las formas de mostrar la ventana de código.

DESDE EL EXPLORADOR DE PROYECTOS

Seleccione el nombre de la hoja en el explorador de proyectos, hacer un clic en el icono Ver Código

de proyectos, hacer un clic en el icono Ver Código DESDE UN OBJETO DE CONTROL Seleccione

DESDE UN OBJETO DE CONTROL

Seleccione el objeto, doble clic en el objeto seleccionado.

Seleccione el objeto, doble clic en el objeto seleccionado. DESDE UN OBJETO DE FORMAS Clic derecho

DESDE UN OBJETO DE FORMAS

Clic derecho en el objeto, asignar macro, clic en nuevo.

Clic derecho en el objeto, asignar macro, clic en nuevo. DESDE LA BARRA DE MENÚ Seleccione

DESDE LA BARRA DE MENÚ

Seleccione el menú Insertar, hacer un clic en Módulo.

LA BARRA DE MENÚ Seleccione el menú Insertar, hacer un clic en Módulo. Universidad Nacional de
Desarrollo de Aplicaciones con VBA MÓDULOS EN VBA Un módulo se utiliza para recopilar bajo

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA MÓDULOS EN VBA Un módulo se utiliza para recopilar bajo un
Desarrollo de Aplicaciones con VBA MÓDULOS EN VBA Un módulo se utiliza para recopilar bajo un

MÓDULOS EN VBA

Un módulo se utiliza para recopilar bajo un nombre un conjunto de declaraciones,

instrucciones y/o procedimientos. Los módulos estándar de Excel, que son los más comunes

y más fáciles de escribir, incluyen solo objetos predefinidos o "estándar".

Todo código pesado resulta más conveniente escribirlo y almacenarlo en un modulo

TIPOS DE MÓDULOS

En Excel existen dos tipos de módulos:

El Módulo Estándar El Módulo de clase

INSERTAR MÓDULOS

1ra forma: Hacer un clic en el menú Insertar / Módulo

2da forma: Hacer un clic con el botón derecho en el nombre del proyecto (VBAProject (Libro1)) / insertar / módulo.

Y se insertará una carpeta llamada Módulos, en ella el módulo1

insertará una carpeta llamada Módulos, en ella el módulo1 RENOMBRAR Seleccionar el módulo / presionar F4
insertará una carpeta llamada Módulos, en ella el módulo1 RENOMBRAR Seleccionar el módulo / presionar F4

RENOMBRAR

Seleccionar el módulo / presionar F4 o ir al menú Ver / Propiedades

En el panel propiedades hacer un doble clic en la propiedad NAME, digitar el nuevo nombre.

Nota: Los nombres a utilizar no deben tener espacios en blanco ni deben empezar con números ya que generaría un error.

ni deben empezar con números ya que generaría un error. QUITAR 1ra Forma: A través de
ni deben empezar con números ya que generaría un error. QUITAR 1ra Forma: A través de

QUITAR

1ra Forma: A través de la ventana del explorador de proyectos, hacer un clic con el botón derecho en el módulo, luego hacer un clic en la opción

Quitar

2da Forma: Seleccionar el módulo, ir al menú Archivo / Quitar.

En ambos casos muestra un mensaje indicando si desea exportar para mantener el módulo o eliminarlo en definitiva. Elija la opción según sea necesario.

módulo o eliminarlo en definitiva. Elija la opción según sea necesario. Universidad Nacional de Ingeniería Pág.
Desarrollo de Aplicaciones con VBA VENTANA FORMULARIOS Los forms (o formularios) son lo que también
Desarrollo de Aplicaciones con VBA VENTANA FORMULARIOS Los forms (o formularios) son lo que también

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA VENTANA FORMULARIOS Los forms (o formularios) son lo que también se

VENTANA FORMULARIOS

Los forms (o formularios) son lo que también se llamarían una "ventana" o “cuadro de diálogo” que en realidad es una superficie que contiene controles, como por ejemplo un botón o una zona para escribir texto, y que se muestra visible en algún momento de la ejecución. A continuación, formas de mostrar la ventana del formulario.

A)

Seleccione el menú Insertar, hacer un clic en UserForm.

A) Seleccione el menú Insertar, hacer un clic en UserForm. B) Clic derecho en VBAProject(libro1), Clic

B)

Clic derecho en VBAProject(libro1), Clic en Insertar, clic en UserForm

en VBAProject(libro1), Clic en Insertar, clic en UserForm Al situado a la izquierda del formulario por

Al

situado a la izquierda del formulario por defecto.

Este cuadro contiene los controles que puede ir colocando en el formulario, para ello

bastará con seleccionar el control a utilizar y hacer un clic en el área donde desee colocar,

o hacer un arrastre y "dibujarlo" sobre el formulario hasta obtener el tamaño adecuado.

Para mostrar el cuadro de herramientas cuando por algún motivo se haya cerrado, en la barra de iconos hacer un clic en el icono “Cuadro de Herramientas”. De igual manera si desea ocultar el cuadro, seleccione el mismo icono o presione sobre el botón cerrar del mismo

cuadro de herramientas.

insertar la ventana de Formulario se agrega automáticamente el Cuadro de herramientas

se agrega automáticamente el Cuadro de herramientas También puede mostrar/ocultar seleccionando desde el menú
se agrega automáticamente el Cuadro de herramientas También puede mostrar/ocultar seleccionando desde el menú

También puede mostrar/ocultar seleccionando desde el menú Ver / Cuadro de herramientas

Desarrollo de Aplicaciones con VBA PROCEDIMIENTOS Y PRINCIPIOS FUNDAMENTALES Excel es un software muy poderoso

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA PROCEDIMIENTOS Y PRINCIPIOS FUNDAMENTALES Excel es un software muy poderoso para
Desarrollo de Aplicaciones con VBA PROCEDIMIENTOS Y PRINCIPIOS FUNDAMENTALES Excel es un software muy poderoso para

PROCEDIMIENTOS Y PRINCIPIOS FUNDAMENTALES

Excel es un software muy poderoso para el manejo, análisis y presentación de datos aun y con todas sus bondades, en ocasiones no llega a suplir algunas necesidades específicas de los usuarios.

Afortunadamente Excel cuenta con VBA que es un lenguaje de programación que permite extender las habilidades del programa para cubrir los requerimientos así como también puede desarrollar nuevos algoritmos e inclusive integrar a Excel con alguna otra aplicación.

Para empezar a programar se tomará en cuenta si se va a crear una macro o una función que definirá el procedimiento a utilizar.

PROCEDIMIENTOS Y TIPOS

Un procedimiento es básicamente una unidad de código informático que realiza alguna acción. Existen dos tipos de procedimientos y son: Sub o Function

EL PROCEDIMIENTO SUB que es la abreviación de la palabra subrutina no es más que un conjunto de instrucciones que se ejecutarán una por una hasta llegar al final de la subrutina que está especificado por el procedimiento End Sub.

que está especificado por el procedimiento End Sub . EL PROCEDIMIENTO FUNCTION que es el que

EL PROCEDIMIENTO FUNCTION que es el que devuelve siempre un solo valor o devuelve una matriz. Se llama desde otro procedimiento, se puede usar como función de hoja de cálculo.

se puede usar como función de hoja de cálculo. PRINCIPIOS FUNDAMENTALES La programación en VBA puede

PRINCIPIOS FUNDAMENTALES

La programación en VBA puede ser un tanto misteriosa para la mayoría de los usuarios de Excel, sin embargo una vez que se comprenden los principios básicos de programación en VBA se comenzarán a crear soluciones robustas y efectivas.

La Programación Orientada a Objetos (POO) el cual se basa en las interacciones de objetos se compone de elementos y características. Los elementos de la POO, pueden entenderse como los materiales que necesita para diseñar y programar un sistema, mientras que las características, podría asumirse como las herramientas de las cuáles dispone para construir el sistema con esos materiales

Desarrollo de Aplicaciones con VBA El VBA como un OBJETO . Por ejemplo: primer concepto
Desarrollo de Aplicaciones con VBA El VBA como un OBJETO . Por ejemplo: primer concepto

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA El VBA como un OBJETO . Por ejemplo: primer concepto importante

El

VBA como un OBJETO. Por ejemplo:

primer concepto

importante a entender es que cada elemento de Excel es representado en

Objeto Workbook que representa a un libro de Excel. Objeto Sheet que representa una hoja Objeto Chart que representa a un gráfico.

También se puede encontrar objetos que se componen de otros objetos los cuales se puede identificar a modo de pregunta ¿Qué tiene el objeto? o ¿de qué está compuesto el objeto?

Application

Workbook

Sheets

Chart

Cells

Column

Range

Row

El

PROPIEDADES y MÉTODOS. Las propiedades de un objeto nos ayudan a describirlo mejor en todo momento Los métodos son las acciones que puede realizar con dicho objeto

Por Ejemplo:

El objeto WORKBOOK tiene

Propiedades como:

ActiveSheet (Hoja activa), Name (Nombre), ReadOnly (Solo Lectura), Saved (Guardado)

segundo concepto

importante a entender es que cada uno de estos objetos tiene

Y algunos Métodos como:

Open (Abrir), Close (Cerrar), PrintOut (Imprimir), Protect (Proteger), Unprotect (Desproteger).

Cells
Cells
Protect (Proteger), Unprotect (Desproteger). Cells Propiedades Value Address Métodos Calculate Activate
Protect (Proteger), Unprotect (Desproteger). Cells Propiedades Value Address Métodos Calculate Activate
Propiedades Value Address
Propiedades
Value
Address
Métodos
Métodos
(Desproteger). Cells Propiedades Value Address Métodos Calculate Activate Clear Universidad Nacional de Ingeniería
(Desproteger). Cells Propiedades Value Address Métodos Calculate Activate Clear Universidad Nacional de Ingeniería

Calculate(Desproteger). Cells Propiedades Value Address Métodos Activate Clear Universidad Nacional de Ingeniería Pág. 11

Activate
Activate
Clear
Clear
Desarrollo de Aplicaciones con VBA MACROS Las Macros en Excel son un conjunto de instrucciones

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA MACROS Las Macros en Excel son un conjunto de instrucciones que
Desarrollo de Aplicaciones con VBA MACROS Las Macros en Excel son un conjunto de instrucciones que

MACROS

Las Macros en Excel son un conjunto de instrucciones que se ejecutan de manera secuencial por medio de una orden de ejecución, claro está que una Macro puede invocar a otras Macros, logrando de esta forma obtener operaciones cada vez más complejas.

CREAR UNA MACRO (EL PROCEDIMIENTO SUB)

Para crear una macro se utiliza el procedimiento Sub que es la abreviación de la palabra subrutina en el cual se agregan el conjunto de instrucciones que se ejecutarán una por una hasta llegar al final de la subrutina que está especificado por el procedimiento End Sub.

SINTAXIS La macro se representa con un nombre el cual debe ser especificado justo después de la instrucción Sub y seguido por los paréntesis.

Procedimiento Sub, indica que se está creando una macro

Procedimiento Sub, indica que se está creando una macro Nombre de la macro Argumentos. Si no

Nombre de la macro

indica que se está creando una macro Nombre de la macro Argumentos. Si no hay coloque

Argumentos. Si no hay coloque solo los paréntesis

la macro Argumentos. Si no hay coloque solo los paréntesis Sub Nombre-de-Subrutina (lista-argumentos) I End Sub

Sub Nombre-de-Subrutina (lista-argumentos)

I

End Sub

Sub Nombre-de-Subrutina (lista-argumentos) I End Sub Escribir las Instrucciones o pasos que ejecutará la macro

Escribir las Instrucciones o pasos que ejecutará la macro

Escribir las Instrucciones o pasos que ejecutará la macro Procedimiento End Sub, indica la detención de

Procedimiento End Sub, indica la detención de la macro

O también

[Private] [Public] [Static] Sub Nombre-de-Subrutina (lista-argumentos) Instrucciones End Sub

Las partes entre corchetes indican que son opcionales. Además:

Public. Indica que la subrutina puede ser llamada por todas las demás subrutinas sin importar donde se encuentre. Private. Indica que la subrutina puede ser llamada solamente por otras subrutinas que se encuentren en el mismo módulo. Static. Es opcional. Indica que las variables locales de la subrutina se mantienen constantes de una llamada a otra. El ámbito de acción de esta declaración no incluye a variables declaradas fuera de la subrutina.

Estas macros se crean desde diferentes puntos como pueden ser:

MACRO DESDE LA VENTANA DE CÓDIGO

1. Abre la ventana de código (menú insertar / módulo)

2. Escribe El texto Sub seguido del nombre que le dará a la macro por ejemplo INICIO y el paréntesis abierto y cerrado como muestra la imagen siguiente, luego presione Enter.

Automáticamente en la parte inferior se mostrará el texto End Sub indicando el final de las instrucciones (NO BORRAR End Sub)

texto End Sub indicando el final de las instrucciones (NO BORRAR End Sub) Universidad Nacional de
Desarrollo de Aplicaciones con VBA 3. Escribe el o los procedimientos que ejecutará la macro
Desarrollo de Aplicaciones con VBA 3. Escribe el o los procedimientos que ejecutará la macro

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA 3. Escribe el o los procedimientos que ejecutará la macro en

3. Escribe el o los procedimientos que ejecutará la macro en forma ordenada. Por ejemplo:

que ejecutará la macro en forma ordenada. Por ejemplo: Las instrucciones que se le está dando

Las instrucciones que se le está dando a la macro son:

Seleccione la celda A3, que muestre el valor Si se puede, luego que aplique el tipo de fuente Monotype Corsiva

4. Hacer un clic en el Icono Ejecutar ubicado en la barra de herramientas o presione la tecla F5 y estará ejecutando la macro creada.

o presione la tecla F5 y estará ejecutando la macro creada. 5. Para comprobar, cierre la

5. Para comprobar, cierre la ventana de Visual Basic y observe el resultado en la hoja de Excel

de Visual Basic y observe el resultado en la hoja de Excel MACRO EN UN BOTÓN

MACRO EN UN BOTÓN DE COMANDO (CONTROL ACTIVEX)

1.

2.

3.

3.

En la hoja de Excel inserte el control Botón de Comando (Ficha Desarrollador / Grupo Controles / Insertar / Controles ActiveX / Botón de comando

Hacer un doble clic en el botón de Comando. Abrirá la ventana del Editor de Visual Basic.

de Comando. Abrirá la ventana del Editor de Visual Basic. Verifique la posición del cursor. Debe

Verifique la posición del cursor. Debe encontrarse entre Private Sub CommandButton1_Click () y End Sub.

entre Private Sub CommandButton1_Click () y End Sub. Escribe el o los procedimientos que ejecutará la

Escribe el o los procedimientos que ejecutará la macro en forma ordenada. Por ejemplo:

que ejecutará la macro en forma ordenada. Por ejemplo: 4. Cierre el Editor de Visual Basic.

4. Cierre el Editor de Visual Basic. En la hoja de Excel desactive el icono modo Diseño (Ficha Desarrollador / Grupo controles / Modo Diseño). Hacer un clic en el botón y ejecutará las instrucciones asignadas.

Hacer un clic en el botón y ejecutará las instrucciones asignadas. Universidad Nacional de Ingeniería Pág.
Desarrollo de Aplicaciones con VBA SEGURIDAD DE MACROS La seguridad es un tema importante ya

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA SEGURIDAD DE MACROS La seguridad es un tema importante ya que
Desarrollo de Aplicaciones con VBA SEGURIDAD DE MACROS La seguridad es un tema importante ya que

SEGURIDAD DE MACROS

La seguridad es un tema importante ya que al abrir algún archivo que contenga una macro maliciosa puede causar algún tipo de daño al equipo. De manera predeterminada Excel no permite ejecutar macros automáticamente.

Excel no permite ejecutar macros automáticamente. Si está creando una macro propia y desea quitar la

Si está creando una macro propia y desea quitar la protección porque sabe que no existe código malicioso, entonces modifique la configuración de seguridad de las macros como se describe a continuación:

- Seleccione la Ficha Desarrollador / hacer un clic en Seguridad de macros

Ficha Desarrollador / hacer un clic en Seguridad de macros - Seleccione la opción Habilitar todas

- Seleccione la opción Habilitar todas las macros / active la casilla Confiar en el acceso al modelo de datos del proyecto de VBA / clic en Aceptar.

al modelo de datos del proyecto de VBA / clic en Aceptar. GUARDAR ARCHIVOS CON MACROS

GUARDAR ARCHIVOS CON MACROS

Una vez que haya creado una macro es importante guardar el archivo con un tipo que guarde para que posteriormente pueda ser utilizado ya que si lo guarda con el tipo predeterminado automáticamente se eliminarán las macros.

Para guardar realice lo siguiente:

- Hacer un clic en el menú Archivo / clic en Guardar como (o presione las teclas CTRL + G)

- Elige el lugar donde va a guardar el archivo (por ejemplo: Escritorio)

- En el cuadro nombre escribe un nombre para el archivo

- En tipo Seleccione: LIBRO DE EXCEL HABILITADO PARA MACROS / clic en guardar

En tipo Seleccione: LIBRO DE EXCEL HABILITADO PARA MACROS / clic en guardar Universidad Nacional de
En tipo Seleccione: LIBRO DE EXCEL HABILITADO PARA MACROS / clic en guardar Universidad Nacional de
Desarrollo de Aplicaciones con VBA PROGRAMAR EN EL EDITOR DE VISUAL BASIC EL OBJETO CONTENEDOR
Desarrollo de Aplicaciones con VBA PROGRAMAR EN EL EDITOR DE VISUAL BASIC EL OBJETO CONTENEDOR

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA PROGRAMAR EN EL EDITOR DE VISUAL BASIC EL OBJETO CONTENEDOR Y

PROGRAMAR EN EL EDITOR DE VISUAL BASIC

EL OBJETO CONTENEDOR Y EL CONTENIDO

Al iniciar la programación se debe identificar dos puntos muy importantes como son:

El objeto contenedor que es el lugar donde se mostrará el resultado el cual puede ser una celda, un conjunto de celdas, un objeto de control, etc.

El contenido que es el valor a mostrarse en el objeto contenedor. Puede ser un número, texto, fórmula, imagen, contenido de otra celda, etc.

Entre el objeto contenedor y el contenido deberá estar el signo de comparación igual (=) que determinará el resultado.

¿Dónde quiero ver el resultado? OBJETO CONTENEDOR

¿Dónde quiero ver el resultado? OBJETO CONTENEDOR ¿Qué quiero que se muestre? EL CONTENIDO = “Excel”

¿Qué quiero que se muestre? EL CONTENIDO

= “Excel”
= “Excel”

Range(“A1”)

Signo de comparación

= “Excel” Range(“A1”) Signo de comparación USO DE LOS OBJETOS, PROPIEDADES Y MÉTODOS Para acceder a

USO DE LOS OBJETOS, PROPIEDADES Y MÉTODOS

Para acceder a las propiedades y métodos de un objeto se hace a través de una nomenclatura especial. Justo después del nombre del objeto coloque un punto y luego escribe el nombre de la propiedad o del método.

PROPIEDAD PARA UN OBJETO Ejemplo: Escribir la propiedad Font para una celda

Escribe el nombre del objeto (En este caso el nombre de la celda

el nombre del objeto (En este caso el nombre de la celda Escribe la propiedad para

Escribe la propiedad para la celda (en este caso Font)

celda Escribe la propiedad para la celda (en este caso Font) Range(“A1”) . Font También, cada

Range(“A1”).Font

También, cada vez que se coloca el punto seguido al nombre del objeto se activa una lista de propiedades, busque en la lista y seleccione la propiedad a utilizar.

de propiedades, busque en la lista y seleccione la propiedad a utilizar. Universidad Nacional de Ingeniería
Desarrollo de Aplicaciones con VBA METODO PARA UN OBJETO Ejemplo: Escribir el método AddComment para

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA METODO PARA UN OBJETO Ejemplo: Escribir el método AddComment para insertar
Desarrollo de Aplicaciones con VBA METODO PARA UN OBJETO Ejemplo: Escribir el método AddComment para insertar

METODO PARA UN OBJETO Ejemplo: Escribir el método AddComment para insertar un comentario en una celda

método AddComment para insertar un comentario en una celda Ejemplo2: Escribir el método Delete para eliminar

Ejemplo2: Escribir el método Delete para eliminar una celda

Ejemplo2: Escribir el método Delete para eliminar una celda VER TODAS LAS PROPIEDADES Y MÉTODOS Los

VER TODAS LAS PROPIEDADES Y MÉTODOS

Los objetos tienen muchas propiedades y métodos y a veces es difícil pensar que los llegaremos a memorizar todos por completo. Sin embargo, el Editor de Visual Basic es de gran ayuda porque justamente al momento de escribir nuestro código nos proporciona la lista completa de propiedades y métodos para un objeto.

la lista completa de propiedades y métodos para un objeto. Se ven las propiedades así como

Se ven las propiedades así como los métodos al momento de introducir el punto después del nombre del objeto. Se distingue entre las propiedades y métodos porque tienen iconos diferentes. Los métodos son los que tienen el icono de color verde. Y las propiedades son los que tienen el icono con la manito.

También puede mostrar la lista de propiedades y métodos de cada objeto en la ventana del Examinador de Objetos. Esta ventana se abre presionando la tecla F2 o desde el menú Ver / Examinador de Objetos.

presionando la tecla F2 o desde el menú Ver / Examinador de Objetos. Universidad Nacional de
Desarrollo de Aplicaciones con VBA UTILIZAR LA RUTA COMPLETA PARA PROGRAMAR Para tener acceso a
Desarrollo de Aplicaciones con VBA UTILIZAR LA RUTA COMPLETA PARA PROGRAMAR Para tener acceso a

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA UTILIZAR LA RUTA COMPLETA PARA PROGRAMAR Para tener acceso a los

UTILIZAR LA RUTA COMPLETA PARA PROGRAMAR

Para tener acceso a los objetos que están por debajo de un objeto utilice el punto. El punto ayuda a navegar por la jerarquía hacia un nivel inferior. Así se podría describir por completo la jerarquía de los objetos. Ejemplo:

Mostrar el texto Hola en la celda A1 de la hoja activa de Excel

el texto Hola en la celda A1 de la hoja activa de Excel CONJUNTO DE INSTRUCCIONES

CONJUNTO DE INSTRUCCIONES PARA UN OBJETO

Al especificar toda la ruta completa hasta llegar al objeto deseado se busca dar una claridad absoluta sobre la ubicación exacta de cada objeto lo cual ayudará a evitar cualquier mala interpretación del código. El problema es que ocupa más tiempo en escribir la programación.

es que ocupa más tiempo en escribir la programación. USO DE LA INSTRUCCIÓN WITH Puede ahorrar

USO DE LA INSTRUCCIÓN WITH

Puede ahorrar algunas palabras de un código haciendo uso de la instrucción With así:

de un código haciendo uso de la instrucción With así: En ambos casos el resultado será

En ambos casos el resultado será el mismo y en el último ahorrará algunos caracteres dejando el código VBA claro y legible.

OBJETOS PREDETERMINADOS

Existe una funcionalidad intrínseca de VBA conocida como objetos predeterminados la cual nos permite omitir la escritura de algunos objetos y aun así tener un código funcional. Por ejemplo el objeto Application se puede omitir ya que esto hace referencia al programa de Excel. Lo mismo puede ser con los objetos Activeworkbook (se refiere al libro que se está utilizando) y ActiveSheet (se refiere a la hoja actual en la cual se está trabajando) y la funcionalidad del código será la misma.

la cual se está trabajando) y la funcionalidad del código será la misma. Universidad Nacional de
Desarrollo de Aplicaciones con VBA OBJETO RANGE El objeto Range, que es la representación de

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA OBJETO RANGE El objeto Range, que es la representación de una

OBJETO RANGE

Desarrollo de Aplicaciones con VBA OBJETO RANGE El objeto Range, que es la representación de una

El objeto Range, que es la representación de una celda (o celdas) en la hoja de cálculo, es el objeto más importante de Excel VBA.

Con los ejemplos se tiene una visión general de las propiedades y métodos del objeto Range.

SELECT (SELECCIÓN)

Un método importante para el objeto Range es el método Select. Este método permite seleccionar una celda o un rango de celdas.

método permite seleccionar una celda o un rango de celdas. Range(“A1”).Select  Celda A1 seleccionada En
método permite seleccionar una celda o un rango de celdas. Range(“A1”).Select  Celda A1 seleccionada En

Range(“A1”).Select Celda A1 seleccionada

En las siguientes líneas se describen algunos ejemplos de selección de celdas

SELECCIONAR UNA COLUMNA Sub Selecciono()

Range("A:A").Select

End Sub

SELECCIONAR UNA FILA Sub Selecciono()

Range("2:2").Select

End Sub

Selección de toda la columna A

Selección de toda la fila 2

SELECCIONAR RANGOS DISCONTINUOS Sub Selecciono()

Range("A2:A5,B6,C3:D5").Select

End Sub

SELECCIONAR UNA CELDA CON EL VALOR DE UNA VARIABLE Sub Selecciono()

Dim Variable as Integer

 

Variable=5

 

Range("A”&Variable).Select

End Sub

SELECCIONAR Y COMBINAR CELDAS Sub Selecciono()

Range("A2:D2").Select

Selection.Merge

 

End Sub

SELECCIONAR UN RANGO A PARTIR DE UNA CELDA ACTIVA Sub Selecciono()

Range("B2").CurrentRegion.Select

End Sub

Desarrollo de Aplicaciones con VBA SELECCIONAR A PARTIR DE UNA CELDA HACIA ABAJO Sub Selecciono()
Desarrollo de Aplicaciones con VBA SELECCIONAR A PARTIR DE UNA CELDA HACIA ABAJO Sub Selecciono()

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA SELECCIONAR A PARTIR DE UNA CELDA HACIA ABAJO Sub Selecciono() Range("B2",

SELECCIONAR A PARTIR DE UNA CELDA HACIA ABAJO Sub Selecciono()

Range("B2", Range("B2").End(xlDown)).Select

End Sub

SELECCIONAR A PARTIR DE UNA CELDA HACIA LA DERECHA Sub Selecciono()

Range("B2", Range("B2").End(xlToRight)).Select

End Sub

SELECCIONAR A PARTIR DE UNA CELDA HACIA ARRIBA Sub Selecciono()

Range("B2", Range("B2").End(xlUp)).Select

End Sub

SELECCIONAR A PARTIR DE UNA CELDA HACIA LA IZQUIERDA Sub Selecciono()

Range("B2", Range("B2").End(xlToLeft)).Select

End Sub

SELECCIONAR LA ULTIMA CELDA QUE CONTIENE DATOS Sub Selecciono()

Range("B2").End(xlDown)).Select

End Sub

SELECTION

Con Selection puede cambiar o establecer propiedades al rango seleccionado

Sub Selecciono()

propiedades al rango seleccionado Sub Selecciono() Range("B2").Select   Selection.Value =

Range("B2").Select

 

Selection.Value = "Dame un like si te gusta"

Selection.Font.Name = "Monotype Corsiva

"

End Sub

Sub Selecciono()

Range("B2").Select

Range("B2").Select Selection.Entirerow.Insert
Selection.Entirerow.Insert

Selection.Entirerow.Insert

End Sub

Selection.Entirerow.Insert End Sub VALUE Con Value puede establecer un valor en un rango

VALUE

Con Value puede establecer un valor en un rango seleccionado a partir de un dato ingresado o calculado

Sub Selecciono()

a partir de un dato ingresado o calculado Sub Selecciono() Range("A2").Value = "Más fácil no hay"

Range("A2").Value = "Más fácil no hay"

End Sub

Sub Selecciono()

Range("A2").Value = 25 * 12

End Sub

End Sub Sub Selecciono() Range("A2").Value = 25 * 12 End Sub Universidad Nacional de Ingeniería Pág.
Desarrollo de Aplicaciones con VBA COPIAR / PEGAR Los métodos Copy y Paste se utilizan

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA COPIAR / PEGAR Los métodos Copy y Paste se utilizan para
Desarrollo de Aplicaciones con VBA COPIAR / PEGAR Los métodos Copy y Paste se utilizan para

COPIAR / PEGAR

Los métodos Copy y Paste se utilizan para copiar un rango y pegarlo en otro lugar de la hoja

de trabajo.

Range("A1:A2").Select

Selection.Copy

 

Range("C3").Select

 

ActiveSheet.Paste

Range("C3").Select   ActiveSheet.Paste También puede utilizar el código en una sola línea el

También puede utilizar el código en una sola línea el cual hace exactamente lo mismo que el anterior

Range("C3:C4").Value = Range("A1:A2").Value

LIMPIAR

Para borrar el contenido de un rango de Excel, puede utilizar el método ClearContents.

Range(“A1”).Clearcontents

o simplemente utilizar:

Range("A1").Value = ""

simplemente utilizar: Range("A1").Value = "" Para borrar el contenido y formato utilice el método Clear

Para borrar el contenido y formato utilice el método Clear

Range("A1").Clear

y formato utilice el método Clear Range("A1").Clear Para borrar solo el formato utilice el método ClearFormats

Para borrar solo el formato utilice el método ClearFormats

Range("A1").ClearFormats

el método ClearFormats Range("A1").ClearFormats Para borrar también puede utilizar el método Delete

Para borrar también puede utilizar el método Delete

Range(“4:4”).Delete

borrar también puede utilizar el método Delete Range(“ 4:4 ”).Delete Universidad Nacional de Ingeniería Pág. 20
Desarrollo de Aplicaciones con VBA CE LLS ( CELDA ) En vez de Rangos, también
Desarrollo de Aplicaciones con VBA CE LLS ( CELDA ) En vez de Rangos, también

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA CE LLS ( CELDA ) En vez de Rangos, también puede

CELLS (CELDA)

En vez de Rangos, también puede utilizar las celdas. El uso de celdas es particularmente útil cuando se quiere recorrer rangos.

Row = Fila Ingrese el número de la fila

recorrer rangos. Row = Fila Ingrese el número de la fila Column = Columna Ingrese el

Column = Columna Ingrese el número de la columna

de la fila Column = Columna Ingrese el número de la columna Cells([RowIndex],[ColumnIndex]) La intersección de

Cells([RowIndex],[ColumnIndex])

La intersección de los números indica la posición de la celda en la hoja de cálculo

UNA CELDA

Ingresar el número 2 en la celda A3

Sub Ingresar()

Cells(3, 1).Value = 2

End Sub

UN RANGO DE CELDAS

Ingresar el número 5 en el rango de celdas A1:A4

Sub Ingresar()

Range(Cells(1, 1), Cells(4, 1)) = 5

End Sub

Sub Ingresar() Range(Cells(1, 1), Cells(4, 1)) = 5 End Sub VENTAJA DEL OBJETO CELLS Es mucho
Sub Ingresar() Range(Cells(1, 1), Cells(4, 1)) = 5 End Sub VENTAJA DEL OBJETO CELLS Es mucho

VENTAJA DEL OBJETO CELLS

Es mucho más común encontrarse el objeto Range en las aplicaciones VBA, sin embargo el objeto Cells ofrece una ventaja que debemos considerar cuando necesitamos hacer un recorrido programático por varias celdas ya que será muy sencillo especificar las filas y columnas utilizando una variable numérica.

Ejemplo

Ingresar los primeros 4 números positivos

Sub Registrar()

Ingresar los primeros 4 números positivos Sub Registrar() For i = 1 To 4 Cells(i, 1).Value

For i = 1 To 4

Cells(i, 1).Value = i

Next

End Sub

Desarrollo de Aplicaciones con VBA CONSEJOS PARA LA ESCRITURA DEL CÓDIGO COMENTARIOS Permiten documentar el

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA CONSEJOS PARA LA ESCRITURA DEL CÓDIGO COMENTARIOS Permiten documentar el código
Desarrollo de Aplicaciones con VBA CONSEJOS PARA LA ESCRITURA DEL CÓDIGO COMENTARIOS Permiten documentar el código

CONSEJOS PARA LA ESCRITURA DEL CÓDIGO

COMENTARIOS

Permiten documentar el código que está escribiendo para hacerlo más legible. Las líneas de comentario comienzan por un apóstrofe (') o con la palabra clave Rem. Los comentarios aparecen en pantalla en color verde, aunque puede cambiar de color.

en pantalla en color verde, aunque puede cambiar de color. CARACTERES DE CONTINUACIÓN Al combinar un
en pantalla en color verde, aunque puede cambiar de color. CARACTERES DE CONTINUACIÓN Al combinar un

CARACTERES DE CONTINUACIÓN

Al combinar un espacio seguido de un guión bajo _”, se utiliza para poder saltar la línea de código y así no perder la visibilidad en la pantalla, aunque tiene alguna restricción, no se puede utilizar para continuar una línea de código dentro de una expresión de tipo cadena.

línea de código dentro de una expresión de tipo cadena. AÑADIR SANGRÍAS Las tabulaciones nos permiten

AÑADIR SANGRÍAS

Las tabulaciones nos permiten una mayor legibilidad del código. Es especialmente recomendado utilizarlo en las estructuras de control y decisión.

utilizarlo en las estructuras de control y decisión. NOMBRES DE PROCEDIMIENTOS, VARIABLES Y CONSTANTES. Los

NOMBRES DE PROCEDIMIENTOS, VARIABLES Y CONSTANTES.

Los nombres de procedimientos, variables y constantes deben de respetar las siguientes reglas:

El primer carácter debe de ser una letra.

No se diferencia mayúscula de minúsculas.

No se usan nombres reservados en VB.

Un nombre no puede tener más de 255 caracteres.

Los procedimientos Function, no se usan nombres iguales a referencias de celdas.

No se usan el punto, el espacio, ni los signos ¡!, $, # y @

Desarrollo de Aplicaciones con VBA MSGBOX Los cuadros de mensaje ofrecen un modo simple y
Desarrollo de Aplicaciones con VBA MSGBOX Los cuadros de mensaje ofrecen un modo simple y

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA MSGBOX Los cuadros de mensaje ofrecen un modo simple y rápido

MSGBOX

Los cuadros de mensaje ofrecen un modo simple y rápido de consultar información simple o para permitir tomar decisiones. Puede usar esta función para mostrar diferentes tipos de mensaje y botones con los cuales se pueda tener una respuesta.

SINTAXIS

con los cuales se pueda tener una respuesta. SINTAXIS MsgBox( Prompt ,[Buttons],[Title],[Helpfile],[Context])

MsgBox(Prompt,[Buttons],[Title],[Helpfile],[Context])

MsgBox( Prompt ,[Buttons],[Title],[Helpfile],[Context]) Tittle “AVISO” Buttons vbInformation Prompt
MsgBox( Prompt ,[Buttons],[Title],[Helpfile],[Context]) Tittle “AVISO” Buttons vbInformation Prompt
Tittle “AVISO” Buttons vbInformation
Tittle
“AVISO”
Buttons
vbInformation
Tittle “AVISO” Buttons vbInformation Prompt “Bienvenido a VBA” La sintaxis de la función

Prompt “Bienvenido a VBA”

La sintaxis de la función MsgBox consta de los siguientes argumentos:

Prompt.- Representa el mensaje en el cuadro de diálogo. Si consta de más de una línea, sepárelo utilizando un carácter de retorno Chr(13) o un carácter de avance de línea Chr(10)

Buttons.- Expresión numérica que corresponde a la suma de los valores que especifican el número y el tipo de los botones que se pretenden mostrar, el estilo de icono que se va a utilizar, la identidad del botón predeterminado y la modalidad del cuadro de mensajes. Si se omite este argumento, el valor predeterminado para buttons es 0.

Title.- Texto que se muestra en la barra de título del cuadro de diálogo. Si se omite, en la barra de título se coloca el nombre del programa.

Helpfile.- Texto que identifica el archivo de Ayuda que se utiliza para proporcionar ayuda interactiva en el cuadro de diálogo. Si se especifica, también se debe especificar context.

Context.- Expresión numérica que es igual al número de contexto de Ayuda asignado por el autor al tema de Ayuda correspondiente. Si se especifica, también se debe especificar helpfile.

Desarrollo de Aplicaciones con VBA Algunos ejemplos con MSGBOX MENSAJE SIMPLE Inserte el botón de

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA Algunos ejemplos con MSGBOX MENSAJE SIMPLE Inserte el botón de comando,

Algunos ejemplos con MSGBOX

MENSAJE SIMPLE

Inserte el botón de comando, hacer un doble clic para ingresar al editor de Visual Basic y digite un mensaje simple.

MsgBox "Qué fácil es VBA"

un mensaje simple. MsgBox "Qué fácil es VBA" MENSAJE DE UN VALOR INGRESADO EN UNA CELDA
un mensaje simple. MsgBox "Qué fácil es VBA" MENSAJE DE UN VALOR INGRESADO EN UNA CELDA

MENSAJE DE UN VALOR INGRESADO EN UNA CELDA

es VBA" MENSAJE DE UN VALOR INGRESADO EN UNA CELDA En primer lugar, introduzca un número

En primer lugar, introduzca un número en la celda A1.

Inserte el botón de comando, hacer un doble clic para ingresar al editor de Visual Basic y digite un mensaje siguiente.

MsgBox ("El valor ingresado en la celda es ") & Range ("A1")

ingresado en la celda es ") & Range ("A1") MENSAJE EN LÍNEAS Inserte el botón de

MENSAJE EN LÍNEAS

Inserte el botón de comando, hacer un doble clic para ingresar al editor de Visual Basic y digite un mensaje siguiente.

MsgBox ("Excel Básico" & Chr(13) & "Excel Intermedio")

MENSAJE CON BOTONES SI / NO

Inserte el botón de comando, hacer un doble clic para ingresar al editor de Visual Basic y digite un mensaje siguiente:

RESPUESTA = MsgBox("Desea continuar", vbYesNo + vbQuestion, "AVISO")

If RESPUESTA = vbYes Then

 

MsgBox "Muy bien, Adelante",,”AVISO”

 

End If

 
"Muy bien, Adelante" ,,”AVISO”   End If   Universidad Nacional de Ingeniería Pág. 24
Desarrollo de Aplicaciones con VBA INPUTBOX Muestra un mensaje en un cuadro de diálogo, espera
Desarrollo de Aplicaciones con VBA INPUTBOX Muestra un mensaje en un cuadro de diálogo, espera

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA INPUTBOX Muestra un mensaje en un cuadro de diálogo, espera que

INPUTBOX

Muestra un mensaje en un cuadro de diálogo, espera que el usuario escriba un texto o haga clic en un botón y devuelve un tipo de dato como texto que es el contenido ingresado en el cuadro de texto.

SINTAXIS

es el contenido ingresado en el cuadro de texto. SINTAXIS Inputbox( Prompt

Inputbox( Prompt,[Title],[Default],[Xpos],[Ypos],[Helpfile],[Context])

,[Title],[Default],[Xpos],[Ypos],[Helpfile],[Context]) Prompt “Ingrese el nombre del Producto” Tittle

Prompt “Ingrese el nombre del Producto”

Tittle “COMERCIAL AAA”

el nombre del Producto” Tittle “COMERCIAL AAA” Retorno del dato ingresado en el Inputbox La sintaxis
el nombre del Producto” Tittle “COMERCIAL AAA” Retorno del dato ingresado en el Inputbox La sintaxis
Retorno del dato ingresado en el Inputbox
Retorno del dato
ingresado en el
Inputbox

La sintaxis de la función InpuBox consta de los siguientes argumentos:

Prompt.- Representa el mensaje en el cuadro de diálogo. Si consta de más de una línea, sepárelo utilizando un carácter de retorno Chr(13) o un carácter de avance de línea Chr(10)

Title.- Texto que se muestra en la barra de título del cuadro de diálogo. Si se omite, en la barra de título se coloca el nombre del programa.

Default.- Texto que se muestra en el cuadro de texto como respuesta predeterminada. Si omite, se muestra el cuadro de texto vacío.

Xpos.- Es la distancia en sentido horizontal entre el borde izquierdo del cuadro de diálogo y el borde izquierdo de la pantalla. Si se omite, el cuadro de diálogo se centra horizontalmente.

Ypos.- Es la distancia en sentido vertical entre el borde superior del cuadro de diálogo y el borde superior de la pantalla. Si se omite, el cuadro de diálogo se coloca aproximadamente un tercio de la altura de la pantalla, desde el borde superior de la misma.

Helpfile.- Texto que identifica el archivo de Ayuda que se utiliza para proporcionar ayuda interactiva en el cuadro de diálogo. Si se especifica, también se debe especificar context.

Context.- Expresión numérica que es igual al número de contexto de Ayuda asignado por el autor al tema de Ayuda correspondiente. Si se especifica, también se debe especificar helpfile.

Desarrollo de Aplicaciones con VBA Algunos ejemplos con Inputbox VALOR POR DEFECTO (DEFAULT) El dato

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA Algunos ejemplos con Inputbox VALOR POR DEFECTO (DEFAULT) El dato por
Desarrollo de Aplicaciones con VBA Algunos ejemplos con Inputbox VALOR POR DEFECTO (DEFAULT) El dato por

Algunos ejemplos con Inputbox

VALOR POR DEFECTO (DEFAULT)

El dato por defecto será la fecha Actual el cual se representará con la función Date.

Insertar un botón de comando, hacer un doble clic para ir al editor de Visual Basic, digite lo siguiente:

clic para ir al editor de Visual Basic, digite lo siguiente: INFORMACIÓN EN LÍNEAS Cuando desea
clic para ir al editor de Visual Basic, digite lo siguiente: INFORMACIÓN EN LÍNEAS Cuando desea

INFORMACIÓN EN LÍNEAS

Cuando desea poner en dos líneas utilice el ampersand, luego digite Chr(13), esto es como si presionara Enter, digite el segundo texto entre comillas, luego digite el título que debe tener la ventana

texto entre comillas, luego digite el título que debe tener la ventana Universidad Nacional de Ingeniería
texto entre comillas, luego digite el título que debe tener la ventana Universidad Nacional de Ingeniería
Desarrollo de Aplicaciones con VBA ERRORES DE MACROS Los errores se dan cuando se están
Desarrollo de Aplicaciones con VBA ERRORES DE MACROS Los errores se dan cuando se están

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA ERRORES DE MACROS Los errores se dan cuando se están ingresando

ERRORES DE MACROS

Los errores se dan cuando se están ingresando datos incorrectos en la línea de código como pueden ser errores de digitación o variables no declaradas.

ERRORES DE DIGITACIÓN

Inserte un botón de comando (control activeX) en la hoja de Excel, hacer un doble clic, en la ventana de código escribe las siguientes instrucciones:

x

= 2

 

Range("A1").Valu = x

x = 2   Range("A1").Valu = x Esta ventana de error se muestra porque no reconoce
x = 2   Range("A1").Valu = x Esta ventana de error se muestra porque no reconoce

Esta ventana de error se muestra porque no reconoce al texto “Valu” que es una propiedad mal digitada, lo correcto era digitar Value.

VARIABLES NO DECLARADAS

Inserte un botón de comando (control activeX) en la hoja de Excel; hacer un doble clic en el botón.

En la ventana de código escribe Option Explicit al inicio del código como se muestra en la imagen ---

Debajo de la línea Private siguientes instrucciones:

X

= 2

 

Range("A5").Value = X

Sub … escribe

las

  Range("A5").Value = X Sub … escribe las Presione la tecla F5 para ejecutar la macro.
  Range("A5").Value = X Sub … escribe las Presione la tecla F5 para ejecutar la macro.

Presione la tecla F5 para ejecutar la macro. Como la variable X no está definido. Excel VBA ha coloreado la X azul y muestra una ventana con el mensaje de error

VBA ha coloreado la X azul y muestra una ventana con el mensaje de error Universidad
Desarrollo de Aplicaciones con VBA CORREGIR ERRORES En el Editor de Visual Basic, haga clic

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA CORREGIR ERRORES En el Editor de Visual Basic, haga clic en
Desarrollo de Aplicaciones con VBA CORREGIR ERRORES En el Editor de Visual Basic, haga clic en

CORREGIR ERRORES

En el Editor de Visual Basic, haga clic en Restablecer para detener el depurador ------

Debajo de Private Sub … digite lo siguiente Dim x As Integer

de Private Sub … digite lo siguiente Dim x As Integer DEPURAR LÍNEAS DE CÓDIGO Es
de Private Sub … digite lo siguiente Dim x As Integer DEPURAR LÍNEAS DE CÓDIGO Es

DEPURAR LÍNEAS DE CÓDIGO

Es posible que haya oído hablar de la técnica llamada depuración antes de ejecutar. Con esta técnica se puede recorrer el código. Los procedimientos a seguir son:

* En el Editor de Visual Basic, coloque el

cursor antes de la línea de código Private

Sub …

* Presione la tecla F8 y la primera línea se pinta de color amarillo.

la tecla F8 y la primera línea se pinta de color amarillo. Presione F8 varias veces

Presione F8 varias veces para pasar de línea en línea.

Cuando la línea tiene algún error muestra la ventana siguiente de error

tiene algún error muestra la ventana siguiente de error La depuración es una gran manera de

La depuración es una gran manera de no sólo encontrar errores, sino también entender el código mejor.

Para verificar o comprobar que no haya más errores presione el botón Continuar. En este procedimiento debe limpiar la franja pintada de color amarillo

En este procedimiento debe limpiar la franja pintada de color amarillo Universidad Nacional de Ingeniería Pág.
Desarrollo de Aplicaciones con VBA VARIABLES Una variable es un nombre que hace las funciones
Desarrollo de Aplicaciones con VBA VARIABLES Una variable es un nombre que hace las funciones

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA VARIABLES Una variable es un nombre que hace las funciones de

VARIABLES

Una variable es un nombre que hace las funciones de contenedor polivalente que puede albergar distintos valores o datos los cuales dependerá de la clase de dato que desea guardar dentro de ellas

Hay que tener en cuenta que Excel interpreta de forma inteligente el tipo de variable a la que nos estamos refiriendo. Es decir, la variable se refiere a valores numéricos, pero en otros casos pueden ser textos, fechas, etc.

Ese "reconocimiento inteligente" que hace Excel del tipo de variable, requiere la utilización de más memoria en el equipo (debido a que asigna por defecto un tipo de variable-comodín llamado "variant") y por lo tanto es conveniente facilitarle las cosas indicando en lo que se llama una "declaración de variable".

Si no se declara la variable tomará como tipo de dato Variant (tipo de variable que almacena todo tipo de información). El tipo variant ocupa 20 bytes. Cosa que no es recomendable

De ahí se recomienda que la variable sea declarada. Y es más fácil de hacer modificaciones

¿Por qué declarar variables? Básicamente es para tener más ordenado la codificación. Si declara las variables:

Ocuparán menos espacio en memoria.

Nuestra macro será difícil de interpretar para otros usuarios que puedan necesitar leer el código VBA (incluso para nosotros mismos). Tener al principio de la macro una lista con las variables declaradas resulta muy útil y aclarador.

Podría utilizar esa variable posteriormente en varias macros.

DECLARAR VARIABLES A OBJETOS

Declarar variables de objeto permite el ahorro en tiempo de escritura de código, en tiempo de ejecución del mismo, así como la organización y orden conseguidos en la estructura del

procedimiento o macro.

Para declarar la variable:

Escribe un nombre personal para la variable

la variable: Escribe un nombre personal para la variable As Expresión que se interpreta como Dim

As Expresión que se interpreta como

para la variable As Expresión que se interpreta como Dim IGV as Double Escribe el nombre

Dim IGV as Double

Escribe el nombre con el cual se reconocerá el tipo de dato

Dim Establecer o Declarar

se reconocerá el tipo de dato Dim Establecer o Declarar En resumen se interpreta así: Establecer
se reconocerá el tipo de dato Dim Establecer o Declarar En resumen se interpreta así: Establecer

En resumen se interpreta así:

Establecer el nombre IGV como valor Decimal

En resumen se interpreta así: Establecer el nombre IGV como valor Decimal Universidad Nacional de Ingeniería
Desarrollo de Aplicaciones con VBA REGLAS Las variables a declarar deben seguir ciertas reglas determinadas:

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA REGLAS Las variables a declarar deben seguir ciertas reglas determinadas: ◾
Desarrollo de Aplicaciones con VBA REGLAS Las variables a declarar deben seguir ciertas reglas determinadas: ◾

REGLAS

Las variables a declarar deben seguir ciertas reglas determinadas:

La denominación de la variable debe empezar con una letra y no con un número.

No debe de tener más de 250 caracteres.

No puede emplearse las palabras reservadas para la sintaxis de la propia Excel. Por ejemplo no puede llamar a una variable con el nombre de WorkSheet etc.

Debe consistir en una cadena continua de caracteres. Por ejemplo no puede emplear como nombre “mi variable” pero sí “mi_variable”.

TIPOS DE VARIABLES

Existen tipos de datos diferentes con los que se puede trabajar. Por ejemplo al declarar una variable en VBA basta añadir una línea de código para definir la naturaleza de los valores que almacenaremos en ella. Estos son:

INTEGER (ENTERO)

La variable Integer se utiliza para almacenar números enteros.

variable Integer se utiliza para almacenar números enteros. Dim x As Integer x = 6 Range

Dim x As Integer

x = 6

Range ("A1").Value = x

Declarar x como valor entero

“X” es igual a 6 El contenido de la celda A1 es igual

al valor de 6

DOUBLE (DOBLE)

Una variable de tipo Double es más precisa que una variable de tipo entero y también puede almacenar números decimales.

tipo entero y también puede almacenar números decimales. Dim x As Double x = 5.5 MsgBox
tipo entero y también puede almacenar números decimales. Dim x As Double x = 5.5 MsgBox

Dim x As Double

x = 5.5

MsgBox "el valor es " & x

declarar x como decimal

x es igual a 5.5 mensaje:“el valor es 5.5”

STRING (TEXTO) (CADENA)

La variable String se utiliza para almacenar texto.

Dim book As String book = "Excel" Range("A1").Value = book

Declarar book como texto book es igual a Excel La celda A1 es igual a Excel

CURRENCY (MONEDA)

El tipo de dato Moneda es en realidad un tipo entero internamente pero que como resultado muestra con el símbolo monetario y dos decimales.

resultado muestra con el símbolo monetario y dos decimales. Dim celdita As Currency   celdita =

Dim celdita As Currency

 

celdita = 24

 

Range("A3").Value = celdita

Desarrollo de Aplicaciones con VBA BOOLEAN (LÓGICA) Una variable de tipo lógico es aquella que
Desarrollo de Aplicaciones con VBA BOOLEAN (LÓGICA) Una variable de tipo lógico es aquella que

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA BOOLEAN (LÓGICA) Una variable de tipo lógico es aquella que puede

BOOLEAN (LÓGICA)

Una variable de tipo lógico es aquella que puede almacenar solamente dos valores: Falso o Verdadero.

Dim continue As Boolean

 

continue = True

 

If continue = True Then MsgBox "Es Verdadero

"

If continue = True Then MsgBox "Es Verdadero " OTROS Byte: corresponde a una variable de

OTROS

Byte: corresponde a una variable de 8 bits que puede almacenar valores de 0 a 255. Es muy útil para el almacenamiento de datos binarios. Long: es un número de 32 bits. Las variables Long sólo pueden contener valores enteros. Decimal: El Decimal es un subtipo de dato Variant. Tiene una precisión de hasta 28 decimales Single: Es un número de 32 bits que se utiliza para números decimales. Object: Se utiliza Object cuando en el tiempo de compilación no se conoce a qué tipo de datos puede señalar la variable. Son de acceso más lento que las variables que tienen un tipo explícito. Variant: Los Variant almacenan valores numéricos y no numéricos. Son los más flexibles de todos los tipos disponibles, ya que almacena valores muy grandes de casi cualquier tipo (coincide con el tipo de dato numérico doble). Se recomienda evitar utilizar ya que hace más pesado el archivo.

OPTION EXPLICIT

Ésta obliga a declarar las variables que no haya declarado dando la alerta de la variable no declarada. Hay dos formas para utilizar la declaración de variables obligatorias y son:

VARIABLE LOCAL

Consiste en digitar “Option Explicit” al principio de la línea de código generando una línea de división entre el procedimiento sub o function.

línea de división entre el procedimiento sub o function. VARIABLE PREDETERMINADA Para predeterminar la variable

VARIABLE PREDETERMINADA

Para predeterminar la variable seleccione el Menú herramientas en el Editor de Visual Basic, hacer un clic en Opciones, en la pestaña Editor activar la casilla “requerir declaración de variable”

pestaña Editor activar la casilla “requerir declaración de variable” Universidad Nacional de Ingeniería Pág. 31
Desarrollo de Aplicaciones con VBA PROGRAMACIÓN BÁSICA LIBROS CREAR UN LIBRO Sub Libritos() Dim nuevo

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA PROGRAMACIÓN BÁSICA LIBROS CREAR UN LIBRO Sub Libritos() Dim nuevo As

PROGRAMACIÓN BÁSICA

Desarrollo de Aplicaciones con VBA PROGRAMACIÓN BÁSICA LIBROS CREAR UN LIBRO Sub Libritos() Dim nuevo As

LIBROS

CREAR UN LIBRO Sub Libritos() Dim nuevo As Workbook Set nuevo = Workbooks.Add End Sub

GUARDAR UN LIBRO Sub GuardaLibritos() Dim nuevo As Workbook Set nuevo = Workbooks.Add nuevo.SaveAs "Ejemplo.xlsx" End Sub

ABRIR UN LIBRO Sub AbreLibritos() Workbooks.Open "Ejemplo.xlsx" End Sub

CERRAR UN LIBRO ACTIVO Sub CierraLibritos() Workbooks.Close End Sub

HOJAS

INSERTAR HOJA Sub Hojitas() Sheets.Add End Sub

INSERTAR UNA HOJA ANTES DE UNA HOJA ESPECÍFICA Sub Hojitas() ActiveWorkbook.Sheets.Add before:=Worksheets("casos") End Sub

INSERTAR UNA HOJA DESPUES DE UNA HOJA ESPECÍFICA Sub Hojitas() ActiveWorkbook.Sheets.Add after:=Worksheets("casos") End Sub

MOVER HOJAS Sub MoverHojitas()

Worksheets("Hoja5").Move

after:=Worksheets("casos") End Sub

ELIMINAR HOJAS Sub MoverHojitas()

Sheets("Hoja3").Delete

End Sub

Desarrollo de Aplicaciones con VBA CONTROLES DE FORMULARIO Los controles de formulario en Excel son
Desarrollo de Aplicaciones con VBA CONTROLES DE FORMULARIO Los controles de formulario en Excel son

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA CONTROLES DE FORMULARIO Los controles de formulario en Excel son objetos

CONTROLES DE FORMULARIO

Los controles de formulario en Excel son objetos que puede colocar dentro de una hoja y que darán funcionalidad adicional para interactuar mejor con los usuarios y tener un mejor control sobre la información.

Para insertar cualquiera de los controles de formulario seleccione la ficha desarrollador, luego hacer un clic en el botón Insertar y observará cada uno de ellos, seleccione del menú desplegable y dibuje haciendo un arrastre en diagonal hasta encontrar el tamaño adecuado

TIPOS DE CONTROLES DE FORMULARIO

Existen diferentes tipos de controles de formulario en Excel que ofrecen diversos tipos de funcionalidad e interacción con el usuario. Desde una simple etiqueta hasta controles que permiten una selección múltiple de sus opciones. Entre los controles están:

Etiqueta. Permite especificar un texto o breves instrucciones en el formulario.

un texto o breves instrucciones en el formulario. Cuadro combinado . Es una combinación de un

Cuadro combinado. Es una combinación de un cuadro de texto con un cuadro de lista.

Cuadro de lista. Muestra una lista de valores de los cuales puede elegir una sola opción o múltiples opciones de acuerdo a la configuración del control.

Control de número. Aumenta o disminuye un valor numérico.

Barra de desplazamiento. Al hacer clic en las flechas se va desplazando la barra dentro de un intervalo predefinido.

Botón. Permite ejecutar una macro al momento de hacer clic sobre él.

Casilla de verificación. Permite la selección o no selección de una opción.

Botón de opción. Permite una única selección dentro de un conjunto de opciones.

Cuadro de grupo. Agrupa varios controles dentro de un rectángulo.

CONTROLES ACTIVEX

Los controles ActiveX son un tipo de controles que permiten agregar funcionalidad de formularios a los libros de Excel.

Los controles ActiveX comenzaron a ser utilizados a partir de Excel 97 y ofrecen más posibilidades de configuración y formato.

97 y ofrecen más posibilidades de configuración y formato. DIFERENCIA ENTRE CONTROLES DE FORMULARIO Y CONTROLES

DIFERENCIA ENTRE CONTROLES DE FORMULARIO Y CONTROLES ACTIVEX

La diferencia más significativa entre ambos es la forma de obtener información de los controles al momento de interactuar con el usuario.

Los controles de formulario solamente responderán después de que el usuario ha interactuado con ellos, como después de haber pulsado el botón.

Los controles ActiveX responden de manera continua a las acciones del usuario lo cual permite realizar acciones como por ejemplo: cambiar el tipo de puntero del mouse que se muestra al colocar el puntero del ratón sobre el botón.

Desarrollo de Aplicaciones con VBA PROPIEDADES DE LOS CONTROLES ACTIVEX Los controles ActiveX tienen una

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA PROPIEDADES DE LOS CONTROLES ACTIVEX Los controles ActiveX tienen una serie
Desarrollo de Aplicaciones con VBA PROPIEDADES DE LOS CONTROLES ACTIVEX Los controles ActiveX tienen una serie

PROPIEDADES DE LOS CONTROLES ACTIVEX

Los controles ActiveX tienen una serie de propiedades que puede configurar haciendo un clic en Propiedades que se encuentra dentro del grupo Controles de la ficha Desarrollador.

dentro del grupo Controles de la ficha Desarrollador. Para ver las propiedades de un control ActiveX

Para ver las propiedades de un control ActiveX debe estar activado el botón Modo Diseño el cual permitirá seleccionar el control y posteriormente ver sus propiedades. Cada tipo de control ActiveX mostrará una ventana de Propiedades con sus propias características.

CONTROLES ACTIVEX CON SUBRUTINAS VBA

Los controles ActiveX no tienen asignada una macro explícitamente sino que puede asignar código VBA para cada evento del control. Un evento de un control ActiveX puede ser: el hacer clic, hacer doble clic, colocar el cursor en el control, etc.

Para asignar código a uno de los eventos de un control ActiveX realice uno de los siguientes procedimientos:

* Hacer clic derecho sobre él y seleccionar la opción Ver código, o

* Hacer un doble clic en el mismo control

Ver código, o * Hacer un doble clic en el mismo control Esto mostrará el Editor

Esto mostrará el Editor de Visual Basic con una subrutina para el evento Click() donde puede escribir el código respectivo.

evento Click() donde puede escribir el código respectivo. Al seleccionar cualquiera de los eventos en el

Al seleccionar cualquiera de los eventos en el cuadro desplegable de la derecha se insertará una nueva subrutina que puede utilizar. Son precisamente la gran cantidad de eventos disponibles para los controles ActiveX lo que los hace controles muy poderosos que podemos utilizar en nuestros formularios.

Desarrollo de Aplicaciones con VBA CONTROL CUADRO DE TEXTO Es un control ActiveX que muestra
Desarrollo de Aplicaciones con VBA CONTROL CUADRO DE TEXTO Es un control ActiveX que muestra

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA CONTROL CUADRO DE TEXTO Es un control ActiveX que muestra un

CONTROL CUADRO DE TEXTO

Es un control ActiveX que muestra un campo vacío donde puede introducir cualquier texto.

un campo vacío donde puede introducir cualquier texto. CONTROL CUADRO DE LISTA El cuadro de lista

CONTROL CUADRO DE LISTA

El cuadro de lista es un control ActiveX que permite desplegar una serie de opciones de las cuales puede realizar una selección. Puede configurar el cuadro de lista para permitir seleccionar uno o varios elementos de la lista.

permitir seleccionar uno o varios elementos de la lista. CONTROL CUADRO COMBINADO El cual también es

CONTROL CUADRO COMBINADO

El cual también es llamado comúnmente por su nombre en inglés como ComboBox, este control permite crear listas desplegables en los formularios.

permite crear listas desplegables en los formularios. CONTROL CASILLA DE VERIFICACIÓN Utilice para permitir que

CONTROL CASILLA DE VERIFICACIÓN

Utilice para permitir que un usuario marque una opción y por lo tanto pueda conocer sus preferencias al verificar dicho valor en código VBA.

sus preferencias al verificar dicho valor en código VBA. CONTROL BOTÓN DE OPCIÓN Permite seleccionar una

CONTROL BOTÓN DE OPCIÓN

Permite seleccionar una sola opción dentro de un grupo de botones de opción. A diferencia de las casillas de verificación, los botones de opción dependen uno del otro.

casillas de verificación, los botones de opción dependen uno del otro. Universidad Nacional de Ingeniería Pág.
Desarrollo de Aplicaciones con VBA FORMULARIOS EN VBA Los forms (o formularios) son lo que

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA FORMULARIOS EN VBA Los forms (o formularios) son lo que también
Desarrollo de Aplicaciones con VBA FORMULARIOS EN VBA Los forms (o formularios) son lo que también

FORMULARIOS EN VBA

Los forms (o formularios) son lo que también se llamarían "ventana" o “cuadro de diálogo” que en realidad es una superficie que contiene controles, como por ejemplo un botón o una zona para escribir texto, y que se muestra visible en algún momento de la ejecución.

CREAR UN FORMULARIO EN EXCEL

Para crear un formulario realice los siguientes procedimientos:

1. Abre el Editor de Visual Basic (Alt + F11)

2. Seleccione el menú Insertar, hacer un clic en UserForm

Otra forma

el menú Insertar, hacer un clic en UserForm Otra forma 1. Abra el Editor de Visual

1. Abra el Editor de Visual Basic.

2. Presionar el botón derecho en el nombre del proyecto, seleccione la opción Insertar, hacer un clic en UserForm

seleccione la opción Insertar, hacer un clic en UserForm Al insertar la ventana de Formulario se

Al insertar la ventana de Formulario se agrega automáticamente el Cuadro de herramientas (por defecto situado a la izquierda del formulario)

Este cuadro contiene los controles que puede ir colocando en el formulario, para ello bastará con seleccionar el control a utilizar y hacer un clic en el área donde desee colocar, o hacer un arrastre y "dibujarlo" sobre el formulario hasta obtener el tamaño adecuado.

sobre el formulario hasta obtener el tamaño adecuado. MOSTRAR/OCULTAR CUADRO DE HERRAMIENTAS Para mostrar el

MOSTRAR/OCULTAR CUADRO DE HERRAMIENTAS

Para mostrar el cuadro de herramientas, en la barra de iconos hacer un clic en el icono “Cuadro de Herramientas”. De igual manera si desea ocultar el cuadro, seleccione el mismo icono o presione sobre el botón cerrar del mismo cuadro de herramientas.

icono o presione sobre el botón cerrar del mismo cuadro de herramientas. Universidad Nacional de Ingeniería
Desarrollo de Aplicaciones con VBA CONTROLES DEL CUADRO DE HERRAMIENTAS En forma resumida se describe
Desarrollo de Aplicaciones con VBA CONTROLES DEL CUADRO DE HERRAMIENTAS En forma resumida se describe

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA CONTROLES DEL CUADRO DE HERRAMIENTAS En forma resumida se describe a

CONTROLES DEL CUADRO DE HERRAMIENTAS

En forma resumida se describe a continuación a los controles

     

Nombre

 

Icono

Nombre Real

Nombre Común

Convencional

Descripción

 

Label

   

Se utiliza para ingresar textos como títulos y/o subtítulos

Etiqueta Lbl
Etiqueta Lbl

Etiqueta

Lbl

 

TextBox

   

Permite introducir datos desde el formulario.

Cuadro de texto Txt
Cuadro de texto Txt

Cuadro de texto

Txt

 

ComboBox

   

Permite mostrar datos en una lista desplegable.

Cuadro combinado Cbo
Cuadro combinado Cbo

Cuadro

combinado

Cbo

 

ListBox

     
Cuadro de lista Lst Permite mostrar una lista de datos en un cuadro.
Cuadro de lista Lst Permite mostrar una lista de datos en un cuadro.

Cuadro de lista

Lst

Permite mostrar una lista de datos en un cuadro.

CheckBox     Se utiliza para elegir en forma individual en un grupo de casillas

CheckBox

   

Se utiliza para elegir en forma individual en un grupo de casillas

Casilla Chk

Casilla

Chk

OptionButton     Se utiliza para elegir uno dentro de un grupo

OptionButton

   

Se utiliza para elegir uno dentro de un grupo

Botón de opción Btn

Botón de opción

Btn

 

Frame

   

Se utiliza para organizar y/o formar grupos con los controles

Marco
Marco

Marco

CommandButton Botón de   Se utiliza para ejecutar las macros que se le haya asignado

CommandButton

Botón de

 

Se utiliza para ejecutar las macros que se le haya asignado

Comando Cmd

Comando

Cmd

ó Botón

 

MultiPage

     
Página múltiple Muestra la ventana del formulario con varias pestañas
Página múltiple Muestra la ventana del formulario con varias pestañas

Página múltiple

Muestra la ventana del formulario con varias pestañas

SpinButton     Permite introducir números de forma dinámica

SpinButton

   

Permite introducir números de forma dinámica

Control de Spn

Control de

Spn

número

 

Picture

     
Imagen Img Se utiliza como contenedor de las imágenes insertadas en el formulario
Imagen Img Se utiliza como contenedor de las imágenes insertadas en el formulario

Imagen

Img

Se utiliza como contenedor de las imágenes insertadas en el formulario

Desarrollo de Aplicaciones con VBA DISEÑO DE UN FORMULARIO El diseño del formulario consiste en

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA DISEÑO DE UN FORMULARIO El diseño del formulario consiste en insertar
Desarrollo de Aplicaciones con VBA DISEÑO DE UN FORMULARIO El diseño del formulario consiste en insertar

DISEÑO DE UN FORMULARIO

El diseño del formulario consiste en insertar los controles necesarios, organizar y distribuir de tal forma que sea atractivo al momento de ejecutarlo tanto a la vista como a su aplicación permitiendo controlar o ingresar datos en la hoja de cálculo.

El siguiente diseño es de un formulario para el registro de datos de alumnos:

es de un formulario para el registro de datos de alumnos: CAMBIAR NOMBRES A LOS CONTROLES

CAMBIAR NOMBRES A LOS CONTROLES

Una vez insertado el control se requiere cambiar el nombre para que mostrar en el formulario y o para utilizar en la programación y así entenderlo mejor. Hay diversas formas con la cual puede cambiar el nombre los cuales se describen a continuación:

CAMBIAR EL NOMBRE PARA MOSTRAR EN EL FORMULARIO

Desde el panel propiedades

Seleccione el control

Panel propiedades, doble clic en Caption y se resaltará el cuadro de la derecha

Escribe el nombre respectivo y se notará el cambio en el cuadro de nombre

Desde la ventana del formulario

Seleccione el control

Hacer un clic en el nombre del control

Borre el texto

Escribe el nuevo nombre, luego hacer un clic fuera del cuadro para establecer el nombre.

CAMBIAR NOMBRE PARA PROGRAMAR

Seleccione el control

Panel propiedades, doble clic en la propiedad Name y se resaltará el cuadro de la derecha

Escribe el nuevo nombre incluyendo el nombre convencional al inicio

 Escribe el nuevo nombre incluyendo el nombre convencional al inicio Universidad Nacional de Ingeniería Pág.
 Escribe el nuevo nombre incluyendo el nombre convencional al inicio Universidad Nacional de Ingeniería Pág.
 Escribe el nuevo nombre incluyendo el nombre convencional al inicio Universidad Nacional de Ingeniería Pág.
MODELOS DE FORMULARIOS Desarrollo de Aplicaciones con VBA Universidad Nacional de Ingeniería Pág. 39

MODELOS DE FORMULARIOS

MODELOS DE FORMULARIOS Desarrollo de Aplicaciones con VBA Universidad Nacional de Ingeniería Pág. 39

Desarrollo de Aplicaciones con VBA

MODELOS DE FORMULARIOS Desarrollo de Aplicaciones con VBA Universidad Nacional de Ingeniería Pág. 39
MODELOS DE FORMULARIOS Desarrollo de Aplicaciones con VBA Universidad Nacional de Ingeniería Pág. 39
MODELOS DE FORMULARIOS Desarrollo de Aplicaciones con VBA Universidad Nacional de Ingeniería Pág. 39
MODELOS DE FORMULARIOS Desarrollo de Aplicaciones con VBA Universidad Nacional de Ingeniería Pág. 39
MODELOS DE FORMULARIOS Desarrollo de Aplicaciones con VBA Universidad Nacional de Ingeniería Pág. 39
Desarrollo de Aplicaciones con VBA ABRIR FORMULARIOS DESDE LA HOJA DE CÁLCULO Mostrar el formulario

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA ABRIR FORMULARIOS DESDE LA HOJA DE CÁLCULO Mostrar el formulario al
Desarrollo de Aplicaciones con VBA ABRIR FORMULARIOS DESDE LA HOJA DE CÁLCULO Mostrar el formulario al

ABRIR FORMULARIOS DESDE LA HOJA DE CÁLCULO

Mostrar el formulario al presionar el control Botón

Inserte el control Botón (activeX) desde la ficha Desarrollador

Seleccione el control, clic en el icono Propiedades

En el panel Propiedades escribe un nombre para el botón en la propiedad Caption

escribe un nombre para el botón en la propiedad Caption  Hacer un doble clic en

Hacer un doble clic en el control Botón para abrir la ventana del Editor de Visual Basic y digite la siguiente instrucción:

Escribe el nombre del Formulario

Escribe el evento que realizará el formulario. Show = Abrir

Escribe el evento que realizará el formulario. Show = Abrir Userform1.Show Mostrar el formulario al Abrir
Escribe el evento que realizará el formulario. Show = Abrir Userform1.Show Mostrar el formulario al Abrir

Userform1.Show

que realizará el formulario. Show = Abrir Userform1.Show Mostrar el formulario al Abrir el archivo Si

Mostrar el formulario al Abrir el archivo

Si lo que se busca es ver un formulario desde el inicio de la aplicación, entonces realice los siguientes procedimientos:

Guarde el archivo de Excel para evitar pérdida de datos,

Abre el editor de Visual Basic (Alt + F11)

Hacer un doble clic en el icono ThisWorkbook

Cambie el nombre General (Objeto) por Workbook y cambiará automáticamente al procedimiento Open (lugar donde se va a programar)

al procedimiento Open (lugar donde se va a programar)  Escribe: Userform1.Show Compruebe cerrando el archivo
al procedimiento Open (lugar donde se va a programar)  Escribe: Userform1.Show Compruebe cerrando el archivo

Escribe: Userform1.Show

donde se va a programar)  Escribe: Userform1.Show Compruebe cerrando el archivo una vez que haya

Compruebe cerrando el archivo una vez que haya guardado todos los cambios.

Desarrollo de Aplicaciones con VBA PROGRAMANDO CONTROLES DE FORMULARIO Para programar un control se deberá
Desarrollo de Aplicaciones con VBA PROGRAMANDO CONTROLES DE FORMULARIO Para programar un control se deberá

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA PROGRAMANDO CONTROLES DE FORMULARIO Para programar un control se deberá tener

PROGRAMANDO CONTROLES DE FORMULARIO

Para programar un control se deberá tener en cuenta que es lo que desea que haga dicho control en el momento de la ejecución o de qué manera se utilizaría para los datos a trabajar como puede ser ingresando, seleccionando, calculando, eligiendo de una lista, activando o desactivando, etc. Además

Es importante tener en cuenta el nombre que tiene el control, específicamente sobre la propiedad Name ya que la Programación va a depender de su nombre.

A continuación se describe algunos ejemplos de cómo programar los controles que se utilizarán en un formulario.

CUADRO DE TEXTO (TextBox)

Mayormente para este control se programa en el botón de comando, pero también hay casos en que puede programar directamente sobre el control. Aquí un ejemplo desde el mismo control

Seleccione el control y revise el nombre, o en la propiedad Name escribe el nombre para el control (por ejm: TxtNombres)

Name escribe el nombre para el control (por ejm: TxtNombres)  Hacer un doble clic en

Hacer un doble clic en el control

(por ejm: TxtNombres)  Hacer un doble clic en el control  Escribe la siguiente instrucción:

Escribe la siguiente instrucción:

clic en el control  Escribe la siguiente instrucción:  Presione F5 para ejecutar el formulario,

Presione F5 para ejecutar el formulario, luego ingrese el dato

La propiedad Change indica que mientras escribes en el cuadro, éste se va insertando en
La propiedad Change indica que mientras escribes en el cuadro, éste se va
insertando en el lugar donde se haya especificado en la hoja de Excel. Se
podría decir también “Ingresas mientras escribes”.

Otro ejemplo: La siguiente instrucción en la propiedad Exit permite mostrar el resultado de un cálculo una vez que se presionó la tecla Enter después de haber ingresado el dato.

vez que se presionó la tecla Enter después de haber ingresado el dato. Universidad Nacional de
Desarrollo de Aplicaciones con VBA CUADRO COMBINADO (ComboBox) Su función es mostrar una lista de

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA CUADRO COMBINADO (ComboBox) Su función es mostrar una lista de datos
Desarrollo de Aplicaciones con VBA CUADRO COMBINADO (ComboBox) Su función es mostrar una lista de datos

CUADRO COMBINADO (ComboBox)

Su función es mostrar una lista de datos y se programa (crea) desde el mismo formulario o se establece la información en el panel de propiedades. A continuación las opciones para crear la lista:

CREAR LISTAS INDEPENDIENTES

Seleccione el control y revise su nombre para poder utilizarlo en la programación

Hacer un doble clic en un espacio libre dentro de la ventana del formulario

clic en un espacio libre dentro de la ventana del formulario  Cambiar el procedimiento Click

Cambiar el procedimiento Click por el procedimiento Activate o Initialize

Escribe las siguientes líneas de código:

o Initialize  Escribe las siguientes líneas de código: CREAR LISTAS QUE DEPENDEN DE UN CONJUNTO

CREAR LISTAS QUE DEPENDEN DE UN CONJUNTO DE CELDAS

Desde la ventana de código

DE UN CONJUNTO DE CELDAS Desde la ventana de código Desde el panel Propiedades Universidad Nacional

Desde el panel Propiedades

CONJUNTO DE CELDAS Desde la ventana de código Desde el panel Propiedades Universidad Nacional de Ingeniería
Desarrollo de Aplicaciones con VBA CUADRO DE LISTA (Listbox) Su función es mostrar una lista
Desarrollo de Aplicaciones con VBA CUADRO DE LISTA (Listbox) Su función es mostrar una lista

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA CUADRO DE LISTA (Listbox) Su función es mostrar una lista de

CUADRO DE LISTA (Listbox)

Desarrollo de Aplicaciones con VBA CUADRO DE LISTA (Listbox) Su función es mostrar una lista de

Su función es mostrar una lista de datos y se programa (crea) desde el mismo formulario o se establece la información en el panel de propiedades. A diferencia del cuadro combinado, este cuadro muestra un conjunto de datos a la vez.

CREAR LISTAS INDEPENDIENTES

Seleccione el control y revise su nombre para poder utilizarlo en la programación

Hacer un doble clic en un espacio libre dentro de la ventana del formulario

clic en un espacio libre dentro de la ventana del formulario  Cambiar el procedimiento Click

Cambiar el procedimiento Click por el procedimiento Activate o Initialize

Escribe las siguientes líneas de código:

o Initialize  Escribe las siguientes líneas de código: CREAR LISTAS QUE DEPENDEN DE UN CONJUNTO

CREAR LISTAS QUE DEPENDEN DE UN CONJUNTO DE CELDAS

Desde la ventana de código

DE UN CONJUNTO DE CELDAS Desde la ventana de código Desde el panel Propiedades Universidad Nacional

Desde el panel Propiedades

CONJUNTO DE CELDAS Desde la ventana de código Desde el panel Propiedades Universidad Nacional de Ingeniería
Desarrollo de Aplicaciones con VBA CASILLA DE VERIFICACIÓN (CheckBox) Este control se programa desde el

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA CASILLA DE VERIFICACIÓN (CheckBox) Este control se programa desde el control
Desarrollo de Aplicaciones con VBA CASILLA DE VERIFICACIÓN (CheckBox) Este control se programa desde el control

CASILLA DE VERIFICACIÓN (CheckBox)

Este control se programa desde el control Botón utilizando la sentencia IF

programa desde el control Botón utilizando la sentencia IF Se interpreta así: Si la casilla (ChkAutocad)

Se interpreta así:

Si la casilla (ChkAutocad) está activada entonces la celda A2 toma el valor de Autocad.

BOTÓN DE OPCIÓN (OptionButton)

Este control también se programa desde el control Botón utilizando la sentencia IF

programa desde el control Botón utilizando la sentencia IF CONTROL DE NÚMERO (Spinbutton) Al programar en

CONTROL DE NÚMERO (Spinbutton)

Al programar en este control se utiliza la propiedad Change la cual indica que cuando presione el botón un valor se va mostrando en el cuadro de texto al cual fue designado el valor

en el cuadro de texto al cual fue designado el valor Se interpreta así: El cuadro

Se interpreta así:

El cuadro de texto TxtCant es igual al valor numérico del Spinbutton según la cantidad de veces que presione dicho botón.

IMAGEN (Image)

Este control puede almacenar una imagen fija o puede mostrar una imagen diferente cada vez que se realice una acción.

una imagen diferente cada vez que se realice una acción. Se interpreta así: Al ejecutar el

Se interpreta así:

Al ejecutar el formulario el cuadro imgLogo muestra la imagen (por ejemplo: sam) según la ruta de almacenamiento y el nombre incluido con el tipo o formato que se haya escrito entre comillas.

Desarrollo de Aplicaciones con VBA BOTÓN DE COMANDO (CommandButton) Este es uno de los controles
Desarrollo de Aplicaciones con VBA BOTÓN DE COMANDO (CommandButton) Este es uno de los controles

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA BOTÓN DE COMANDO (CommandButton) Este es uno de los controles en

BOTÓN DE COMANDO (CommandButton)

Este es uno de los controles en el cual se programa de forma frecuente permitiendo realizar varias acciones de acuerdo al orden que se haya programado. Puede almacenar información, realizar cálculos, mostrar mensajes, abrir formularios, archivos, prácticamente puede hacer todo lo que se le indique en las líneas de código.

Ejemplo de un botón Almacenando datos en la hoja de Excel

Ejemplo de un botón Almacenando datos en la hoja de Excel Ejemplo de un botón que

Ejemplo de un botón que ejecuta una fórmula (Calculando)

Ejemplo de un botón que ejecuta una fórmula (Calculando) Ejemplo de un botón mostrando un Mensaje

Ejemplo de un botón mostrando un Mensaje

(Calculando) Ejemplo de un botón mostrando un Mensaje FORMULARIO (Userform1) Una de las opciones por la

FORMULARIO (Userform1)

Una de las opciones por la cual se programa en la ventana del formulario es porque permite mostrar valores predeterminados en algunos controles así como mostrar almacenado una lista de datos y otros. Para programar en el formulario puede utilizar la propiedad Initialize o Activate.

Ejemplo del formulario que muestra valores por defecto

Ejemplo del formulario que muestra valores por defecto Ejemplo de formulario que muestra una lista de

Ejemplo de formulario que muestra una lista de datos

valores por defecto Ejemplo de formulario que muestra una lista de datos Universidad Nacional de Ingeniería
Desarrollo de Aplicaciones con VBA APLICACIONES MOSTRAR/OCULTAR TABLAS 1.- Elaborar el siguiente diseño 2.- En

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA APLICACIONES MOSTRAR/OCULTAR TABLAS 1.- Elaborar el siguiente diseño 2.- En el

APLICACIONES

MOSTRAR/OCULTAR TABLAS

1.- Elaborar el siguiente diseño

MOSTRAR/OCULTAR TABLAS 1.- Elaborar el siguiente diseño 2.- En el editor de Visual Basic inserta la
MOSTRAR/OCULTAR TABLAS 1.- Elaborar el siguiente diseño 2.- En el editor de Visual Basic inserta la

2.- En el editor de Visual Basic inserta la ventana de módulo y crea las siguientes macros:

inserta la ventana de módulo y crea las siguientes macros: 3.- Seleccione la casilla Perú (ChkPeru),

3.- Seleccione la casilla Perú (ChkPeru), luego hacer un doble y agregue la siguiente línea de código

hacer un doble y agregue la siguiente línea de código 4.- Realizar el mismo procedimiento con

4.- Realizar el mismo procedimiento con la casilla ChkBrasil

5.- Conforme utilice las casillas, las tablas se mostrarán o se ocultarán

Desarrollo de Aplicaciones con VBA PRÉSTAMO A CLIENTES 1.- Elabore el siguiente diseño en la
Desarrollo de Aplicaciones con VBA PRÉSTAMO A CLIENTES 1.- Elabore el siguiente diseño en la

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA PRÉSTAMO A CLIENTES 1.- Elabore el siguiente diseño en la hoja

PRÉSTAMO A CLIENTES

1.- Elabore el siguiente diseño en la hoja de Excel

1.- Elabore el siguiente diseño en la hoja de Excel 2.- Programe el botón Nuevo Cliente

2.- Programe el botón Nuevo Cliente para que muestre la ventana del INPUTBOX solicitando ingresar los datos del Cliente, el préstamo, la tasa y el número de plazos.

del Cliente, el préstamo, la tasa y el número de plazos. Al ingresar todos los datos,

Al ingresar todos los datos, éstos se mostrarán almacenados en las celdas respectivas incluyendo la operación que calcule la cuota a pagar.

celdas respectivas incluyendo la operación que calcule la cuota a pagar. Universidad Nacional de Ingeniería Pág.
celdas respectivas incluyendo la operación que calcule la cuota a pagar. Universidad Nacional de Ingeniería Pág.
Desarrollo de Aplicaciones con VBA Programe el botón Borrar Datos el cual muestre un mensaje

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA Programe el botón Borrar Datos el cual muestre un mensaje informativo
Desarrollo de Aplicaciones con VBA Programe el botón Borrar Datos el cual muestre un mensaje informativo

Programe el botón Borrar Datos el cual muestre un mensaje informativo que indica que se van a borrar los datos ingresados y que al aceptar deja limpio las celdas de la hoja de Excel

y que al aceptar deja limpio las celdas de la hoja de Excel Programe el botón
y que al aceptar deja limpio las celdas de la hoja de Excel Programe el botón
y que al aceptar deja limpio las celdas de la hoja de Excel Programe el botón

Programe el botón Cerrar libro el cual deberá cerrar el archivo de Excel guardando automáticamente todos los cambios hechos.

el archivo de Excel guardando automáticamente todos los cambios hechos. Universidad Nacional de Ingeniería Pág. 48
el archivo de Excel guardando automáticamente todos los cambios hechos. Universidad Nacional de Ingeniería Pág. 48
Desarrollo de Aplicaciones con VBA PAGO AL PERSONAL En la hoja de Excel Elabore el
Desarrollo de Aplicaciones con VBA PAGO AL PERSONAL En la hoja de Excel Elabore el

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA PAGO AL PERSONAL En la hoja de Excel Elabore el siguiente

PAGO AL PERSONAL

En la hoja de Excel Elabore el siguiente diseño

AL PERSONAL En la hoja de Excel Elabore el siguiente diseño Programe el botón INGRESAR para

Programe el botón INGRESAR para que muestre el formulario con el cual se ingresarán los datos y efectuando el cálculo respectivo

se ingresarán los datos y efectuando el cálculo respectivo En el editor de Visual Basic elabore

En el editor de Visual Basic elabore el siguiente formulario

respectivo En el editor de Visual Basic elabore el siguiente formulario Universidad Nacional de Ingeniería Pág.
Desarrollo de Aplicaciones con VBA Programe el botón Hallar para que realice los siguientes procedimientos:

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA Programe el botón Hallar para que realice los siguientes procedimientos: 
Desarrollo de Aplicaciones con VBA Programe el botón Hallar para que realice los siguientes procedimientos: 

Programe el botón Hallar para que realice los siguientes procedimientos:

Que calcule el monto a pagar una vez ingresado horas trabajadas, pago por hora, bonificaciones, y el descuento respectivo También que registre los valores en la hoja de Excel en las celdas respectivas

los valores en la hoja de Excel en las celdas respectivas Programe el botón Nuevo para
los valores en la hoja de Excel en las celdas respectivas Programe el botón Nuevo para

Programe el botón Nuevo para que borre los valores de los diferentes cuadros de texto en el formulario así como también los valores de las diferentes celdas en la hoja de Excel mostrando todo completamente vacío.

diferentes celdas en la hoja de Excel mostrando todo completamente vacío. Universidad Nacional de Ingeniería Pág.
diferentes celdas en la hoja de Excel mostrando todo completamente vacío. Universidad Nacional de Ingeniería Pág.
Desarrollo de Aplicaciones con VBA PALETA DE COLORES 1.- Elabore el siguiente diseño del Formulario
Desarrollo de Aplicaciones con VBA PALETA DE COLORES 1.- Elabore el siguiente diseño del Formulario

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA PALETA DE COLORES 1.- Elabore el siguiente diseño del Formulario 2.-

PALETA DE COLORES

1.- Elabore el siguiente diseño del Formulario

DE COLORES 1.- Elabore el siguiente diseño del Formulario 2.- Asigne un nombre personal a cada

2.- Asigne un nombre personal a cada control

del Formulario 2.- Asigne un nombre personal a cada control Commandbutton1 / Name / CmdLimpiar Textbox1

Commandbutton1

/ Name /

CmdLimpiar

Textbox1

/ Name /

txtColor

Textbox2

/ Name /

txtRojo

Textbox3

/ Name /

txtVerde

Textbox4

/ Name /

txtAzul

3.- Configure las propiedades para cada control Barra de Desplazamiento

las propiedades para cada control Barra de Desplazamiento Scrollbar1 / Min = 0 / Max =

Scrollbar1

/ Min = 0

/ Max = 255

Scrollbar2

/ Min = 0

/ Max = 255

Scrollbar3

/ Min = 0

/ Max = 255

4.- Programe el botón Limpiar para borrar el contenido de cada cuadro de texto y el retorno del regulador al inicio de la barra de desplazamiento

de texto y el retorno del regulador al inicio de la barra de desplazamiento Universidad Nacional
Desarrollo de Aplicaciones con VBA 5.- Programe cada control de barra de desplazamiento para que

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA 5.- Programe cada control de barra de desplazamiento para que cuando
Desarrollo de Aplicaciones con VBA 5.- Programe cada control de barra de desplazamiento para que cuando

5.- Programe cada control de barra de desplazamiento para que cuando mueva el regulador se pinte el cuadro de texto txtColor.

mueva el regulador se pinte el cuadro de texto txtColor. 6.- Inhabilite los cuadros de texto
mueva el regulador se pinte el cuadro de texto txtColor. 6.- Inhabilite los cuadros de texto
mueva el regulador se pinte el cuadro de texto txtColor. 6.- Inhabilite los cuadros de texto

6.- Inhabilite los cuadros de texto txtRojo, txtVerde y txtAzul para impedir escribir un valor

txtRojo, txtVerde y txtAzul para impedir escribir un valor 7.- Inserte un control Botón de comando

7.- Inserte un control Botón de comando en la hoja de Excel y programe para abrir el formulario elaborado

comando en la hoja de Excel y programe para abrir el formulario elaborado Universidad Nacional de
comando en la hoja de Excel y programe para abrir el formulario elaborado Universidad Nacional de
comando en la hoja de Excel y programe para abrir el formulario elaborado Universidad Nacional de
Desarrollo de Aplicaciones con VBA VOTO ELECTRÓNICO 1.- Elabore el siguiente diseño en la hoja
Desarrollo de Aplicaciones con VBA VOTO ELECTRÓNICO 1.- Elabore el siguiente diseño en la hoja

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA VOTO ELECTRÓNICO 1.- Elabore el siguiente diseño en la hoja de

VOTO ELECTRÓNICO

1.- Elabore el siguiente diseño en la hoja de Cálculo de Excel

Elabore el siguiente diseño en la hoja de Cálculo de Excel 2.- Abre el editor de

2.- Abre el editor de Visual Basic y crea una macro para cada imagen el cual al ejecutar deberá almacenar el número e incrementarse cada vez que se haga un clic en la imagen

e incrementarse cada vez que se haga un clic en la imagen 3.- Programe el botón

3.- Programe el botón NUEVO para que borre el contenido de las celdas B14 y F14

NUEVO para que borre el contenido de las celdas B14 y F14 4.- Asigne la macro

4.- Asigne la macro creada para cada imagen (Clic derecho / Asignar macro)

macro creada para cada imagen (Clic derecho / Asignar macro) 5.- Ejecute cada macro haciendo un
macro creada para cada imagen (Clic derecho / Asignar macro) 5.- Ejecute cada macro haciendo un

5.- Ejecute cada macro haciendo un clic varias veces en cada de las imágenes

Desarrollo de Aplicaciones con VBA LISTA QUE DEPENDE DE OTRA LISTA 1.- Elaborar el siguiente

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA LISTA QUE DEPENDE DE OTRA LISTA 1.- Elaborar el siguiente diseño
Desarrollo de Aplicaciones con VBA LISTA QUE DEPENDE DE OTRA LISTA 1.- Elaborar el siguiente diseño

LISTA QUE DEPENDE DE OTRA LISTA

1.- Elaborar el siguiente diseño en la hoja de cálculo de Excel

el siguiente diseño en la hoja de cálculo de Excel 2.- En la celda B5 utilizando

2.- En la celda B5 utilizando Validación de datos, crea una lista con las marcas de vehículos

de datos, crea una lista con las marcas de vehículos 3.- Asigne un nombre personal a

3.- Asigne un nombre personal a cada columna de modelos que hay según la marca

Rango E4:E11

/ Nombre Personal

/ TOYOTA

Rango H4:H11

/ Nombre Personal

/ HYUNDAI

Rango K4:K11

/ Nombre Personal

/ NISSAN

4.- En la celda B6 crea una lista con la función INDIRECTO para que muestre los modelos según la marca seleccionada.

para que muestre los modelos según la marca seleccionada. Aquí viene el inconveniente. Cuando seleccione la

Aquí viene el inconveniente. Cuando seleccione la marca y el modelo a partir de una segunda vez los datos no coinciden cuando se hace el cambio por otra marca ya que quedó almacenado el modelo de la marca anterior. Lo ideal es que cuando cambie la marca en la lista de modelos no se apreciará ningún modelo hasta elegir de la lista.

lista de modelos no se apreciará ningún modelo hasta elegir de la lista. Universidad Nacional de
Desarrollo de Aplicaciones con VBA Programe en el Editor de Visual Basic para que cuando
Desarrollo de Aplicaciones con VBA Programe en el Editor de Visual Basic para que cuando

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA Programe en el Editor de Visual Basic para que cuando elija

Programe en el Editor de Visual Basic para que cuando elija una marca, en la lista de modelos no se muestre nada hasta que seleccione de la lista de modelos.

5.- Abre el Editor de Visual Basic, luego hacer un doble clic en el icono Thisworbook en el panel Explorador de Proyectos.

en el icono Thisworbook en el panel Explorador de Proyectos. 6.- En el cuadro Procedimientos cambie

6.- En el cuadro Procedimientos cambie SelectionChange por Change

el cuadro Procedimientos cambie SelectionChange por Change 7.- Escriba las siguientes instrucciones 8.- Compruebe

7.- Escriba las siguientes instrucciones

por Change 7.- Escriba las siguientes instrucciones 8.- Compruebe cambiando el nombre de la marca Universidad

8.- Compruebe cambiando el nombre de la marca

las siguientes instrucciones 8.- Compruebe cambiando el nombre de la marca Universidad Nacional de Ingeniería Pág.
Desarrollo de Aplicaciones con VBA ESTRUCTURAS DE DECISIÓN En VBA se encuentran disponibles las principales

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA ESTRUCTURAS DE DECISIÓN En VBA se encuentran disponibles las principales estructuras
Desarrollo de Aplicaciones con VBA ESTRUCTURAS DE DECISIÓN En VBA se encuentran disponibles las principales estructuras

ESTRUCTURAS DE DECISIÓN

En VBA se encuentran disponibles las principales estructuras de programación o estructuras de control para la creación de las macros. Una de las estructuras de programación más comunes, sencillas y muy útiles para la programación es la estructura IF THEN ELSE la cual se describe a continuación.

IF THEN ELSE

La instrucción If Then Else es una estructura condicional que permite ejecutar acciones en función de si se cumple una condición. La forma de la función IF es la siguiente:

If (condición) then (lo que hace)

Else

(en caso contrario)

End If

También:

La forma de la función IF se expresa en una sola línea:

If (condición)

then (lo que hace)

“En este caso cumple solo con el valor verdadero, si no cumple el resultado es vacío.”

IF THEN

Ejemplo1: Hallar el monto final según las siguientes condiciones:

Descuento: Si el monto es mayor a S/. 7,500 entonces aplique un descuento de 8% Monto Final: Monto menos el Descuento

un descuento de 8% Monto Final: Monto menos el Descuento Ejemplo2: Comprobar que un número escrito

Ejemplo2: Comprobar que un número escrito en la celda activa sea mayor o igual a 13. Si se cumple, muestra un mensaje diciendo "el valor es permitido". Si no se cumple, la macro termina y no hace nada. (Debe tener seleccionado la celda donde haya escrito)

nada. (Debe tener seleccionado la celda donde haya escrito) IF Ejemplo: Comprobar que un número escrito

IF

Ejemplo: Comprobar que un número escrito en una celda determinada es 1. Si se cumple, muestra un mensaje diciendo "Verdadero". Si el número es 0, muestra un mensaje diciendo "Falso".

THEN

ELSE

(SI(… ,

))

,

0, muestra un mensaje diciendo "Falso". THEN ELSE ( SI(… , ) ) , Universidad Nacional
Desarrollo de Aplicaciones con VBA IF Ejemplo: Si es de la categoría A entonces su
Desarrollo de Aplicaciones con VBA IF Ejemplo: Si es de la categoría A entonces su

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA IF Ejemplo: Si es de la categoría A entonces su sueldo

IF

Ejemplo: Si es de la categoría A entonces su sueldo es 2000, si es de la categoría B, su sueldo es 1800 y si es C su sueldo es de 1700

THEN

ELSEIF

(SI, … ,SI(… , …)))

su sueldo es de 1700 THEN ELSEIF ( SI, … ,SI(… , …)) ) IF AND

IF AND (SI(Y(…))

Ejemplo: Si su peso es menor o igual a 30, mostrar Flaco(a), si es menor o igual a 40, mostrar Normal, si está entre 41 y 60, mostrar Gordo(a), si es mayor de 60 mostrar Obeso(a).

y 60, mostrar Gordo(a), si es mayor de 60 mostrar Obeso(a). IF OR ( SI(O(…) )

IF OR (SI(O(…))

Ejemplo: Si es Sábado o Domingo entonces que muestre “Día no laborable” de lo contrario que muestre “Día laborable”.

“Día no laborable” de lo contrario que muestre “Día laborable”. Universidad Nacional de Ingeniería Pág. 57
Desarrollo de Aplicaciones con VBA SELECT CASE Select Case es una alternativa a la declaración

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA SELECT CASE Select Case es una alternativa a la declaración ElseIf.
Desarrollo de Aplicaciones con VBA SELECT CASE Select Case es una alternativa a la declaración ElseIf.

SELECT CASE

Select Case es una alternativa a la declaración ElseIf. Este método es más eficiente y fácil de leer en la codificación con respecto a la del Si Then Else.

La instrucción CASE se puede utilizar solamente en el código VBA en Microsoft Excel.

CASE IS

Con la instrucción CASE Excel, también puede utilizar la palabra clave Is para comparar los valores

utilizar la palabra clave Is para comparar los valores CASE To Con la instrucción CASE Excel,
utilizar la palabra clave Is para comparar los valores CASE To Con la instrucción CASE Excel,

CASE To

Con la instrucción CASE Excel, también puede utilizar la palabra clave To para especificar un rango de valores.

la palabra clave To para especificar un rango de valores. DELIMITAR VALORES Con la instrucción CASE

DELIMITAR VALORES

Con la instrucción CASE Excel, también puede delimitar valores utilizando los datos separados con comas

.

Desarrollo de Aplicaciones con VBA DECLARANDO VARIABLES Desarrollar un aplicativo para determinar el monto total
Desarrollo de Aplicaciones con VBA DECLARANDO VARIABLES Desarrollar un aplicativo para determinar el monto total

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA DECLARANDO VARIABLES Desarrollar un aplicativo para determinar el monto total a

DECLARANDO VARIABLES

Desarrollar un aplicativo para determinar el monto total a pagar por un número de entradas a una determinada zona. El precio unitario de las entradas varía si se compra más de 3 o no, así como también con un descuento adicional si el cliente cuenta con una tarjeta de crédito.

Antes de que se realice la compra, se le preguntará al cliente si tiene la tarjeta de crédito del Club para aplicarle un descuento. Si el cliente responde que SI, se entregará un precio final con descuento, caso contrario se entregará el precio original.

final con descuento, caso contrario se entregará el precio original. Universidad Nacional de Ingeniería Pág. 59
final con descuento, caso contrario se entregará el precio original. Universidad Nacional de Ingeniería Pág. 59
final con descuento, caso contrario se entregará el precio original. Universidad Nacional de Ingeniería Pág. 59
Desarrollo de Aplicaciones con VBA BUCLES DE REPETICIÓN FOR … NEXT Esta estructura sirve para

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA BUCLES DE REPETICIÓN FOR … NEXT Esta estructura sirve para repetir
Desarrollo de Aplicaciones con VBA BUCLES DE REPETICIÓN FOR … NEXT Esta estructura sirve para repetir

BUCLES DE REPETICIÓN

FOR … NEXT

Esta estructura sirve para repetir un conjunto de instrucciones hasta alcanzar el límite que haya especificado.

La estructura es la siguiente:

Nombre Inicio
Nombre
Inicio
Límite
Límite

Instrucciones

For Variable = Valor_Inicial To Valor_final

{Conjunto de instrucciones que se repetirán}

Next Variable

{Conjunto de instrucciones que se repetirán} Next Variable Incrementar Variable.- Inicie con un nombre para la
Incrementar
Incrementar

Variable.- Inicie con un nombre para la variable que irá contando cada una de las repeticiones como por ejemplo: X, i, ultimafila, etc. el cual representará al valor numérico formado por el rango entre el valor_inicial y el valor_final. Es común encontrar la instrucción escrita como For i = 1 lo cual indica que la variable i llevará la cuenta de las repeticiones que deseamos que inicien en 1.

Inicio.- Valor numérico con el cual se iniciará el ciclo. Mayormente toma el valor de 1

Límite.- Además de inicializar la variable que llevará la cuenta de las repeticiones, especifique un número como límite donde se detendrá el ciclo. Este límite es indicado con la instrucción To.

Instrucciones.- Conjunto de instrucciones que la estructura For irá repitiendo hasta llegar al valor límite establecido.

Incrementar.- El final del conjunto de instrucciones se indica con la instrucción Next y que va seguida del nombre de la variable que lleva la cuenta para incrementar su valor en uno.

Ejemplo: Llenar el rango de las celdas A1 hasta A5 con el valor de 20

Llenar el rango de las celdas A1 hasta A5 con el valor de 20 Ejemplo2: Llenar

Ejemplo2: Llenar el rango de celdas A1 hasta A5 con valores pares consecutivos empezando por el número 2.

A1 hasta A5 con valores pares consecutivos empezando por el número 2. Universidad Nacional de Ingeniería
Desarrollo de Aplicaciones con VBA Ejemplo3: Ingresar 5 valores utilizando la función InputBox, sumar y
Desarrollo de Aplicaciones con VBA Ejemplo3: Ingresar 5 valores utilizando la función InputBox, sumar y

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA Ejemplo3: Ingresar 5 valores utilizando la función InputBox, sumar y mostrar

Ejemplo3: Ingresar 5 valores utilizando la función InputBox, sumar y mostrar el resultado en la Celda C2 de la hoja activa.

y mostrar el resultado en la Celda C2 de la hoja activa. Ejemplo4: Multiplicar fila por

Ejemplo4: Multiplicar fila por fila desde A2 hasta B7 y mostrar el resultado en la columna C

desde A2 hasta B7 y mostrar el resultado en la columna C Ejemplo5: Registrar datos fila
desde A2 hasta B7 y mostrar el resultado en la columna C Ejemplo5: Registrar datos fila

Ejemplo5: Registrar datos fila por fila.

el resultado en la columna C Ejemplo5: Registrar datos fila por fila. Universidad Nacional de Ingeniería
el resultado en la columna C Ejemplo5: Registrar datos fila por fila. Universidad Nacional de Ingeniería
Desarrollo de Aplicaciones con VBA WHILE WEND Esta es una instrucción en la que no

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA WHILE WEND Esta es una instrucción en la que no se
Desarrollo de Aplicaciones con VBA WHILE WEND Esta es una instrucción en la que no se

WHILE WEND

Esta es una instrucción en la que no se sabe de antemano cuantas veces se repetirá el ciclo por lo tanto debe haber una condición para salir del ciclo, en caso contrario el ciclo se repetiría en forma indefinida.

Mientras
Mientras
Nombre
Nombre
el ciclo se repetiría en forma indefinida. Mientras Nombre Signo de comparación Condición Instrucciones WHILE

Signo de comparación

en forma indefinida. Mientras Nombre Signo de comparación Condición Instrucciones WHILE variable operador parámetro
Condición
Condición

Instrucciones

WHILE variable operador parámetro

{Conjunto de instrucciones que se repetirán}

WEND

{Conjunto de instrucciones que se repetirán} WEND Salir While.- Texto con el cual se da Inicio

Salir{Conjunto de instrucciones que se repetirán} WEND While.- Texto con el cual se da Inicio a

While.- Texto con el cual se da Inicio a la instrucción y se interpreta como “Mientras”. Variable.- Nombre personal que irá ejecutando el conjunto de instrucciones. Operador.- Signo de comparación según la condición dada, Puede ser: <, <=, <>, >, >=, = Instrucciones.- Conjunto de instrucciones que la estructura irá repitiendo hasta que la condición sea falsa. Wend.- Final de la estructura el cual permitirá salir del ciclo.

El bucle funciona de la siguiente manera: Cuando se va a ejecutar, evalúa una expresión y comprueba que ésta de resultados positivos. Si es así, ejecuta las instrucciones que siguen hasta el WEND, en caso contrario se sale.

Ejemplo1: Ingresar los primeros 5 números

se sale. Ejemplo1: Ingresar los primeros 5 números Ejemplo2: Sumar un rango de números de la

Ejemplo2: Sumar un rango de números de la columna A (digite números en la columna A). Mostrar el resultado en la celda vacía así como el mensaje indicando el total obtenido.

en la celda vacía así como el mensaje indicando el total obtenido. Universidad Nacional de Ingeniería
Desarrollo de Aplicaciones con VBA DO WHILE LOOP Esta es una estructura en la que
Desarrollo de Aplicaciones con VBA DO WHILE LOOP Esta es una estructura en la que

Desarrollo de Aplicaciones con VBA

Desarrollo de Aplicaciones con VBA DO WHILE LOOP Esta es una estructura en la que no

DO WHILE LOOP

Esta es una estructura en la que no se sabe cuántas veces se repetirá el ciclo al igual en la estructura While-Wend y como en esta debe haber una condición para salir de él ya que en caso contrario este se repetiría en forma indefinida. La evaluación de la condición se produce antes de entrar al ciclo.

Usted puede utilizar el Do While

Loop para probar una condición al inicio del bucle. Se

ejecutará el bucle en tanto la condición es verdadera y se detiene cuando la condición se convierte en falsa.

Una cosa a tener cuidado es que a veces el bucle puede ser un bucle infinito. Y ocurre cuando la condición no es falsa. En tal caso, se puede detener el bucle presionando la tecla Esc o las teclas Ctrl + Enter

Esta es una instrucción en la que no se sabe de antemano cuantas veces se repetirá el ciclo por lo tanto debe haber una condición para salir del ciclo, en caso contrario el ciclo se repetiría en forma indefinida.

Mientras
Mientras
Nombre
Nombre
Salir
Salir

Signo de comparación

indefinida. Mientras Nombre Salir Signo de comparación Instrucciones Condición DO WHILE variable operador

Instrucciones

Condición

Nombre Salir Signo de comparación Instrucciones Condición DO WHILE variable operador parámetro {Conjunto de

DO WHILE variable operador parámetro {Conjunto de instrucciones que se repetirán}

LOOP

{Conjunto de instrucciones que se repetirán} LOOP Ejemplo1: ingrese el valor de 20 en las 6

Ejemplo1: ingrese el valor de 20 en las 6 primeras celdas de la columna A

el valor de 20 en las 6 primeras celdas de la columna A Ejemplo2: Rellenar datos

Ejemplo2: Rellenar datos fila por fila

6 primeras celdas de la columna A Ejemplo2: Rellenar datos fila por fila Universidad Nacional de
Desarrollo de Aplicaciones con VBA DO UNTIL LOOP