SlideShare una empresa de Scribd logo
1 de 313
Descargar para leer sin conexión
con
Programación
VBA
VBA
Excel
PROGRAMACIÓN VBA CON EXCEL
Autor: Manuel Ángel Torres Remon
© Derecho de autor reservado
Empresa Editora Macro E.I.R.L.
© Derecho de edición, arte gráfico y diagramación reservados
Empresa Editora Macro E.I.R.L.
Edición a cargo de:
Empresa Editora Macro E.I.R.L.
Av. Paseo de la República 5613 – Miraflores
Lima - Perú
(511) 719-9700
ventas@editorialmacro.com
http://www.editorialmacro.com
Primera edición: Mayo 2012 - 1000 ejemplares
Impreso en los Talleres Gráficos de
Empresa Editora Macro E.I.R.L.
Lima - Perú
ISBN Nº 978-612-304-064-2
Hecho el Depósito Legal en la Biblioteca Nacional del Perú Nº 2012-06469
Prohibida la reproducción parcial o total, por cualquier medio o método de este libro sin
previa autorización de la Empresa Editora Macro E.I.R.L.


MANUEL ÁNGEL TORRES REMON
Manuel Ángel TORRES REMON es Licenciado en Informática de la Universidad Alas Peruanas (Lima-
Perú), actualmente docente de Tecnología del Instituto de Educación Superior CIBERTEC; imparte cursos
de programación en los ciclos III y IV de la carrera profesional de Computación e Informática.
Se inicio en la docencia en el año 2000 dictando el curso de Técnicas de Programación y Estructura de
Datos a estudiantes del III ciclo de la carrera profesional de Computación e Informática del Instituto de
Educación Superior Manuel Arévalo Cáceres en donde también fue estudiante y egreso en el año 1996
donde todavía se programaba en C++ y Pascal.
También dicta cursos de programación en el centro de computo UNIMASTER de la Universidad Nacional
de Ingeniería como Programador Java, Programador Net, Programador PHP y Programación VBA con Excel.
En la actualidad se ha capacitado en cursos de programación Net con Visual Studio 2010 dictando los
Fundamentos de la Programación en Net, Conexión a Base de Datos con ADO NET y la Programación
Orientada a Objetos con NET aplicando en esta última parte las N-Capas de la Programación.
Los cursos que actualmente dicta son: Programación Orientada a Objetos II con Net 2010, Base de Datos
Avanzado I con Transact SQL Server 2008 r2, Programación VBA con Excel 2010, Análisis y Diseño de
Sistemas I-II con UML y Rational Architect Software.
Dedicatoria
Este libro está dedicado a mis pequeñas Ángela y
Fernanda por darme las fuerzas necesarias para
seguir adelante y mucho más a mi esposa Luz por
comprenderme en todo lo que me propongo.
Agradecimientos
Quiero agradecer la oportunidad que me está
brindando la editorial Macro de exponer un trabajo
que lo tenía pensado hace mucho, pero por la falta
de tiempo no se podía concretar y también un
porcentaje se lo debo a los valiosos aportes de los
estudiantesquecompartieronconmigolassesiones
de VBA para Excel impartidos en Unimaster de
la Universidad Nacional de Ingeniería, en el IEST
Manuel Arévalo Cáceres y a Cibertec, ya que
gracias a sus experiencias pude desarrollar casos
que se expondrán en este material.
Me olvidaba mencionar a mi gran amigo Paul
Paredes que por intermedio de su persona conocí
a la gran familia Macro, gracias por el apoyo
desinteresado que siempre demuestras Paul.
Introducción
Hoy en día los usuarios de aplicaciones de oficina han evolucionado sus conocimientos sobre estas
herramientas, tanto así que tienen la necesidad de crear aplicaciones para el desarrollo de sus funciones
que faciliten y ahorren tiempo en el proceso, para esto existe la herramienta de desarrollo de Office
como es VBA, la cual les ayudará a plasmar todo lo planeado en aplicaciones mucho más interactivas
con el usuario; al principio resultará un poco complicado entender el lenguaje pero conforme avance
los capítulos comprenderá que no es tan complejo el desarrollo en VBA sino al contrario nos incentiva a
crear nuevas formas de presentar un proceso en poco tiempo y de fácil uso para el usuario.
Cada vez hay más usuarios interesados en conocer qué es lo que ofrece VBA, pues la respuesta la tiene
en este material, el cual le mostrará con casos prácticos el uso adecuado que le puede dar al VBA y el
enorme tiempo que ahorrará en ejecutar procesos; la ventaja de la programación VBA es que evita el uso
de fórmulas extensas, como las que puede aplicar en Excel, y resumirlas en códigos preparados por usted
mismo con VBA, empezará a notar un cambio conforme avancen los capítulos del libro y sugiero no dejar
de practicar los ejercicios propuestos de este material.
Con el libro de Programación VBA con Excel aprenderá el manejo integral de Visual Basic para Aplicaciones
(VBA) y su empleo dentro de Excel. Así logrará conocer el lenguaje de programación, crear nuevas
funcionesdecálculo,controlarlosobjetosdeExcelpormediodeprogramación,implementaraplicaciones
comerciales y ampliar enormemente la funcionalidad que ofrece Excel a sus usuarios. Asimismo, contará
con la posibilidad de editar profesionalmente las macros que se genere en las aplicaciones.
Programación VBA con Excel está dirigido a usuarios intermedios y/o avanzados de Excel que aún no son
programadores, este material pretende explicar el inicio de la programación hasta el control de una base
de datos con Access proponiendo casos prácticos y su respectiva evaluación en cada capítulo.
Índice
Capítulo 1
Introducción ......................................................................................................................................17
Introducción.......................................................................................................................................19
¿Qué es un programa?.......................................................................................................................20
¿Qué son los Lenguajes de Programación?........................................................................................21
Introducción a la Programación Orientada a Objetos........................................................................22
Clase............................................................................................................................................22
Objeto .........................................................................................................................................22
Propiedad....................................................................................................................................23
Evento .........................................................................................................................................24
¿El Office y su relación con VBA? .......................................................................................................24
¿Por qué debemos aprender VBA? ....................................................................................................24
Automatización y repetición .......................................................................................................24
Mayor interacción con el usuario................................................................................................25
Interacción entre aplicaciones de Office .....................................................................................25
¿Cuál es el futuro de VBA?.................................................................................................................25
Herramientas para Office de Microsoft Visual Studio........................................................................25
Convenciones del libro.......................................................................................................................26
Listado de comandos de Excel en inglés y español ............................................................................27
Evaluación de la capacidad ................................................................................................................49
Capítulo 2
Introducción al Visual Basic Aplicaciones (VBA)...............................................................................51
Lenguaje Basic....................................................................................................................................53
Fundamentos de Visual Basic Aplicaciones para Excel.......................................................................53
La ficha Programador de Excel 2010 ..................................................................................................54
Configurar la seguridad de Macros en un libro de Excel....................................................................56
Modos de acceso al VBA....................................................................................................................56
Descripción del editor VBA ................................................................................................................57
Descripción de la barra de herramientas Estándar.....................................................................57
El Explorador de Proyectos..........................................................................................................59
La Ventana de Propiedades........................................................................................................63
La Ventana de Código ................................................................................................................64
Personalizar del entorno VBA.............................................................................................................65
Asignar derechos sobre el proyecto VBA....................................................................................65
Asignar una clave al código VBA................................................................................................66
Activar el requerimiento de declaración obligatoria de variables .............................................67
Aplicar formato al editor de código VBA....................................................................................67
El objeto ThisWorkBook.....................................................................................................................68
El objeto WorkSheets.........................................................................................................................69
Evaluación de la capacidad ................................................................................................................72
Capítulo 3
La Macro ............................................................................................................................................73
La Grabadora de Macros....................................................................................................................75
Implementación de una Macro..........................................................................................................78
Ejecutar una Macro............................................................................................................................81
Administrar una Macro (crear, modificar y eliminar).........................................................................81
Asignar una Macro a un control de formulario, activeX, imagen o forma .........................................83
Caso desarrollado 1: Encabezado de Informe....................................................................................85
Caso desarrollado 2: Navegador Web................................................................................................88
Evaluación de la capacidad ................................................................................................................92
Capítulo 4
El Modelo de Objetos........................................................................................................................93
Introducción al modelo de objetos ....................................................................................................95
Clase Application................................................................................................................................95
ActiveCell ...................................................................................................................................96
ActiveSheets...............................................................................................................................96
ActiveWindow............................................................................................................................97
Selection.....................................................................................................................................98
Caso Desarrollado 1: Datos del Sistema.............................................................................................99
Clase Range........................................................................................................................................101
Métodos del objeto Range..........................................................................................................101
Propiedades del objeto Range ....................................................................................................103
Método Offset....................................................................................................................................104
Caso Desarrollado 2: Búsqueda de Documentos ...............................................................................105
Evaluación de la capacidad ................................................................................................................106
Capítulo 5
Fundamentos de Programación........................................................................................................107
Introducción a la Programación con VBA...........................................................................................109
Comentarios.......................................................................................................................................109
Concatenación ...................................................................................................................................110
Operadores usados en VBA................................................................................................................111
Las variables y su declaración en VBA................................................................................................113
Tipos de datos y su operador de referencia.......................................................................................114
Las Constantes ...................................................................................................................................116
Expresiones algorítmicas vs algebraicas.............................................................................................116
Asignación de valores.........................................................................................................................117
Estructura secuencial .........................................................................................................................117
Caso Desarrollado 1: Sueldo de Trabajadores....................................................................................118
Caso desarrollado 2: Ejercicios Secuenciales .....................................................................................120
Casos Propuestos ...............................................................................................................................124
Evaluación de la capacidad ................................................................................................................126
Capítulo 6
Funciones y Procedimientos .............................................................................................................127
Funciones -Introducción a las funciones............................................................................................129
Funciones para cadenas de caracteres...............................................................................................129
Caso desarrollado 1: Funciones de Texto...........................................................................................133
Funciones Numéricas.........................................................................................................................134
Caso desarrollado 2: Números Aleatorios..........................................................................................136
Funciones de fecha ............................................................................................................................138
Caso desarrollado 3: Funciones de Fechas.........................................................................................141
Caso desarrollado 4: Cálculo de Edad ................................................................................................142
Caso desarrollado 5: Venta al Crédito................................................................................................142
Caso desarrollado 6: Cálculo de Días .................................................................................................143
Funciones de conversión de tipo........................................................................................................145
Funciones de comprobación de valor ................................................................................................147
Funciones definidas por el usuario ....................................................................................................149
Estructura de una función...........................................................................................................149
Ámbito de una función................................................................................................................150
Tipo de dato de retorno ..............................................................................................................151
Llamada a una función................................................................................................................152
Parámetros de una función.........................................................................................................152
Crear funciones definidas por el usuario.....................................................................................153
Opciones de las funciones...........................................................................................................155
Procedimientos ..................................................................................................................................156
Estructura de procedimiento.......................................................................................................156
Llamada a un procedimiento ......................................................................................................158
Parámetros de un procedimiento................................................................................................158
Casos propuestos...............................................................................................................................158
Evaluación de la capacidad ................................................................................................................160
Capítulo 7
Gestión de Errores.............................................................................................................................161
Gestión de Errores..............................................................................................................................163
Introducción a los errores en VBA......................................................................................................163
Control básico de errores con On Error Goto.....................................................................................164
La Clase Err.........................................................................................................................................165
Listado de Errores reconocidos por VBA............................................................................................166
Caso Desarrollado 1: Venta de Repuestos..........................................................................................166
Caso Desarrollado 2: División de Números........................................................................................168
Casos Propuestos ...............................................................................................................................169
Evaluación de la capacidad ................................................................................................................170
Capítulo 8
Estructura Condicional ......................................................................................................................171
Estructura Condicional - Introducción................................................................................................173
Estructura de selección simple If…Then.............................................................................................173
Operadores Lógicos y Relacionales ....................................................................................................174
Caso Desarrollado 1: Venta de Productos..........................................................................................175
Estructura de selección doble If…Then…Else.....................................................................................178
Estructura de selección doblemente encadenada If…Then…ElseIf....................................................179
Caso Desarrollado 2: Salario de Trabajadores....................................................................................180
Casos Propuestos ...............................................................................................................................183
La Clase Option Button ......................................................................................................................185
La Clase CheckBox..............................................................................................................................186
Caso desarrollado 3: Agenda Básica...................................................................................................188
La Clase ComboBox ...........................................................................................................................192
La Clase ListBox .................................................................................................................................193
Caso desarrollado 4: Selección de Países...........................................................................................194
Caso desarrollado 5: Ciudad-País.......................................................................................................195
Estructura de selección múltiple Select-Case.....................................................................................197
Caso Desarrollado 6: Registro de Software........................................................................................198
Caso Desarrollado 7: Registro de Pasajeros .......................................................................................200
Instrucción With.................................................................................................................................204
Validaciones .......................................................................................................................................205
Caso desarrollado 8: Tienda Comercial..............................................................................................207
Caso Propuesto ..................................................................................................................................217
Capítulo 9
Estructura Repetitiva.........................................................................................................................219
Introducción.......................................................................................................................................221
Contadores.........................................................................................................................................222
Acumuladores ....................................................................................................................................222
Caso Desarrollado 1: Control de Peaje...............................................................................................223
Sentencia For…Next, usos..................................................................................................................230
Caso desarrollado 2: Tabla de Multiplicar..........................................................................................231
Caso desarrollado 3: Series Numéricas..............................................................................................235
Anidamiento de For ...........................................................................................................................239
Caso desarrollado 4: Pirámide de Números.......................................................................................239
Casos propuestos...............................................................................................................................241
Estructura while .................................................................................................................................242
Caso desarrollado 5: Tienda Comercial de Electrodomésticos...........................................................243
Caso desarrollado 6: Consulta de Datos.............................................................................................248
Caso Desarrollado 7: Filtrado de Alumnos.........................................................................................250
Capítulo 10
Los Formularios .................................................................................................................................253
Manejo de Formularios......................................................................................................................255
Manejo de cajas de entrada (InputBox).............................................................................................255
Caso desarrollado 1: Conversiones ....................................................................................................256
Cuadros de Mensaje (MsgBox)...........................................................................................................259
Tiempos en la programación..............................................................................................................263
Nomenclatura de nombres a objetos.................................................................................................265
Agregar un UserForm al proyecto......................................................................................................266
La Clase UserForm..............................................................................................................................266
La Clase Label ...................................................................................................................................269
La Clase TextBox ...............................................................................................................................271
La Clase Command Button ..............................................................................................................274
Los Eventos.........................................................................................................................................275
Ventana de Código.............................................................................................................................277
Caso desarrollado 2: Venta de Productos ..........................................................................................278
Caso propuesto ..................................................................................................................................284
Capítulo 11
Base de datos con VBA y Access .......................................................................................................285
Base de datos.....................................................................................................................................287
Objetivos de los Sistema de base de datos ........................................................................................287
Representación de la Información .....................................................................................................288
Caso Desarrollado 1: Delivery ............................................................................................................292
Caso Propuesto ..................................................................................................................................293
Recuperación de Datos: Instrucción Select........................................................................................293
Consultas............................................................................................................................................294
Manejo de INNER JOIN.......................................................................................................................298
Conexión a Base de Datos con Access y VBA .....................................................................................299
Conexión ADO....................................................................................................................................301
Conectando a una base de datos Access ...........................................................................................303
1
1
1
CAPÍTULO
INTRODUCCIÓN
 Introducción
 ¿Qué es un programa?
 ¿Qué son los Lenguajes de Programación?
 Introducción a la Programación Orientada a Objetos
– Clase
– Objeto
– Propiedades
– Eventos
 ¿El Office y su relación con VBA?
 ¿Por qué debemos aprender VBA?
– Automatización y repetición
– Mayor interacción con el usuario
– Interacción entre aplicaciones de Office
 ¿Cuál es el futuro de VBA?
 Herramientas para Office de Microsoft Visual Studio
 Convenciones del libro
 Listado de comandos de Excel en inglés y español
 Evaluación de la capacidad
CAPACIDAD DEL CAPÍTULO
 Reconoce conceptos básicos de programación.
 Identifica la diferencia entre un objeto y una clase.
 Reconoce los comandos de Excel en inglés.
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 19
• INTRODUCCIÓN
Partiendo desde que un usuario hace uso de una computadora
personal, debemos considerar los diferentes roles que se asumen
frente a esta, es decir, los roles que ejecutamos al manipular una
computadora; usted conocerá que existen los administradores de
base de datos que tienen por misión gestionar y administrar una
basededatos,comosurolloindica,luegoestánlosprogramadores
o desarrolladores que tienen por misión implementar códigos
fuentes y crear aplicaciones en todos los entornos ya sea web,
plataforma o móvil y finalmente los operadores de aplicaciones.
El término operador hace referencia a un rol de sólo uso de los
programas aplicativos que puede implementar un programador,
este no tiene por qué manipular el código ya que no sería un rol
adecuado para un operador. VBA está diseñado justamente para aquellos usuarios emprendedores, que
necesitan ir más allá de sólo operar la aplicación, es decir, ya conocen toda las actividades de proceso de
la aplicación y ahora necesitan reducir tiempos a la hora de aplicarlos y la única forma es por medio de
códigos. A partir de un estudio de fundamentos de programación como es este libro, podrá desarrollar
aplicaciones pequeñas pero de gran calidad para Excel dentro del entorno VBA manipulando el código
del lenguaje Basic.
Visual Basic para aplicaciones (VBA) está dirigido a usuarios operadores
que quieren entrar al mundo de la programación, no se necesita tener
conocimientos de programación ya que este material tiene por objetivo
dar los conocimientos necesarios para crear, manipular y administrar el
código desde el fundamento de la programación hasta la conexión a la
base de datos con Access.
La idea principal del uso de VBA en Excel es agilizar las tareas que se
realizan en forma repetitiva o de aquellas fórmulas extensas que alguna
vez usó en Excel, VBA resume dichas tareas en porciones pequeñas de
códigos que son manipulados como Macros de Excel.
Conocer VBA implica facilitar su trabajo en Excel y le brinda la posibilidad de realizar tareas más ágiles;
que antes de conocer VBA eran un poco engorrosas, no hay que dejar de lado la tarea importante que
se realiza en Excel, VBA lo resume ahorrando tiempo e inclusive realiza tareas no posibles desde Excel, le
pregunto ¿Será necesario conocer el lenguaje que propone VBA?
No obstante, VBA no es útil sólo para tareas repetitivas. También puede usar VBA para crear nuevas
funcionalidades en Excel (por ejemplo, puede desarrollar nuevos algoritmos para analizar datos, manipular
grandes cantidades de registros, ahorrar tiempo en la toma de decisiones) y realizar tareas que integren
Excel con otras aplicaciones de Office, como Microsoft Access 2010. Es muy cierto que de todas las
aplicaciones de Office, Excel es la más usada. Este libro no pretende enseñar los comandos de Excel sino
más bien prepararlo para desarrollar aplicaciones de alta calidad y en el futuro ser programador en Excel.
A pesar de todas las buenas razones para usar VBA en Excel 2010, es importante recordar que la mejor
solución de un problema posiblemente no se relacione con VBA en absoluto. Excel tiene una gran
variedad de características sin VBA y es posible que hasta un usuario avanzado no esté familiarizado con
todas ellas. Antes de acudir a una solución de VBA, realice una búsqueda exhaustiva en Ayuda y Recursos
en Línea para asegurarse de que no existe una manera más simple.
INTRODUCCIÓN
CAP. 1
20
• ¿QUÉ ES UN PROGRAMA?
Si usted es usuario de las aplicaciones de Office como Word,
Power Point o el mismo Excel entonces usted ha usado un
programa, estos y muchos programas tienen por misión
facilitar el trabajo del usuario y realizar procesos mucho más
rápidos e intuitivos esa es la característica de los programas;
es así como existen programas para reproducir música, video
o acceder a internet.
Todos los programas han sido diseñados pensando en
el usuario final, por tanto; el desarrollo de programas que
usted realice con VBA para Excel tendrá que tener el mismo
objetivo, es decir, estará diseñado para agilizar las tareas que antes con Excel resultaban un poco largas
aplicarlas, un caso real es la función SI de Excel que sólo tiene 8 niveles de comparación, VBA para Excel
lo supera con la Estructura Selectiva If que no tiene límite de comparaciones y así se encontrarán muchas
más comparaciones conforme avance en VBA.
Entonces a la pregunta de ¿Qué es un programa? La respuesta sería la siguiente: representa un conjunto
de instrucciones que tiene por objetivo dar un resultado de calidad siguiendo un patrón de reglas propias
del lenguaje.
También es conocido como Programa Fuente o Código Fuente y cuando se encuentra en marcha se le
conoce como ejecución del programa y cuando está en ese estado sólo se muestran resultados; claro
está los resultados esperados por el usuario.
Public Function Celsius(ByVal Fahrenheit)
Celsius = Round((Fahrenheit - 32) * 5 / 9, 2)
End Function
En la Fig. 1.1 se muestra una porción de código fuente que tiene por misión calcular el valor de Celsius a
partir de un valor en Farenheit.
¿QUÉ ES UN PROGRAMA DE APLICACIÓN?
Es un tipo de programa diseñado para usuarios que no
necesitan tener conocimientos de programación. Estos
programas resultan ser bastante cómodos por lo sencillo
y rápido de sus comandos, específicamente está diseñado
para tareas inmediatas. Tenemos:
¿QUÉ SON LOS SISTEMAS OPERATIVOS?
Es un tipo de programa que permite tener en funcionamiento
una computadora, todos los programas de aplicación tienen
como plataforma de trabajo un sistema operativo. Tenemos:
¿QUÉ ES UN LENGUAJE DE PROGRAMACIÓN?
Es un tipo de programa que desarrolla programas de
aplicación, ahora entienda la idea principal de VBA es crear
aplicaciones para agilizar las tareas que se realiza en un
programa de aplicación. Tenemos:
Fig. 1-1
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 21
• ¿QUÉ SON LOS LENGUAJES DE PROGRAMACIÓN?
VBA debe ser escrito en un lenguaje de programación que sea entendible por la computadora, así
tenemos el caso en que se quiere mostrar un mensaje desde VBA a Excel; entonces, el lenguaje interpreta
el comando de envío de mensajes y lo ejecuta, esto quiere decir que cada instrucción colocada en VBA
debe ser interpretada por un lenguaje; en VBA el lenguaje es BASIC por eso usted encontrará mucha
similitud entre las instrucciones Visual Basic y VBA.
Vea el siguiente ejemplo, para poder mostrar un mensaje desde VBA se debe colocar el comando Msgbox,
pero como nota en la Fig. 1.2 se debe respetar cierto patrón del comando; por ejemplo, colocarlo en
comillas, a lo largo de este libro comprenderá muchos de esos patrones.
Para que se pueda generar la ventana de saludo, la computadora debe entender la instrucción, esto es
un trabajo interno de VBA gracias a su soporte del lenguaje Basic es que interpreta, traduce y ejecuta
las instrucciones de un código fuente.
En la Fig. 1.4 se muestra el ciclo de elaboración de un programa típico, todo empieza con un programa
fuente que es donde reside el código VBA, hay que tener en cuenta que un programa fuente se basa en
reglas propias del lenguaje, el intérprete verifica justamente esas instrucciones y las traduce para que la
computadora las pueda entender, aquí ocurre 2 cuestiones: si el programa está correcto se mostrará la
aplicación en tiempo de ejecución, caso contrario se mostrará un mensaje de error como el que sigue:
Fig. 1-2 Fig. 1-3
Fig. 1-4
Fig. 1-5

INTRODUCCIÓN
CAP. 1
22
Luego VBA lo devuelve al código fuente para que usted pueda corregir los errores y volver a empezar el
ciclo de elaboración de un programa. Ojo no necesariamente un programa se encuentra correcto cuando
pasa esta etapa ya que también existen diferentes tipos de errores como los de lógica. "Un programa
puede ejecutarse correctamente pero no necesariamente devuelve la respuesta adecuada".
• INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
Excel, como muchas otras aplicaciones, ha sido diseñado basándose en la teoría de los objetos. La
programación orientada a objetos o también llamada POO es un paradigma de la programación, el cual
usa objetos y sus interacciones, con el objetivo de implementar aplicaciones y programas de alta calidad.
Hay algunos conceptos que debe considerar antes de comenzar con el VBA ya que varios de los procesos
que realizará en VBA están basados en objetos, como por ejemplo, asignar propiedades a los UserForm
o simplemente implementar un código fuente.
• CLASE
Son las plantillas para hacer objetos. En una clase se define los comportamientos y propiedades que
poseerán los objetos, esto quiere decir que cada vez que use un objeto estará usando una copia de
la clase, esto explica muchas cosas en Excel por ejemplo Hoja1, Hoja2, Hoja3 son objetos de la clase
WorkSheets de Excel.
• OBJETO
Un objeto es una instancia (copia) de la clase de la cual hereda todos los atributos
y métodos que la clase contiene con el fin de interactuar con el exterior. Ahora
pongamos un ejemplo real, cuando usted tiene un simple lápiz como objeto
¿Cuáles son las características que nota? ¿Qué puede realizar con el lápiz?
¿QUÉ FUNCIÓN TIENEN LOS INTÉRPRETES EN LA PROGRAMACIÓN?
Un intérprete efectúa la traducción y ejecución simultánea de cada una de las instrucciones
del código fuente realizado VBA, es decir, es el encargado de revisar línea por línea y
traducirlo en un código entendible por la computadora.
Fig. 1-6
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 23
Como notará las características de un simple lápiz es universal
ya que todo lápiz cumple con la función de escribir y todos
tienen un color por ejemplo. Ahora para poder diferenciar las
características de lo que puede realizar es muy sencillo, las
acciones a realizar normalmente son verbos mientras que las
características no.
Ahora vea con un ejemplo tipo VBA, tenemos un UserForm
o formulario, el cual también se le denomina objeto, y por lo
tanto tiene características que ahora se llamarán propiedades
y tiene acciones que realizar a lo que se llamará eventos.
Se definen las propiedades y eventos de un UserForm:
• PROPIEDAD
Son las características que tiene un objeto seleccionado, cada
objeto en VBA tiene sus propiedades bien definidas,las cuales
pueden ser modificadas por el programador con la idea de
personalizar el objeto.
En la Fig. 1.8 se muestra la lista de propiedades del objeto
UserForm, debe tener en cuenta que las propiedades varían
en un porcentaje no determinado entre un objeto u otro, es
decir, hay propiedades comunes y propiedades propiamente
del objeto.
Fig. 1-7
LISTA DE
CARACTERÍSTICAS
LISTA DE ACCIONES
QUE PUEDE REALIZAR
 Alto
 Diámetro
 Color
 Marca
 Escribir
 Sobrescribir
 Garabatear
PROPIEDADES EVENTOS
 Nombre del formulario
 Alto en pixeles
 Ancho en pixeles
 Color de fondo
 Activado
 Cerrado
 Cliqueado
Fig. 1-8
INTRODUCCIÓN
CAP. 1
24
• EVENTO
Es un suceso que podría tener un objeto (tal como una interacción del usuario con la máquina o un
mensaje enviado por un objeto). El sistema maneja el evento enviando el mensaje adecuado al objeto
pertinente. También se puede definir como evento a la reacción que puede desencadenar un objeto,
es decir, la acción que genera.
En la Fig. 1.9 se muestra la lista de eventos de un determinado objeto, como sucedió con las propiedades,
los eventos también son parcialmente similares entre los objetos pero hay eventos propiamente de un
tipo de objeto, por ejemplo, la propiedad PaswordChar es exclusivo del objeto TextBox.
• ¿EL OFFICE Y SU RELACIÓN CON VBA?
¿Desea limpiar 1000 filas en Excel? ¿Desea crear un informe por cada cliente que compró productos en
su tienda y al final imprimir el monto total vendido? ¿Quiere exportar los registros de su tabla en Word
a Excel?
Usted puede realizar estas y muchas tareas haciendo uso del código VBA para Office, hay que tener en
cuenta que algunos software de ingeniería también necesitan lo mismo y están incorporando VBA con la
misma idea que se tenía con Office.
Supongo que usted pensará que las interrogantes planteadas anteriormente se pueden resolver usando
Excel y está en lo cierto, pero tenga en cuenta el tiempo usado en cada interrogante e imagínese hacerlo
a varios archivos de Excel en diferentes tiempos se volvería engorroso estar haciendo repetidamente una
acción que ya antes había aplicado, VBA suple las tareas cotidianas por macros de acceso sencillo.
• ¿POR QUÉ DEBEMOS APRENDER VBA?
Se puede nombrar 3 razones:
• AUTOMATIZACIÓN Y REPETICIÓN
VBA es efectivo y eficaz a la hora de implementar soluciones repetitivas ante problemas de corrección
o formato.
Fig. 1-9
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 25
• MAYOR INTERACCIÓN CON EL USUARIO
VBA ofrece mecanismos para poder interactuar con el usuario y ofrecer una experiencia sencilla y
profesional a la vez. Por ejemplo, si se tiene un archivo de Excel importante para una empresa la forma
de protegerlo es asignarle una contraseña de apertura del archivo, pero es bien conocido que existen
aplicaciones que rompen dicha contraseña, en VBA se puede preparar un formulario de logeo donde
los usuarios se encuentren registrados en una base de datos alojada en el servidor por ejemplo Access
o SQL Server.
• INTERACCIÓN ENTRE APLICACIONES DE OFFICE
En la actualidad VBA está tomando muchos seguidores por la facilidad de uso y por la forma en que
interactúa con las demás aplicaciones de Office, y como lo comenté anteriormente, por interactuar con
aplicaciones de ingeniería.
• ¿CUÁL ES EL FUTURO DE VBA?
El siguiente paso natural en la evolución de VBA es dejar de ser un subconjunto de Visual Basic y pasar
a ser una plataforma .NET. Microsoft no planea hacer mejoras significativas a VBA en el futuro, aunque
continuará dando soporte a las licencias de VBA que se han ido ofreciendo, VBA está siendo sustituido
por las Herramientas para Aplicaciones de Microsoft Visual Studio (VSTA: Visual Studio Tools for
Applications) y las Herramientas para Office de Microsoft Visual Studio (VSTO: Visual Studio Tools for
Office). Estas herramientas funcionan bajo la plataforma .NET.
En la Fig. 1.10 se muestra el logo oficial del VSTO, sugiero que como herramienta que desplazará al VBA
comience a investigar el tema, aquí sólo se han mencionado referencias globales del VSTO ya que no es
tema de este libro.
• HERRAMIENTAS PARA OFFICE DE MICROSOFT VISUAL STUDIO
El VSTO no es VBA, es una plataforma integrada para el desarrollo de aplicaciones dentro del entorno
Office con dos lenguajes el Basic y C, la diferencia con la plataforma Net es que en vez de aparecer un
Windows Form en VSTO aparece una hoja de Excel o un documento de Word para implementarle código
personalizado. Microsoft en su página oficial habla sobre el tema de VSTO de la siguiente manera:
“Visual Studio Tools para Office puede ayudarle a aprovechar las mejoras de productividad de
Microsoft .NET Framework Version 2.0 para extender las aplicaciones de Microsoft Office 2003 y Microsoft
Office System 2007 mediante Visual Basic y Visual C#. Las herramientas incluyen nuevos proyectos de
Visual Studio que le ayudan a empezar con la creación de soluciones de Microsoft Office.”
Ahora hay dos ediciones de Visual Studio Tools para Office:
 Microsoft Visual Studio 2005 Tools para Microsoft Office System (VSTO 2005)
 Microsoft Visual Studio 2005 Tools para Microsoft Office System 2007 (VSTO 2005 SE)
Estas dos ediciones proporcionan muchas características nuevas que ayudan a crear soluciones
administradas que utilizan Microsoft Office 2003 y Microsoft Office System 2007.
Fig. 1-10
INTRODUCCIÓN
CAP. 1
26
• CONVENCIONES DEL LIBRO
Con la idea de sacar el máximo provecho y lograr una mejor comunicación entre el lector y el libro, es
que se explicarán algunas convenciones usadas en este material.
 En este libro encontrará muchos códigos VBA incrustados en el tema, para esto se usará la fuente
Consolas al hacer referencia a una instrucción VBA como por ejemplo: Dim N%: N=10
 Si se toma en cuenta que a partir de Office 2007 ya no existen los menús de opciones en este libro se
considerarán las referencias a las opciones de la siguiente manera, por ejemplo, si se quiere acceder a
la herramienta Visual Basic de la ficha programador entonces se mencionará de la siguiente manera:
Ficha Programador  Visual Basic (fuente: Tahoma). A continuación se verá una comparación de la
evolución de las barras entre Excel 2003 y 2010.
En la Fig. 1.11 se muestra la barra de
herramientas de la versión Office 2003, podía
resultar un poco incómodo para el trabajo en
Excel pero uno se acostumbra a los cambios,
como sucedió con la versión 2007 y 2010.
En la Fig. 1.12 se muestra la versión mejorada de la barra; en este
material se llamarán Fichas o Pestañas. Una de las particularidades de
las fichas es que presionando la tecla ALT le aparecen los métodos
abreviados para acceder a un elemento determinado.
 El editor de VBA tiene un aspecto Visual Basic 6 y aquí sí encontrará la barra de menús, suponga que
necesita acceder a Referencias del Menú Herramientas del entorno VBA, entonces lo mencionará de
la siguiente manera: Herramientas  Referencias (fuente: Tahoma).
 Las notas importantes e interrogantes del tema serán colocadas en el siguiente formato:
Fig. 1-11
Fig. 1-12
¿QUÉ ES UN LENGUAJE DE PROGRAMACIÓN DE ALTO NIVEL?
Un lenguaje de programación de alto nivel se caracteriza por expresar un algoritmo de una
manera más cercana a la capacidad cognitiva humana, es decir, a un lenguaje simple pero
en nuestro quehacer lo encontraremos en inglés que no es tan complicado, en lugar de la
capacidad ejecutora de las máquinas.
Por esta razón, a finales de los años 50 surgió un nuevo tipo de lenguaje de programación
que evitaba inconvenientes, a costa de ceder un poco en las ventajas. Estos lenguajes se
llaman lenguajes de programación de tercera generación o de alto nivel, en contraposición
a los de bajo nivel.
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 27
• LISTADO DE COMANDOS DE EXCEL EN INGLÉS Y ESPAÑOL
A continuación se mostrará una lista de comandos de Excel expresados en español e inglés, que le servirá
como base para su futuro código, ya que siempre tendrá la necesidad de usar una función en Excel en el
código VBA, todas las funciones de Excel tienen un equivalente en VBA sólo tiene que respetar el formato
de cada función.
GRUPO ENGLISH ESPAÑOL
Math ABS ABS
Financial ACCRINT INT.ACUM
Financial ACCRINTM INT.ACUM.V
Math ACOS ACOS
Math ACOSH ACOSH
Lookup ADDRESS DIRECCION
Financial AMORDEGRC AMORTIZ.PROGRE
Financial AMORLINC AMORTIZ.LIN
Logical AND Y
Lookup AREAS AREAS
Text ASC ASC
Math ASIN ASENO
Math ASINH ASENOH
Math ATAN ATAN
Math ATAN2 ATAN2
Math ATANH ATANH
Statistical AVEDEV DESVPROM
Statistical AVERAGE PROMEDIO
Statistical AVERAGEA fnNA:AVERAGEA
Text BAHTTEXT fnNA:BAHTTEXT
Engineering BESSELI BESSELI
Engineering BESSELJ BESSELJ
Engineering BESSELK BESSELK
Engineering BESSELY BESSELY
Statistical BETADIST DISTR.BETA
Statistical BETAINV DISTR.BETA.INV
Engineering BIN2DEC BIN.A.DEC
Engineering BIN2HEX BIN.A.HEX
Engineering BIN2OCT BIN.A.OCT
Statistical BINOMDIST DISTR.BINOM
Math CEILING MULTIPLO.SUPERIOR
Information CELL CELDA
Text CHAR CARACTER
Statistical CHIDIST DISTR.CHI
Statistical CHIINV PRUEBA.CHI.INV
Statistical CHITEST PRUEBA.CHI
Lookup CHOOSE ELEGIR
INTRODUCCIÓN
CAP. 1
28
Text CLEAN LIMPIAR
Text CODE CODIGO
Lookup COLUMN COLUMNA
Lookup COLUMNS COLUMNAS
Math COMBIN COMBINAT
Engineering COMPLEX COMPLEJO
Text CONCATENATE CONCATENAR
Statistical CONFIDENCE INTERVALO.CONFIANZA
Engineering CONVERT CONVERTIR
Statistical CORREL COEF.DE.CORREL
Math COS COS
Math COSH COSH
Statistical COUNT CONTAR
Statistical COUNTA CONTARA
Information COUNTBLANK CONTAR.BLANCO
Math COUNTIF CONTAR.SI
Financial COUPDAYBS CUPON.DIAS.L1
Financial COUPDAYS CUPON.DIAS
Financial COUPDAYSNC CUPON.DIAS.L2
Financial COUPNCD CUPON.FECHA.L2
Financial COUPNUM CUPON.NUM
Financial COUPPCD CUPON.FECHA.L1
Statistical COVAR COVAR
Statistical CRITBINOM BINOM.CRIT
Financial CUMIPMT PAGO.INT.ENTRE
Financial CUMPRINC PAGO.PRINC.ENTRE
Date DATE FECHA
Undocumented DATEDIF SIFECHA
Undocumented DATESTRING CADENA.FECHA
Date DATEVALUE FECHANUMERO
Database DAVERAGE BDPROMEDIO
Date DAY DIA
Date DAYS360 DIAS360
Financial DB DB
Text-DoubleByte DBCS DBCS
Database DCOUNT BDCONTAR
Database DCOUNTA BDCONTARA
Financial DDB DDB
Engineering DEC2BIN DEC.A.BIN
Engineering DEC2HEX DEC.A.HEX
Engineering DEC2OCT DEC.A.OCT
Math DEGREES GRADOS
Engineering DELTA DELTA
Statistical DEVSQ DESVIA2
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 29
Database DGET BDEXTRAER
Financial DISC TASA.DESC
Database DMAX BDMAX
Database DMIN BDMIN
Text DOLLAR MONEDA
Financial DOLLARDE MONEDA.DEC
Financial DOLLARFR MONEDA.FRAC
Database DPRODUCT BDPRODUCTO
Database DSTDEV BDDESVEST
Database DSTDEVP BDDESVESTP
Database DSUM BDSUMA
Financial DURATION DURACION
Database DVAR BDVAR
Database DVARP BDVARP
Date EDATE FECHA.MES
Financial EFFECT INT.EFECTIVO
Date EOMONTH FIN.MES
Engineering ERF FUN.ERROR
Engineering ERFC FUN.ERROR.COMPL
Information ERROR.TYPE TIPO.DE.ERROR
External EUROCONVERT EUROCONVERT
Math EVEN REDONDEA.PAR
Text EXACT IGUAL
Math EXP EXP
Statistical EXPONDIST DISTR.EXP
Math FACT FACT
Math FACTDOUBLE FACT.DOBLE
Logical FALSE FALSO
Statistical FDIST DISTR.F
Text FIND ENCONTRAR
Text DoubleByte FINDB ENCONTRARB
Statistical FINV DISTR.F.INV
Statistical FISHER FISHER
Statistical FISHERINV PRUEBA.FISHER.INV
Text FIXED DECIMAL
Math FLOOR MULTIPLO.INFERIOR
Statistical FORECAST PRONOSTICO
Statistical FREQUENCY FRECUENCIA
Statistical FTEST PRUEBA.F
Financial FV VF
Financial FVSCHEDULE VF.PLAN
Statistical GAMMADIST DISTR.GAMMA
Statistical GAMMAINV DISTR.GAMMA.INV
INTRODUCCIÓN
CAP. 1
30
Statistical GAMMALN GAMMA.LN
Math GCD M.C.D
Statistical GEOMEAN MEDIA.GEOM
Engineering GESTEP MAYOR.O.IGUAL
Database GETPIVOTDATA fnNA:GETPIVOTDATA
Statistical GROWTH CRECIMIENTO
Statistical HARMEAN MEDIA.ARMO
Engineering HEX2BIN HEX.A.BIN
Engineering HEX2DEC HEX.A.DEC
Engineering HEX2OCT HEX.A.OCT
Lookup HLOOKUP BUSCARH
Date HOUR HORA
Lookup HYPERLINK fnNA:HYPERLINK
Statistical HYPGEOMDIST DISTR.HIPERGEOM
Logical IF SI
Engineering IMABS IM.ABS
Engineering IMAGINARY IMAGINARIO
Engineering IMARGUMENT IM.ANGULO
Engineering IMCONJUGATE IM.CONJUGADA
Engineering IMCOS IM.COS
Engineering IMDIV IM.DIV
Engineering IMEXP IM.EXP
Engineering IMLN IM.LN
Engineering IMLOG10 IM.LOG10
Engineering IMLOG2 IM.LOG2
Engineering IMPOWER IM.POT
Engineering IMPRODUCT IM.PRODUCT
Engineering IMREAL IM.REAL
Engineering IMSIN IM.SENO
Engineering IMSQRT IM.RAIZ2
Engineering IMSUB IM.SUSTR
Engineering IMSUM IM.SUM
Lookup INDEX INDICE
Lookup INDIRECT INDIRECTO
Information INFO INFO
Math INT ENTERO
Statistical INTERCEPT INTERSECCION
Financial INTRATE TASA.INT
Financial IPMT PAGOINT
Financial IRR TIR
Information ISBLANK ESBLANCO
Information ISERR ESERR
Information ISERROR ESERROR
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 31
Information ISEVEN ES.PAR
Information ISLOGICAL ESLOGICO
Information ISNA ESNOD
Information ISNONTEXT ESNOTEXTO
Information ISNUMBER ESNUMERO
Information ISODD ES.IMPAR
Financial ISPMT INT.PAGO.DIR
Information ISREF ESREF
Information ISTEXT ESTEXTO
Text DoubleByte JIS fnNA:JIS
Statistical KURT CURTOSIS
Statistical LARGE K.ESIMO.MAYOR
Math LCM M.C.M
Text LEFT IZQUIERDA
Text DoubleByte LEFTB IZQUIERDAB
Text LEN LARGO
Text DoubleByte LENB LARGOB
Statistical LINEST ESTIMACION.LINEAL
Math LN LN
Math LOG LOG
Math LOG10 LOG10
Statistical LOGEST ESTIMACION.
LOGARITMICA
Statistical LOGINV DISTR.LOG.INV
Statistical LOGNORMDIST DISTR.LOG.NORM
Lookup LOOKUP BUSCAR
Text LOWER MINUSC
Lookup MATCH COINCIDIR
Statistical MAX MAX
Statistical MAXA fnNA:MAXA
Math MDETERM MDETERM
Financial MDURATION DURACION.MODIF
Statistical MEDIAN MEDIANA
Text MID EXTRAE
Text DoubleByte MIDB EXTRAE
Statistical MIN MIN
Statistical MINA fnNA:MINA
Date MINUTE MINUTO
Math MINVERSE MINVERSA
Financial MIRR TIRM
Math MMULT MMULT
Math MOD RESIDUO
Statistical MODE MODA
INTRODUCCIÓN
CAP. 1
32
Date MONTH MES
Math MROUND REDOND.MULT
Math MULTINOMIAL MULTINOMIAL
Information N N
Information NA NOD
Statistical NEGBINOMDIST NEGBINOMDIST
Date NETWORKDAYS DIAS.LAB
Financial NOMINAL TASA.NOMINAL
Statistical NORMDIST DISTR.NORM
Statistical NORMINV DISTR.NORM.INV
Statistical NORMSDIST DISTR.NORM.ESTAND
Statistical NORMSINV DISTR.NORM.ESTAND.INV
Logical NOT NO
Date NOW AHORA
Financial NPER NPER
Financial NPV VNA
Undocumented NUMBERSTRING CADENA.NUMERO
Engineering OCT2BIN OCT.A.BIN
Engineering OCT2DEC OCT.A.DEC
Engineering OCT2HEX OCT.A.HEX
Math ODD REDONDEA.IMPAR
Financial ODDFPRICE PRECIO.PER.IRREGULAR.1
Financial ODDFYIELD RENDTO.PER.IRREGULAR.1
Financial ODDLPRICE PRECIO.PER.IRREGULAR.2
Financial ODDLYIELD RENDTO.PER.IRREGULAR.2
Lookup OFFSET DESREF
Logical OR O
Statistical PEARSON PEARSON
Statistical PERCENTILE PERCENTIL
Statistical PERCENTRANK RANGO.PERCENTIL
Statistical PERMUT PERMUTACIONES
Text PHONETIC fnNA:PHONETIC
Math PI PI
Financial PMT PAGO
Statistical POISSON POISSON
Math POWER POTENCIA
Financial PPMT PAGOPRIN
Financial PRICE PRECIO
Financial PRICEDISC PRECIO.DESCUENTO
Financial PRICEMAT PRECIO.VENCIMIENTO
Statistical PROB PROBABILIDAD
Math PRODUCT PRODUCTO
Text PROPER NOMPROPIO
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 33
Financial PV VA
Statistical QUARTILE CUARTIL
Math QUOTIENT COCIENTE
Math RADIANS RADIANES
Math RAND ALEATORIO
Math RANDBETWEEN ALEATORIO.ENTRE
Statistical RANK JERARQUIA
Financial RATE TASA
Financial RECEIVED CANTIDAD.RECIBIDA
Text REPLACE REEMPLAZAR
Text DoubleByte REPLACEB REEMPLAZARB
Text REPT REPETIR
Text RIGHT DERECHA
Text DoubleByte RIGHTB DERECHAB
Math ROMAN NUMERO.ROMANO
Math ROUND REDONDEAR
Math ROUNDDOWN REDONDEAR.MENOS
Math ROUNDUP REDONDEAR.MAS
Lookup ROW FILA
Lookup ROWS FILAS
Statistical RSQ COEFICIENTE.R2
Lookup RTD fnNA:RTD
Text SEARCH HALLAR
Text DoubleByte SEARCHB HALLARB
Date SECOND SEGUNDO
Math SERIESSUM SUMA.SERIES
Math SIGN SIGNO
Math SIN SENO
Math SINH SENOH
Statistical SKEW COEFICIENTE.ASIMETRIA
Financial SLN SLN
Statistical SLOPE PENDIENTE
Statistical SMALL K.ESIMO.MENOR
External SQL.REQUEST SQL.REQUEST
Math SQRT RAIZ
Math SQRTPI RAIZ2PI
Statistical STANDARDIZE NORMALIZACION
Statistical STDEV DESVEST
Statistical STDEVA fnNA:STDEVA
Statistical STDEVP DESVESTP
Statistical STDEVPA fnNA:STDEVPA
Statistical STEYX ERROR.TIPICO.XY
Text SUBSTITUTE SUSTITUIR
INTRODUCCIÓN
CAP. 1
34
Math SUBTOTAL SUBTOTALES
Math SUM SUMA
Math SUMIF SUMAR.SI
Math SUMPRODUCT SUMAPRODUCTO
Math SUMSQ SUMA.CUADRADOS
Math SUMX2MY2 SUMAX2MENOSY2
Math SUMX2PY2 SUMAX2MASY2
Math SUMXMY2 SUMAXMENOSY2
Financial SYD SYD
Text T T
Math TAN TAN
Math TANH TANH
Financial TBILLEQ LETRA.DE.TES.EQV.A.BONO
Financial TBILLPRICE LETRA.DE.TES.PRECIO
Financial TBILLYIELD LETRA.DE.TES.RENDTO
Statistical TDIST DISTR.T
Text TEXT TEXTO
Date TIME NSHORA
Date TIMEVALUE HORANUMERO
Statistical TINV DISTR.T.INV
Date TODAY HOY
Lookup TRANSPOSE TRANSPONER
Statistical TREND TENDENCIA
Text TRIM ESPACIOS
Statistical TRIMMEAN MEDIA.ACOTADA
Logical TRUE VERDADERO
Math TRUNC TRUNCAR
Statistical TTEST PRUEBA.T
Information TYPE TIPO
Text UPPER MAYUSC
Undocumented USDOLLAR USDOLLAR
Text VALUE VALOR
Statistical VAR VAR
Statistical VARA fnNA:VARA
Statistical VARP VARP
Statistical VARPA fnNA:VARPA
Financial VDB DVS
Lookup VLOOKUP BUSCARV
Date WEEKDAY DIASEM
Date WEEKNUM NUM.DE.SEMANA
Statistical WEIBULL DIST.WEIBULL
Date WORKDAY DIA.LAB
Financial XIRR TIR.NO.PER
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 35
Financial XNPV VNA.NO.PER
Date YEAR AÑO
Date YEARFRAC FRAC.AÑO
Financial YIELD RENDTO
Financial YIELDDISC RENDTO.DESC
Financial YIELDMAT RENDTO.VENCTO
Statistical ZTEST PRUEBA.Z
Command A1.R1C1 A1.L1C1
Command ABSREF REFABS
Command ACTIVATE ACTIVAR
Command ACTIVATE.NEXT ACTIVAR.SIGUIENTE
Command ACTIVATE.PREV ACTIVAR.ANTERIOR
Command ACTIVE.CELL CELDA.ACTIVA
Command ACTIVE.CELL.FONT FUENTE.CELDA.ACTIVA
Command ADD.ARROW AGREGAR.FLECHA
Command ADD.BAR AGREGAR.BARRA
Command ADD.CHART.AUTOFORMAT AGREGAR.AUTOFMTO.
GRAF
Command ADD.COMMAND AGREGAR.COMANDO
Command ADD.LIST.ITEM AGREGAR.A.LISTA
Command ADD.MENU AGREGAR.MENU
Command ADD.OVERLAY AGREGAR.GRAFICO.
SUPERPUESTO
Command ADD.TOOL AGREGAR.HERRAMIENTA
Command ADD.TOOLBAR AGREGAR.BARRA.
HERRAMIENTAS
Command ADDIN.MANAGER ADMIN.MACROS.
AUTOMATICAS
Command ALERT ALERTA
Command ALIGNMENT ALINEACION
Command ANOVA1 AN.VAR1
Command ANOVA1? AN.VAR1?
Command ANOVA2 AN.VAR2
Command ANOVA2? AN.VAR2?
Command ANOVA3 AN.VAR3
Command ANOVA3? AN.VAR3?
Command APP.ACTIVATE APL.ACTIVAR
Command APP.ACTIVATE.MICROSOFT APL.ACTIVAR.MICROSOFT
Command APP.MAXIMIZE APL.MAXIMIZAR
Command APP.MINIMIZE APL.MINIMIZAR
Command APP.MOVE APL.MOVER
Command APP.RESTORE APL.RESTABLECER
Command APP.SIZE APL.TAMAÑO
Command APP.TITLE APL.TITULO
INTRODUCCIÓN
CAP. 1
36
Command APPLY.NAMES APLICAR.NOMBRES
Command APPLY.STYLE APLICAR.MODELO
Command ARGUMENT ARGUMENTO
Command ARRANGE.ALL ORGANIZAR.TODO
Command ASSIGN.TO.OBJECT ASIGNAR.A.OBJETO
Command ASSIGN.TO.TOOL ASIGNAR.A.HERRAMIENTA
Command ATTACH.TEXT ADHERIR.TEXTO
Command ATTACH.TOOLBARS ADJUNTAR.BARRA.
HERRAMIENTAS
Command ATTRIBUTES ATRIBUTOS
Command AUTO.OUTLINE CREAR.ESQUEMA
Command AUTOCORRECT AUTOCORRECCIÓN
Command AXES EJES
Command BEEP BIP
Command BORDER BORDES
Command BREAK INTERRUMPIR
Command BRING.TO.FRONT HACIA.ADELANTE
Command CALCULATE.DOCUMENT CALCULAR.DOCUMENTO
Command CALCULATE.NOW CALCULAR.AHORA
Command CALCULATION CALCULAR
Command CALL LLAMAR
Command CALLER LLAMADOR
Command CANCEL.COPY CANCELAR.COPIAR
Command CANCEL.KEY CANCELAR.TECLA
Command CELL.PROTECTION PROTEGER.CELDA
Command CHANGE.LINK CAMBIAR.VINCULO
Command CHART.ADD.DATA GRAFICO.AGREGAR.DATOS
Command CHART.TREND GRAFICO.TENDENCIA
Command CHART.WIZARD ASISTENTE.PARA.GRAFICOS
Command CHECK.COMMAND MARCAR.COMANDO
Command CHECKBOX.PROPERTIES FORMATO.OBJETO.
CASILLA.DE.VERIFICACION
Command CLEAR BORRAR
Command CLEAR.OUTLINE BORRAR.ESQUEMA
Command CLEAR.PRINT.AREA BORRAR.AREA.
DE.IMPRESION
Command CLEAR.ROUTING.SLIP ANULAR.DISTRIBUIR
Command CLOSE CERRAR
Command CLOSE.ALL CERRAR.TODO
Command COLOR.PALETTE PALETA.COLORES
Command COLUMN.WIDTH ANCHO.COLUMNA
Command COMBINATION COMBINADO
Command CONSOLIDATE CONSOLIDAR
Command CONSTRAIN.NUMERIC RESTRICCION.NUMERICA
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 37
Command COPY COPIAR
Command COPY.CHART COPIAR.GRAFICO
Command COPY.PICTURE COPIAR.IMAGEN
Command COPY.TOOL COPIAR.HERRAMIENTA
Command CREATE.NAMES CREAR.NOMBRES
Command CREATE.OBJECT CREAR.OBJETO
Command CREATE.PUBLISHER CREATE.PUBLISHER
Command CUSTOM.REPEAT PERSONALIZAR.REPETIR
Command CUSTOM.UNDO PERSONALIZAR.DESHACER
Command CUSTOMIZE.TOOLBAR PERSONALIZAR.BARRA
Command CUT CORTAR
Command DATA.DELETE DATOS.ELIMINAR
Command DATA.FIND DATOS.BUSCAR
Command DATA.FIND.NEXT DATOS.BUSCAR.SIGUIENTE
Command DATA.FIND.PREV DATOS.BUSCAR.ANTERIOR
Command DATA.FORM FICHA
Command DATA.LABEL ROTULOS.DATOS
Command DATA.SERIES DATOS.SERIES
Command DEFINE.NAME DEFINIR.NOMBRE
Command DEFINE.STYLE DEFINIR.MODELO
Command DELETE.ARROW ELIMINAR.FLECHA
Command DELETE.BAR ELIMINAR.BARRA
Command DELETE.CHART.
AUTOFORMAT
ELIMINAR.AUTOFMTO.
GRAF
Command DELETE.COMMAND ELIMINAR.COMANDO
Command DELETE.FORMAT ELIMINAR.FORMATO
Command DELETE.MENU ELIMINAR.MENU
Command DELETE.NAME ELIMINAR.NOMBRE
Command DELETE.OVERLAY ELIMINAR.GRAFICO.
SUPERPUESTO
Command DELETE.STYLE ELIMINAR.MODELO
Command DELETE.TOOL ELIMINAR.HERRAMIENTA
Command DELETE.TOOLBAR ELIMINAR.BARRA.
HERRAMIENTAS
Command DEMOTE DISMINUIR.NIVEL
Command DEREF VALREF
Command DESCR DESCRIPTIVA
Command DESCR? DESCRIPTIVA?
Command DIALOG.BOX CUADRO.DE.DIALOGO
Command DIRECTORY DIRECTORIO
Command DISABLE.INPUT INHABILITAR.ENTRADA
Command DISPLAY PRESENTAR
Command DOCUMENTS DOCUMENTOS
Command DUPLICATE DUPLICAR
INTRODUCCIÓN
CAP. 1
38
Command ECHO ECO
Command EDIT.COLOR EDICION.COLOR
Command EDIT.DELETE EDICION.ELIMINAR
Command EDIT.OBJECT EDITAR.OBJETO
Command EDIT.REPEAT EDICION.REPETIR
Command EDIT.SERIES EDICION.SERIES
Command EDIT.TOOL EDICION.HERRAMIENTA
Command EDITBOX.PROPERTIES FORMATO.OBJETO.
CUADRO.EDICION
Command EDITION.OPTIONS EDICION.OPCIONES
Command ELSE SI.NO
Command ELSE.IF SI.NO.SI
Command ENABLE.COMMAND HABILITAR.COMANDO
Command ENABLE.OBJECT HABILITAR.OBJETO
Command ENABLE.TIPWIZARD HABILITAR.ASISTENTE.
IDEAS
Command ENABLE.TOOL HABILITAR.HERRAMIENTA
Command END.IF FIN.SI
Command ENTER.DATA INTRODUCIR.DATOS
Command ERROR ERROR
Command ERRORBAR.X BARRA.ERROR.X
Command ERRORBAR.Y BARRA.ERROR.Y
Command EVALUATE EVALUAR
Command EXEC EJEC
Command EXECUTE EJECUTA
Command EXPON SUAVIZ.EXPON
Command EXPON? SUAVIZ.EXPON?
Command EXTEND.POLYGON EXTENDER.POLIGONO
Command EXTRACT EXTRAER
Command FCLOSE CERRARA
Command FILE.CLOSE ARCHIVO.CERRAR
Command FILE.DELETE ARCHIVO.ELIMINAR
Command FILES ARCHIVOS
Command FILL.AUTO AUTO.LLENAR
Command FILL.DOWN LLENAR.HACIA.ABAJO
Command FILL.GROUP LLENAR.GRUPO
Command FILL.LEFT LLENAR.HACIA.
LA.IZQUIERDA
Command FILL.RIGHT LLENAR.HACIA.
LA.DERECHA
Command FILL.UP LLENAR.HACIA.ARRIBA
Command FILL.WORKGROUP LLENAR.GRUPO.
DE.TRABAJO
Command FILTER FILTROS
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 39
Command FILTER.ADVANCED FILTRO.AVANZADO
Command FILTER.SHOW.ALL FILTROS.MOSTRAR.TODO
Command FIND.FILE BUSCAR.ARCHIVO
Command FONT FUENTES
Command FONT.PROPERTIES PROPIEDADES.FUENTE
Command FOPEN ABRIRA
Command FOR PARA
Command FOR.CELL PARA.CELDA
Command FORMAT.AUTO AUTOFORMATO
Command FORMAT.CHART FORMATO.GRAFICO
Command FORMAT.CHARTTYPE FORMATO.TIPO.GRAFICO
Command FORMAT.FONT FORMATO.FUENTES
Command FORMAT.LEGEND FORMATO.LEYENDA
Command FORMAT.MAIN FORMATO.PRINCIPAL
Command FORMAT.MOVE FORMATO.MOVER
Command FORMAT.NUMBER FORMATO.NUMERO
Command FORMAT.OVERLAY FORMATO.SUPERPUESTO
Command FORMAT.SHAPE FORMATO.FIGURA
Command FORMAT.SIZE FORMATO.TAMAÑO
Command FORMAT.TEXT FORMATO.TEXTO
Command FORMULA FORMULA
Command FORMULA.ARRAY FORMULA.MATRICIAL
Command FORMULA.CONVERT FORMULA.CONVERTIR
Command FORMULA.FILL FORMULA.LLENAR
Command FORMULA.FIND FORMULA.BUSCAR
Command FORMULA.FIND.NEXT FORMULA.BUSCAR.
SIGUIENTE
Command FORMULA.FIND.PREV FORMULA.BUSCAR.
ANTERIOR
Command FORMULA.GOTO FORMULA.IR.A
Command FORMULA.REPLACE FORMULA.REEMPLAZAR
Command FOURIER FOURIER
Command FOURIER? FOURIER?
Command FPOS POSICIONA
Command FREAD LEERA
Command FREADLN LEERALN
Command FREEZE.PANES INMOVILIZAR.SECCIONES
Command FSIZE TAMAÑOA
Command FTESTV PRUEBA.F.VAR
Command FTESTV? PRUEBA.F.VAR?
Command FULL PANTALLA.COMPLETA
Command FULL.SCREEN VISTA.PANTALLA.
COMPLETA
INTRODUCCIÓN
CAP. 1
40
Command FUNCTION.WIZARD ASISTENTE.PARA.
FUNCIONES
Command FWRITE ESCRIBIRA
Command FWRITELN ESCRIBIRALN
Command GALLERY.3D.AREA GALERIA.AREAS.3D
Command GALLERY.3D.BAR GALERIA.BARRAS.3D
Command GALLERY.3D.COLUMN GALERIA.COLUMNAS.3D
Command GALLERY.3D.LINE GALERIA.LINEAS.3D
Command GALLERY.3D.PIE GALERIA.CIRCULAR.3D
Command GALLERY.3D.SURFACE GALERIA.SUPERFICIE.3D
Command GALLERY.AREA GALERIA.AREAS
Command GALLERY.BAR GALERIA.BARRAS
Command GALLERY.COLUMN GALERIA.COLUMNAS
Command GALLERY.CUSTOM GALERIA.PERZONALIZADA
Command GALLERY.DOUGHNUT GALERIA.ANILLOS
Command GALLERY.LINE GALERIA.LINEAS
Command GALLERY.PIE GALERIA.CIRCULAR
Command GALLERY.RADAR GALERIA.RADAR
Command GALLERY.SCATTER GALERIA.DISPERSION
Command GET.BAR INDICAR.BARRA
Command GET.CELL INDICAR.CELDA
Command GET.CHART.ITEM INDICAR.ELEMENTO.
GRAFICO
Command GET.DEF INDICAR.DEF
Command GET.DOCUMENT INDICAR.DOCUMENTO
Command GET.FORMULA INDICAR.FORMULA
Command GET.LINK.INFO INDICAR.INFO.VINCULO
Command GET.MOVIE GET.MOVIE
Command GET.NAME INDICAR.NOMBRE
Command GET.NOTE INDICAR.NOTAS
Command GET.OBJECT INDICAR.OBJETO
Command GET.PIVOT.FIELD INDICAR.CAMPO.TABLA.DI
Command GET.PIVOT.ITEM INDICAR.ELEMENTO.TABLA.
DI
Command GET.PIVOT.TABLE INDICAR.TABLA.DINAMICA
Command GET.TOOL INDICAR.HERRAMIENTA
Command GET.TOOLBAR INDICAR.BARRA.
HERRAMIENTAS
Command GET.WINDOW INDICAR.VENTANA
Command GET.WORKBOOK INDICAR.LIBRO
Command GET.WORKSPACE INDICAR.AREA.DE.TRABAJO
Command GOAL.SEEK BUSCAR.OBJETIVO
Command GOTO IR.A
Command GRIDLINES LINEAS.DE.DIVISION
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 41
Command GROUP AGRUPAR
Command HALT DETENER
Command HELP AYUDA
Command HIDE OCULTAR
Command HIDE.DIALOG OCULTAR.DIALOGO
Command HIDE.OBJECT OCULTAR.OBJETO
Command HISTOGRAM HISTOGRAMA
Command HISTOGRAM? HISTOGRAMA?
Command HLINE LINEAH
Command HPAGE PAGINAH
Command HSCROLL DESPLAZARH
Command INITIATE INICIAR
Command INPUT INTRODUCIR
Command INSERT INSERTAR
Command INSERT.MAP.OBJECT INSERTAR.MAPA.OBJETO
Command INSERT.OBJECT INSERTAR.OBJETO
Command INSERT.PICTURE INSERTAR.IMAGEN
Command INSERT.TITLE INSERTAR.TITULO
Command JUSTIFY JUSTIFICAR
Command LABEL.PROPERTIES FORMATO.OBJ.ROTULO
Command LAST.ERROR ULTIMO.ERROR
Command LEGEND LEYENDA
Command LINE.PRINT IMPRIMIR.EN.LINEA
Command LINK.COMBO VINCULAR.COMBINADO
Command LINK.FORMAT VINCULAR.FORMATO
Command LINKS VINCULOS
Command LIST.NAMES LISTAR.NOMBRES
Command LISTBOX.PROPERTIES FORMATO.OBJ.CUADRO.
LISTA
Command MACRO.OPTIONS OPCIONES.MACRO
Command MAIL.ADD.MAILER CORREO.AGREGAR.
FORMULARIO
Command MAIL.DELETE.MAILER CORREO.ELIMINAR.
FORMULARIO
Command MAIL.EDIT.MAILER CORREO.EDICION.
FORMULARIO
Command MAIL.FORWARD REENVIAR.CORREO
Command MAIL.LOGOFF CERRAR.CORREO
Command MAIL.LOGON INICIAR.CORREO
Command MAIL.NEXT.LETTER CORREO.SIGUIENTE.
MENSAJE
Command MAIL.REPLY CORREO.RESPONDER
Command MAIL.REPLY.ALL CORREO.
REPONDER.A.TODOS
INTRODUCCIÓN
CAP. 1
42
Command MAIL.SEND.MAILER ENVIAR.FORMULARIO
Command MAIN.CHART GRAFICO.PRINCIPAL
Command MAIN.CHART.TYPE GRAFICO.PRINCIPAL.TIPO
Command MCORREL MCORREL
Command MCORREL? MCORREL?
Command MCOVAR MCOVAR
Command MCOVAR? MCOVAR?
Command MENU.EDITOR MENU.EDITOR
Command MERGE.STYLES COMBINAR.MODELOS
Command MESSAGE MENSAJE
Command MOVE MOVER
Command MOVE.TOOL MOVER.HERRAMIENTA
Command MOVEAVG MEDIA.MOV
Command MOVEAVG? MEDIA.MOV?
Command MOVIE.COMMAND MOVIE.COMMAND
Command NAMES NOMBRES
Command NEW NUEVO
Command NEW.WINDOW NUEVA.VENTANA
Command NEXT SALIR.BUCLE
Command NOTE NOTA
Command OBJECT.PROPERTIES PROPIEDADES.OBJETO
Command OBJECT.PROTECTION PROTEGER.OBJETO
Command ON.DATA LLAMAR.POR.DATOS
Command ON.DOUBLECLICK LLAMAR.POR.DOBLE.CLIC
Command ON.ENTRY LLAMAR.POR.ENTRADA
Command ON.KEY LLAMAR.POR.TECLA
Command ON.RECALC LLAMAR.POR.RECALCULO
Command ON.SHEET LLAMAR.POR.HOJA
Command ON.TIME LLAMAR.POR.HORA
Command ON.WINDOW LLAMAR.POR.VENTANA
Command OPEN ABRIR
Command OPEN.DIALOG ABRIR.ARCHIVO
Command OPEN.LINKS ABRIR.VINCULOS
Command OPEN.MAIL OPEN.MAIL
Command OPEN.TEXT ABRIR.ARCHIVO.TEXTO
Command OPTIONS.CALCULATION OPCIONES.CALCULAR
Command OPTIONS.CHART OPCIONES.GRAFICO
Command OPTIONS.EDIT OPCIONES.EDICION
Command OPTIONS.GENERAL OPCIONES.GENERAL
Command OPTIONS.LISTS.ADD AGREGAR.LISTA.PERS
Command OPTIONS.LISTS.DELETE ELIMINAR.LISTAS
Command OPTIONS.LISTS.GET OPCIONES.INDICAR.LISTAS
Command OPTIONS.TRANSITION OPCIONES.TRANSICION
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 43
Command OPTIONS.VIEW OPCIONES.VER
Command OUTLINE ESQUEMA
Command OVERLAY SUPERPUESTO
Command OVERLAY.CHART.TYPE TIPO.GRAFICO.
SUPERPUESTO
Command PAGE.SETUP AJUSTAR.PAGINA
Command PARSE REDISTRIBUIR
Command PASTE PEGAR
Command PASTE.LINK PEGAR.VINCULOS
Command PASTE.PICTURE PEGAR.IMAGEN
Command PASTE.PICTURE.LINK PEGAR.VINCULOS.IMAGEN
Command PASTE.SPECIAL PEGADO.ESPECIAL
Command PASTE.TOOL PEGAR.HERRAMIENTA
Command PATTERNS DISEÑO
Command PAUSE PAUSA
Command PICKLIST LISTA.ELECCIÓN
Command PIVOT.ADD.DATA TABLA.DI.ADICIONAR.
DATOS
Command PIVOT.ADD.FIELDS TABLA.DI.AGREGAR.
CAMPO
Command PIVOT.FIELD TABLA.DI.CAMPO
Command PIVOT.FIELD.GROUP AGRUPAR.CAMPOS.
DINAMICOS
Command PIVOT.FIELD.PROPERTIES TABLA.DI.PROPIEDADES.
CAMPO
Command PIVOT.FIELD.UNGROUP DESAGRUPAR.CAMPOS.
DINAMICOS
Command PIVOT.ITEM TABLA.DI.ELEMENTO
Command PIVOT.ITEM.PROPERTIES TABLA.DI.PROPIEDADES.
ELEMENTO
Command PIVOT.REFRESH TABLA.DI.RENOVAR
Command PIVOT.SHOW.PAGES TABLA.DI.MOSTRAR.
PAGINAS
Command PIVOT.TABLE.WIZARD ASISTENTE.TABLAS.
DINAMICAS
Command PLACEMENT COLOCAR
Command POKE TRANSFERIR
Command POST.DOCUMENT EXPEDIR.DOCUMENTO
Command PRECISION PRECISION
Command PREFERRED PREFERIDO
Command PRESS.TOOL PRESIONAR.HERRAMIENTA
Command PRINT IMPRIMIR
Command PRINT.PREVIEW PRESENTACION.
PRELIMINAR
Command PRINTER.SETUP ESPECIFICAR.IMPRESORA
INTRODUCCIÓN
CAP. 1
44
Command PROMOTE AUMENTAR.NIVEL
Command PROTECT.DOCUMENT PROTEGER.DOCUMENTO
Command PTTESTM PRUEBA.T.EMPAREJADAS
Command PTTESTM? PRUEBA.T.EMPAREJADAS?
Command PTTESTV PRUEBA.T.DIF.VAR
Command PTTESTV? PRUEBA.T.DIF.VAR?
Command PUSHBUTTON.PROPERTIES FORMATO.OBJ.BOTON
Command QUIT SALIR
Command RANDOM ALEATORIO2
Command RANDOM? ALEATORIO2?
Command RANKPERC JERARQUIA.PERCENTIL
Command RANKPERC? JERARQUIA.PERCENTIL?
Command REFTEXT REFTEXTO
Command REGISTER REGISTRAR
Command REGISTER.ID ID.REGISTRO
Command REGRESS REGRESION
Command REGRESS? REGRESION?
Command RELREF REFREL
Command REMOVE.LIST.ITEM ELIMINAR.ELEMENTO.LISTA
Command REMOVE.PAGE.BREAK ANULAR.SALTO.DE.PAGINA
Command RENAME.COMMAND CAMBIAR.NOMBRE.
COMANDO
Command RENAME.OBJECT CAMBIAR.NOMBRE.OBJETO
Command REPLACE.FONT REEMPLAZAR.TIPO
Command REQUEST SOLICITAR
Command RESET.TOOL RESTABLECER.
HERRAMIENTA
Command RESET.TOOLBAR RESTABLECER.BARRA
Command RESTART REINICIAR
Command RESULT RESULTADO
Command RESUME REANUDAR
Command RETURN VOLVER
Command ROUTE.DOCUMENT RUTA.DOCUMENTO
Command ROUTING.SLIP LISTA.DE.DISTRIBUCION
Command ROW.HEIGHT ALTO.FILA
Command RUN EJECUTAR
Command SAMPLE MUESTRA
Command SAMPLE? MUESTRA?
Command SAVE GUARDAR
Command SAVE.AS GUARDAR.COMO
Command SAVE.COPY.AS GUARDAR.COPIA.COMO
Command SAVE.DIALOG GUARDAR.ARCHIVO
Command SAVE.NEW.OBJECT GUARDAR.NUEVO.OBJETO
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 45
Command SAVE.TOOLBAR GUARDAR.BARRA.
HERRAMIENTAS
Command SAVE.WORKBOOK GUARDAR.LIBRO
Command SAVE.WORKSPACE GUARDAR.AREA.
DE.TRABAJO
Command SCALE ESCALA
Command SCENARIO.ADD AGREGAR.ESCENARIO
Command SCENARIO.CELLS ESCENARIO.CELDAS
Command SCENARIO.DELETE ESCENARIO.ELIMINAR
Command SCENARIO.EDIT ESCENARIO.EDITAR
Command SCENARIO.GET ESCENARIO.INDICAR
Command SCENARIO.MERGE ESCENARIO.COMBINAR
Command SCENARIO.SHOW ESCENARIO.MOSTRAR
Command SCENARIO.SHOW.NEXT ESCENARIO.MOSTRAR.
PROXIMO
Command SCENARIO.SUMMARY ESCENARIO.RESUMEN
Command SCROLLBAR.PROPERTIES FORMATO.OBJ.BARRA.
DESPLAZ
Command SELECT SELECCIONAR
Command SELECT.ALL SELECCIONAR.TODO
Command SELECT.CHART SELECCIONAR.GRAFICO
Command SELECT.END SELECCIONAR.FIN
Command SELECT.LAST.CELL SELECCIONAR.ULTIMA.
CELDA
Command SELECT.LIST.ITEM SELECCIONAR.ELEMENTO.
LISTA
Command SELECT.PLOT.AREA SELECCIONAR.AREA.
DE.TRAZADO
Command SELECT.SPECIAL SELECCION.ESPECIAL
Command SELECTION SELECCION
Command SEND.KEYS ENVIAR.TECLAS
Command SEND.MAIL ENVIAR.DOCUMENTO.POR.
MAIL
Command SEND.TO.BACK HACIA.ATRAS
Command SERIES SERIES
Command SERIES.AXES EJES.SERIES
Command SERIES.ORDER ORDEN.SERIES
Command SERIES.X SERIES.X
Command SERIES.Y SERIES.Y
Command SET.CONTROL.VALUE ESTABLECER.VALOR.
DE.CONTROL
Command SET.CRITERIA ESTABLECER.CRITERIOS
Command SET.DATABASE ESTABLECER.BASE.
DE.DATOS
INTRODUCCIÓN
CAP. 1
46
Command SET.DIALOG.DEFAULT ESTABLECER.DIALOGO.
ESTANDAR
Command SET.DIALOG.FOCUS ESTABLECER.ENFOQUE.
DIALOGO
Command SET.EXTRACT ESTABLECER.EXTRACCION
Command SET.LIST.ITEM ESTABLECER.ELEMENTO.
LISTA
Command SET.NAME ESTABLECER.NOMBRE
Command SET.PAGE.BREAK ESTABLECER.SALTO.
DE.PAGINA
Command SET.PREFERRED ESTABLECER.GRAFICO.
PREFERIDO
Command SET.PRINT.AREA ESTABLECER.AREA.
DE.IMPRESION
Command SET.PRINT.TITLES ESTABLECER.
TITULOS.A.IMPRIMIR
Command SET.UPDATE.STATUS ESTADO.ACTUALIZACION
Command SET.VALUE ESTABLECER.VALOR
Command SHARE COMPARTIR
Command SHARE.NAME COMPARTIR.NOMBRE
Command SHEET.BACKGROUND HOJA.FONDO
Command SHORT.MENUS MENUS.CORTOS
Command SHOW.ACTIVE.CELL MOSTRAR.CELDA.ACTIVA
Command SHOW.BAR MOSTRAR.BARRA
Command SHOW.CLIPBOARD MOSTRAR.PORTAPAPELES
Command SHOW.DETAIL MOSTRAR.DETALLE
Command SHOW.DIALOG MOSTRAR.DIALOGO
Command SHOW.INFO MOSTRAR.INFORMACION
Command SHOW.LEVELS MOSTRAR.NIVELES
Command SHOW.TOOLBAR MOSTRAR.BARRA.
DE.HERRAMIENTAS
Command SIZE TAMAÑO
Command SORT ORDENAR
Command SORT.SPECIAL SORT.SPECIAL
Command SOUND.NOTE NOTA.SONORA
Command SOUND.PLAY REPRODUCIR.SONIDO
Command SPELLING ORTOGRAFIA
Command SPELLING.CHECK REVISION.ORTOGRAFICA
Command SPLIT DIVIDIR
Command STANDARD.FONT TIPO.ESTANDAR
Command STANDARD.WIDTH ANCHO.ESTANDAR
Command START COMENZAR
Command STEP PASO.A.PASO
Command STYLE ESTILO
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 47
Command SUBSCRIBE.TO SUBSCRIBE.TO
Command SUBTOTAL.CREATE CREAR.SUBTOTAL
Command SUBTOTAL.REMOVE ELIMINAR.SUBTOTAL
Command SUMMARY.INFO RESUMEN
Command TAB.ORDER ORDEN.DE.TAB
Command TABLE TABLA
Command TERMINATE TERMINAR
Command TEXT.BOX CUADRO.DE.TEXTO
Command TEXT.TO.COLUMNS TEXTO.EN.COLUMNAS
Command TEXTREF TEXTOREF
Command TRACER.CLEAR QUITAR.RASTREADOR
Command TRACER.DISPLAY MOSTRAR.RASTREADOR
Command TRACER.ERROR RASTREAR.ERROR
Command TRACER.NAVIGATE DESPLAZAR.PTOS.RASTREO
Command TTESTM PRUEBA.T.VAR.IGUAL
Command TTESTM? PRUEBA.T.VAR.IGUAL?
Command UNDO DESHACER
Command UNGROUP DESAGRUPAR
Command UNGROUP.SHEETS DESAGRUPAR.HOJAS
Command UNHIDE MOSTRAR
Command UNLOCKED.NEXT DESBLOQUEADA.
SIGUIENTE
Command UNLOCKED.PREV DESBLOQUEADA.
ANTERIOR
Command UNREGISTER DESREGISTRAR
Command UPDATE.LINK ACTUALIZAR.VINCULO
Command VBA.ADD.WATCH VBA.AGREGAR.INSPECCION
Command VBA.CLEAR.BREAKPOINTS VBA.BORRAR.PTOS.
INTERRUPCION
Command VBA.DEBUG.WINDOW VBA.VENTANA.
DE.DEPURACION
Command VBA.EDIT.WATCH VBA.EDICION.INSPECCION
Command VBA.END VBA.FINALIZAR
Command VBA.INSERT.FILE VBA.INSERTAR.ARCHIVO
Command VBA.INSTANT.WATCH VBA.INSPECCION.
INSTANTANEA
Command VBA.MAKE.ADDIN VBA.CREAR.MACRO.
AUTOM
Command VBA.OBJECT.BROWSER VBA.EXAMINAR.OBJETO
Command VBA.PROCEDURE.DEFINITION VBA.DEFINIR.
PROCEDIMIENTO
Command VBA.REFERENCES OB.REFERENCIAS
Command VBA.RESET VBA.RESTABLECER
Command VBA.STEP.INTO VBA.RECORRER.TODO
INTRODUCCIÓN
CAP. 1
48
Command VBA.STEP.OVER VBA.RECORRER.PRINCIPAL
Command VBA.TOGGLE.BREAKPOINT VBA.ALTERNAR.PTO.
DE.INTERRUPCION
Command VIEW.3D PRESENTACION.3D
Command VLINE LINEAV
Command VOLATILE VOLATIL
Command VPAGE PAGINAV
Command VSCROLL DESPLAZARV
Command WAIT ESPERAR
Command WHILE MIENTRAS
Command WINDOW.MAXIMIZE VENTANA.MAXIMIZAR
Command WINDOW.MINIMIZE VENTANA.MINIMIZAR
Command WINDOW.MOVE VENTANA.MOVER
Command WINDOW.RESTORE VENTANA.RESTAURAR
Command WINDOW.SIZE VENTANA.TAMAÑO
Command WINDOW.TITLE VENTANA.TITULO
Command WINDOWS VENTANAS
Command WORKBOOK.ACTIVATE LIBRO.ACTIVAR
Command WORKBOOK.ADD LIBRO.AGREGAR
Command WORKBOOK.COPY LIBRO.COPIAR
Command WORKBOOK.DELETE ELIMINAR.LIBRO
Command WORKBOOK.HIDE OCULTAR.LIBRO
Command WORKBOOK.INSERT INSERTAR.LIBRO
Command WORKBOOK.MOVE LIBRO.MOVER
Command WORKBOOK.NAME NOMBRE.LIBRO
Command WORKBOOK.NEW LIBRO.DE.TRABAJO.NUEVO
Command WORKBOOK.NEXT LIBRO.SIGUIENTE
Command WORKBOOK.OPTIONS LIBRO.OPCIONES
Command WORKBOOK.PREV LIBRO.ANTERIOR
Command WORKBOOK.PROTECT PROTEGER.LIBRO
Command WORKBOOK.SCROLL LIBRO.PASAR.A.HOJA
Command WORKBOOK.SELECT LIBRO.SELECCIONAR
Command WORKBOOK.TAB.SPLIT LIBRO.BAR.DE.DIV.
HORIZONTAL
Command WORKBOOK.UNHIDE MOSTRAR.LIBRO
Command WORKGROUP GRUPO.DE.TRABAJO
Command WORKGROUP.OPTIONS GRUPOTRABAJO.
OPCIONES
Command WORKSPACE AREA.DE.TRABAJO
Command ZOOM ZOOM
Command ZTESTM PRUEBA.Z.MEDIAS
Command ZTESTM? PRUEBA.Z.MEDIAS?
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 49
• EVALUACIÓN DE LA CAPACIDAD
1. ¿Qué concepto tiene de un programa y nombre tres programas de tipo lenguajes de programación?
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
2. ¿Cuál es la diferencia entre una clase y un objeto?
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
3. Mencione 5 propiedades y 5 eventos del objeto ListBox del VBA.
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
4. ¿Cuál es la diferencia entre VBA y VSTO?
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
5. ¿Cuál es el equivalente de las siguientes funciones de Excel en VBA?
 BuscarV
 Promedio
 Suma
 MediaGeom
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
2
2
2
CAPÍTULO
INTRODUCCIÓN AL VISUAL BASIC
APLICACIONES (VBA)
 Lenguaje Basic
 Fundamentos de Visual Basic Aplicaciones para Excel
 La ficha Programador de Excel 2010
 Configurar la seguridad de Macros en un libro de Excel
 Modos de Acceso al VBA
 Descripción del editor VBA
– Descripción de la barra de herramientas estándar
– El explorador de Proyectos
– La Ventana de Propiedades
– La Ventana de Código
 Personalizar del entorno VBA
– Asignar derechos sobre el proyecto VBA
– Asignar una clave al código VBA
– Activar el requerimiento de declaración obligatoria de variables
– Aplicar formato al editor de código VBA
 El objeto ThisWorkBook
 El objeto WorkSheets
 Evaluación de la capacidad
CAPACIDAD DEL CAPÍTULO
 Reconoce conceptos básicos de programación y objetos VBA.
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 53
• LENGUAJE BASIC
El lenguaje BASIC fue inventado en 1964 por John George Kemeny (1926-1992) y Thomas Eugene Kurtz
(1928-) en el Dartmouth College. En años subsiguientes, mientras que otros dialectos de BASIC aparecían,
el BASIC original de Kemeny y Kurtz fue conocido como Dartmouth BASIC.
BASIC fue diseñado para permitir a los estudiantes escribir programas usando terminales de una
computadora en tiempo compartido. Estaba pensado para reducir notablemente la complejidad de
los otros lenguajes del momento, con uno diseñado específicamente para la clase de usuarios que los
sistemas de tiempo compartido permitían: un usuario más sencillo, fuera del área de las ciencias de
la computación, a quien no le interesaba tanto la velocidad, sólo el hecho de ser capaz de programar
y usar la máquina sin demasiadas complicaciones. Los diseñadores del lenguaje también querían que
permaneciera en el dominio público, lo cual contribuyó a que se diseminara rápidamente.
Basic presenta ocho principios que rigen su diseño:
1. Ser fácil de usar para los principiantes, propone sentencias en inglés que son de simple corte, sólo
debe tener cuidado en el formato de cada una de ellas.
2. Ser un lenguaje de propósito general, Basic no está destinado a un área específica más bien es
portable.
3. Permitir a los expertos añadir características avanzadas, conservando simple el lenguaje para los
principiantes.
4. Ser interactivo.
5. Proveer mensajes de error, claros y amigables.
6. Responder rápido en los programas pequeños.
7. No requerir un conocimiento del hardware de la computadora.
8. Proteger al usuario del sistema operativo.
• FUNDAMENTOS DE VISUAL BASIC APLICACIONES PARA EXCEL
Microsoft VBA (Visual Basic for Applications) es un lenguaje de macros bajo la plataforma Visual Basic,
aquí es donde se desarrollará aplicaciones a medida para el sistema operativo Windows, VBA está incluido
en varias aplicaciones Microsoft es por eso que no necesita instalación ni mucho menos descargarla de
internet.
Microsoft VBA viene integrado en aplicaciones de Microsoft Office, como Word, Excel y Access.
Prácticamente cualquier cosa que se pueda programar en Visual Basic 5.0 o 6.0 se puede hacer también
dentro de un documento de Office, con la sola limitación que el producto final no se puede compilar
separadamente del documento, hoja o base de datos en que fue creado; es decir, se convierte en una
macro (o más bien una súper macro). Esta macro puede instalarse o distribuirse con sólo copiar el
documento o base de datos.
INTRODUCCIÓN AL VISUAL BASIC APLICACIONES (VBA)
CAP. 2
54
• LA FICHA PROGRAMADOR DE EXCEL 2010
Esta ficha tiene entre sus herramientas el acceso al entorno VBA,
formularios y varias opciones más pertenecientes al entorno
avanzado de Excel. En la actualidad la mayoría de software de
ingeniería cuentan con un acceso al VBA, Excel lo realiza por medio
de esta ficha.
Excel inicialmente no muestra la ficha Programador, se debe habilitar
para lo cual usted deberá seguir los siguientes pasos:
Seleccione el menú Archivo (1) desde Excel, aquí es la diferencia en
Excel 2007 y 2010, este último implementó en su entorno el menú de
opción Archivo y es desde allí donde se debe seleccionar Opciones (2)
con esta usted obtendrá una ventana de opciones dentro de las cuales
podrá activar la ficha programador que se encuentra hasta el momento
inhabilitada.
De la ventana Opciones de Excel, seleccione Personalizar cinta de opciones.
Finalmente para habilitar la ficha programador sólo debe realizar un check en el recuadro de la Fig. 2.1
y finalmente clic en aceptar.
1
2
Fig. 2-1
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 55
Las herramientas presentadas por la ficha Programador son:
Se definirán las principales herramientas que tiene la ficha Programador:
Fig. 2-2
HERRAMIENTA DESCRIPCIÓN
COMBINACIÓN DE
TECLAS
Botón que permite acceder al entorno VBA. Alt+F11
Botón que permite mostrar el entorno de control
de macros públicas para Excel, es decir, podrá editar,
ejecutar o eliminar las macros. Desde este entorno no
solamente visualiza macros creadas desde Excel sino
también las implementadas en VBA como funciones o
procedimientos públicos.
Alt+F8
Permite iniciar la grabación de una nueva macro que
posteriormente usted la podrá administrar desde la
herramienta Macros.
No presenta
Botón de personalización de seguridad de la macro
frente a un archivo de Excel.
Seguramente que a usted alguna vez le apareció un
mensaje así:
Y optó por pensarlo antes de seleccionar Habilitar
contenido, la advertencia ocurre por la actividad macro
que se encuentra dentro del Excel y que al no configurar
la Seguridad de macros; Excel opta por preguntar si
desea habilitarlas.
No presenta
Los controles de los Formularios presentan una lista
de objetos que pueden asociarse a una macro para la
ejecución de una aplicación VBA.
No presenta
INTRODUCCIÓN AL VISUAL BASIC APLICACIONES (VBA)
CAP. 2
56
• CONFIGURAR LA SEGURIDAD DE MACROS EN UN LIBRO DE EXCEL
Toda implementación de macros en Excel necesita ser habilitada al momento de acceder a ella esto
es porque un libro de Excel grabado en forma genérica no tiene una macro asignada, entonces al
implementarle una macro el tipo de archivo debe ser Libro de Excel habilitado para macros.
Ahora tiene 2 opciones, primero dejar que Excel le pregunte al momento de abrir un documento de
Excel si quiere habilitar el contenido o segundo configurar la seguridad de la macro para que al acceder
al archivo de Excel con macros no realice pregunta alguna y habilite las macros.
Acceso:
 Ficha Programador 
En la ventana Centro de confianza se muestra una serie de opciones y como verá ya está predefinida la
opción Deshabilitar todas las macros con notificación, de la cual usted debe configurar de la siguiente
manera:
Debe seleccionar Habilitar todas las macros (1) y active el check Confiar en el acceso al modelo de
objetos de proyectos de VBA (2). Entiéndase que la habilitación conlleva a no preguntar sobre las
macros al momento de abrir un archivo de Excel, en el caso de confiar en el modelo de objetos habilite
el uso de los comandos WorkBook, WorkSheets, Cells, Range, etc.
• MODOS DE ACCESO AL VBA
Se cuenta con 2 formas de acceder a VBA, se nombrarán sin orden de prioridad.
1
2
Fig. 2-3
COMBINACIÓN DE
TECLAS
DESCRIPCIÓN
Alt + F11
Esta combinación presenta 2 efectos, el primero es de acceder a VBA si
usted se encuentra en Excel y devolverlo a Excel si se encuentra en el
entorno VBA.
Botón de acceso al entorno VBA.
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 57
• DESCRIPCIÓN DEL EDITOR VBA
El editor VBA tiene una apariencia amigable y muy parecida a Visual Basic, si usted es usuario de Visual
Basic le será familiar muchas de las herramientas que aparecen en este entorno, la única diferencia es
que VBA construye aplicaciones para Office, pero no genera aplicaciones de plataforma ni web ni mucho
menos móviles.
1 Barra de herramientas Estándar
(VerBarra de HerramientasEstándar)
2 Ventana Explorador de Proyectos (CTRL+R)
3 Ventana de Propiedades (F4)
4 Entorno de edición de código y desarrollo
• DESCRIPCIÓN DE LA BARRA DE HERRAMIENTAS ESTÁNDAR
La barra de herramientas estándar ha sido muy usada en las versiones anteriores al Excel 2007, sus
características siguen siendo las mismas.
Fig. 2-4
Fig. 2-5
1
4
2
3
INTRODUCCIÓN AL VISUAL BASIC APLICACIONES (VBA)
CAP. 2
58
A continuación se muestra las principales herramientas que contiene la barra de herramientas estándar,
su descripción y la combinación de teclas con la cual podrá acceder a dichas herramientas:
Para un trabajo más fluido en el código VBA se recomienda también habilitar la barra de herramientas
Edición (VerBarra de HerramientasEdición)
TOOLS DESCRIPCIÓN
COMBINACIÓN DE
TECLAS
Volver al Entorno de Excel ALT+F11
Grabar Macro básico, tener en cuenta que Grabar desde
el editor o Grabar desde Excel es la misma tarea sólo debe
asignar como tipo Libro de Excel habilitado para macros.
CTRL+S
Ejecutar el código VBA F5
Interrumpir, permite detener la ejecución de la macro y poder
continuar al presionar F5.
CTRL+Pause
Restablecer, permite detener y salir del modo de ejecución
de la macro.
Permite mostrar las propiedades de un objeto seleccionado. F4
Permite mostrar las herramientas sólo en el entorno de
desarrollo de un UserForm.
Fig. 2-6
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 59
• EL EXPLORADOR DE PROYECTOS
Desde el explorador de proyectos se puede tener el control de todos los objetos que tiene Excel.
1 En esta sección se tiene el control de visualización de los objetos de Excel.
TOOLS DESCRIPCIÓN
COMBINACIÓN
DE TECLAS
Lista de Propiedades y Métodos, cuando se está
implementando código en VBA es necesario invocar a las
propiedades de un determinado objeto ya que será difícil
aprender todas las propiedades o métodos de todos los
objetos en VBA.
CTRL+J
CTRL+Barra
Espaciadora
Lista de constantes, se presenta una lista de constantes
declaradas dentro del entorno VBA.
CTRL+SHIFT+J
Información rápida, muestra el formato que tiene el objeto
en referencia.
CTRL+I
Sangría derecha-izquierda, permite tabular el código VBA
para poder visualizarlo ordenadamente.
Tab
Shift + Tab
Bloque de comentarios, esto permite añadir el símbolo de
comentario al inicio de la línea de código y no se tomará
en cuenta cuando se realice la depuración de la aplicación.
Toda línea de instrucción de color verde es tomada como
comentario por VBA.
‘Declaración de Variables (Comentario)
Dim N as Integer (Instrucción VBA)
No registrada
Permite visualizar el código fuente VBA.
Permite visualizar el Formulario y sus objetos ocultando
momentáneamente el código fuente.
Permite mostrar y/o ocultar en Jerarquía de Carpetas de los
objetos contenidos en el Proyecto VBA.
Fig. 2-7
1
5
2
3
4
INTRODUCCIÓN AL VISUAL BASIC APLICACIONES (VBA)
CAP. 2
60
2 Visualiza el nombre del documento habilitado para macros (Macros Basicos.xlsm) enmarcado en
el proyecto VBA.
3 Visualiza las hojas del libro activo: Sheets1 (Sheets1) – Hoja1(Hoja1)
ThisWorkBook representa al libro activo.
4 UserForm1 es el formulario.
5 Módulo1: es el objeto que permite crear funciones o procedimientos definidos por el usuario,
cuando usted crea una macro en Excel automáticamente se crea un módulo con el código
autogenerado por VBA.
Agregar un módulo
En el desarrollo de una aplicación se necesitará agregar un Módulo y dentro de él, colocar el código
VBA por medio de Funciones o Procedimientos, además de declarar variables globales. Usted puede
añadir un número indeterminado de Módulos al proyecto. Veamos:
Primera Forma:
 Desde el Menú InsertarMódulo
Segunda Forma:
 Haga clic derecho en el Explorador de Proyectos.
 Seleccione Insertar.
 Seleccione Módulo.
En la ventana de la Fig. 2.8 se puede implementar funciones o procedimientos que serán públicos
dentro de Excel, entienda que si implementa una función (Function), Excel la visualizará dentro de la
lista de funciones y si implementa un procedimiento(Sub) Excel lo podrá visualizar por medio de una
macro.
Cambiar el nombre al módulo
Una vez agregado el módulo al proyecto notará que VBA le asigna el nombre Módulo1 por la tendencia
de los objetos, así es que imagine si inserta 10 Módulos, será complicado saber que contiene cada
módulo, por lo tanto se hace necesario colocar un nombre a cada módulo ya que fueron creados con
una tarea específica.
Fig. 2-8
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 61
Fig. 2-9
Fig. 2-10
Fig. 2-11
Fig. 2-12
Pasos para el cambio de nombre:
 Seleccione el módulo desde el Explorador de Proyectos.
 Cambie la propiedad (Name) desde la ventana Propiedades; por ejemplo, moFunciones que
representa a un módulo de puras funciones.
Eliminar un módulo
Tenga en cuenta que al eliminar un Módulo estará eliminando a todas las funciones o procedimientos
programados en él.
Pasos para la eliminación:
 Presione clic derecho sobre la función desde el Explorador de Proyectos.
 Seleccione Quitar nombreModulo.
 A la ventana siguiente, se sugiere que seleccione la opción No, ya que si lo va a eliminar es porque
no lo necesitará, pero dependerá de usted.
Implementar una función dentro de un módulo
Veamos un caso de implementación de una función dentro del Módulo moFunciones.
Caso. Implemente una función que determine la raíz cúbica de un número N dentro del módulo
moFunciones.
INTRODUCCIÓN AL VISUAL BASIC APLICACIONES (VBA)
CAP. 2
62
Como notará hay varias funciones que se deben explicar en los siguientes capítulos como Round o la
misma función.
Para probar la función debe implementar en Excel una hoja de la siguiente forma:
Agregar un UserForm
Un UserForm es la forma en que el usuario se puede comunicar con
una aplicación VBA, la idea principal es que el programador implemente
lo mejor posible dicho UserForm y sea amigable para el usuario. Existen varias forma de agregar un
UserForm tenemos:
Primera Forma:
 Desde el Menú InsertarUserForm
Segunda Forma:
 Presione clic derecho en el Explorador de Proyectos.
 Seleccione Insertar.
 Seleccione UserForm.
Cambiar el nombre al formulario
Pasos para cambiar de nombre al formulario:
 Seleccione el UserForm desde el Explorador de Proyectos.
 Modifique la propiedad (Name) por un nombre adecuado al UserForm, por ejemplo frmPago.
Eliminar el UserForm
Tenga en cuenta que al eliminar un UserForm también elimina las macros que hacen referencia a dicho
UserForm.
Fig. 2-13
Fig. 2-14
i f d
GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 63
Fig. 2-16
Fig. 2-15
Pasos para la eliminación:
 Presione clic derecho sobre el UserForm desde el Explorador de Proyectos.
 Seleccione Quitar nombreUserForm.
 A la ventana siguiente, se sugiere que seleccione la opción No, ya que si lo va a eliminar es porque
no lo necesitará, pero dependerá de usted.
Ejecutar un UserForm
Ejecutar un UserForm implica pasar al modo de ejecución de una aplicación; por lo tanto, no podrá
realizar ningún cambio en el código mientras se encuentre en este estado. Tenemos las siguientes
formas:
Primera Forma:
 Realice 2 clics en un UserForm del Explorador de Proyectos.
 Presione F5.
Segunda Forma:
 Realice 2 clics en un UserForm del Explorador de Proyectos.
 Presione .
• LA VENTANA DE PROPIEDADES
Cada objeto contenido en el proyecto de VBA tiene propiedades, algunas de ellas parecidas, pero
esto es debido a la teoría de los objetos (consulte el Capítulo 1, el tema de Programación Orientada
a Objetos).
1 En esta sección aparece el nombre del Objeto y la
clase a la que pertenece.
 Nombre del Objeto: frmPago
 Nombre de la Clase: UserForm
2 Lista de propiedades activas por el objeto
seleccionado.
3 Valor asignado a cada propiedad, que puede ser
modificado en tiempo de diseño, la modificación
en esta sección está predeterminada por VBA, la
mayoría de las propiedades ya tienen un valor inicial.
1
2 3
INTRODUCCIÓN AL VISUAL BASIC APLICACIONES (VBA)
CAP. 2
64
• LA VENTANA DE CÓDIGO
La ventana de código no es visible directamente por el entorno VBA, para asignar un código a un
objeto debe dar doble clic sobre el mismo y así logrará acceder a su entorno de código, recuerde
respetar las reglas VBA ya que al pasar a ejecutar la aplicación verificará instrucción por instrucción y
emitirá los errores por medio de mensajes en la pantalla. A continuación se describirá las partes que
componen una ventana de código en VBA.
1 En este cuadro combinado se muestra una relación de objetos contenidos dentro del UserForm.
2 Lista de eventos activos por un objeto seleccionado.
3 VBA forma una estructura de tipo procedimiento con el objeto y el evento seleccionado, se puede
interpretar de la siguiente forma: procedimiento privado del objeto Workbook (Libro de Excel) con
el evento Open, es decir, el código se ejecutará cuando se aperture un libro de Excel.
Vea el siguiente caso: se necesita mostrar la fecha actual por medio de un mensaje, todo esto debe
ocurrir al abrir un libro de Excel.
A continuación se muestra el código fuente del caso:
La función MsgBox mostrará la fecha actual siempre y cuando grabe la aplicación como tipo Libro
de Excel habilitado para Macros. Abra el libro guardado recientemente y observe el mensaje
programado, más adelante se describirá con detalle la forma de envíos de mensaje.
1
3
2
Fig. 2-17
Fig. 2-18
Fig. 2-19
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf
Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf

Más contenido relacionado

La actualidad más candente

Sistemas de protección usados en mt y bt
Sistemas de protección  usados en mt y btSistemas de protección  usados en mt y bt
Sistemas de protección usados en mt y btJesthiger Cohil
 
CIRCUITOS NEUMÁTICOS CON VARIOS CILINDROS- CONTROL POR SEÑALES ...
CIRCUITOS NEUMÁTICOS CON  VARIOS CILINDROS-              CONTROL POR SEÑALES ...CIRCUITOS NEUMÁTICOS CON  VARIOS CILINDROS-              CONTROL POR SEÑALES ...
CIRCUITOS NEUMÁTICOS CON VARIOS CILINDROS- CONTROL POR SEÑALES ...Jovanny Duque
 
SIEMENS - SIMATIC S7-1500 - Controlando un Robot Industrial KUKA.pdf
SIEMENS - SIMATIC S7-1500 - Controlando un Robot Industrial KUKA.pdfSIEMENS - SIMATIC S7-1500 - Controlando un Robot Industrial KUKA.pdf
SIEMENS - SIMATIC S7-1500 - Controlando un Robot Industrial KUKA.pdfEMERSON EDUARDO RODRIGUES
 
Clase 6 - Inst Electr Domiciliarias.pptx
Clase 6 - Inst Electr Domiciliarias.pptxClase 6 - Inst Electr Domiciliarias.pptx
Clase 6 - Inst Electr Domiciliarias.pptxFelipeMoralesGodoy
 
Catalogo general epli-2020
Catalogo general epli-2020Catalogo general epli-2020
Catalogo general epli-2020JhonathanST
 
Aislamiento lineas transmision_energia
Aislamiento lineas transmision_energiaAislamiento lineas transmision_energia
Aislamiento lineas transmision_energiaGilberto Mejía
 
Catalogo fotovoltaica completo_ed1109
Catalogo fotovoltaica completo_ed1109Catalogo fotovoltaica completo_ed1109
Catalogo fotovoltaica completo_ed1109williammesccosaire
 

La actualidad más candente (9)

Sistemas de protección usados en mt y bt
Sistemas de protección  usados en mt y btSistemas de protección  usados en mt y bt
Sistemas de protección usados en mt y bt
 
CIRCUITOS NEUMÁTICOS CON VARIOS CILINDROS- CONTROL POR SEÑALES ...
CIRCUITOS NEUMÁTICOS CON  VARIOS CILINDROS-              CONTROL POR SEÑALES ...CIRCUITOS NEUMÁTICOS CON  VARIOS CILINDROS-              CONTROL POR SEÑALES ...
CIRCUITOS NEUMÁTICOS CON VARIOS CILINDROS- CONTROL POR SEÑALES ...
 
SIEMENS - SIMATIC S7-1500 - Controlando un Robot Industrial KUKA.pdf
SIEMENS - SIMATIC S7-1500 - Controlando un Robot Industrial KUKA.pdfSIEMENS - SIMATIC S7-1500 - Controlando un Robot Industrial KUKA.pdf
SIEMENS - SIMATIC S7-1500 - Controlando un Robot Industrial KUKA.pdf
 
Potencia de los electrodomésticos
Potencia de los electrodomésticosPotencia de los electrodomésticos
Potencia de los electrodomésticos
 
Normas de-iluminacion
Normas de-iluminacionNormas de-iluminacion
Normas de-iluminacion
 
Clase 6 - Inst Electr Domiciliarias.pptx
Clase 6 - Inst Electr Domiciliarias.pptxClase 6 - Inst Electr Domiciliarias.pptx
Clase 6 - Inst Electr Domiciliarias.pptx
 
Catalogo general epli-2020
Catalogo general epli-2020Catalogo general epli-2020
Catalogo general epli-2020
 
Aislamiento lineas transmision_energia
Aislamiento lineas transmision_energiaAislamiento lineas transmision_energia
Aislamiento lineas transmision_energia
 
Catalogo fotovoltaica completo_ed1109
Catalogo fotovoltaica completo_ed1109Catalogo fotovoltaica completo_ed1109
Catalogo fotovoltaica completo_ed1109
 

Similar a Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf

Base de datos de excel (antologia)
Base de datos de excel (antologia)Base de datos de excel (antologia)
Base de datos de excel (antologia)yuriciitha
 
Excel VBA Guía Rápida para principiantes.pdf
Excel VBA Guía Rápida para principiantes.pdfExcel VBA Guía Rápida para principiantes.pdf
Excel VBA Guía Rápida para principiantes.pdfJuanAlvarado203
 
Por qué usar vba en excel 2010
Por qué usar vba en excel 2010Por qué usar vba en excel 2010
Por qué usar vba en excel 2010AleckFong
 
Por qué usar vba en excel 2010
Por qué usar vba en excel 2010Por qué usar vba en excel 2010
Por qué usar vba en excel 2010AleckFong
 
Angel y cielo
Angel y cieloAngel y cielo
Angel y cielotelometo
 
Por qué usar vba en excel 2010
Por qué usar vba en excel 2010Por qué usar vba en excel 2010
Por qué usar vba en excel 2010AleckFong
 
Por qué usar vba en excel 2010
Por qué usar vba en excel 2010Por qué usar vba en excel 2010
Por qué usar vba en excel 2010AleckFong
 
Manual de-macros-excel
Manual de-macros-excel  Manual de-macros-excel
Manual de-macros-excel Esther Gaytán
 
Introduccion a ms excel
Introduccion a ms excelIntroduccion a ms excel
Introduccion a ms excelPaito Moya
 
Actividades de apropiación del conocimiento
Actividades de apropiación del conocimientoActividades de apropiación del conocimiento
Actividades de apropiación del conocimientoAdriana Carvajal
 
TALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx.pdf
TALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx.pdfTALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx.pdf
TALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx.pdfedepisabellafernande
 
TALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx (1).pdf
TALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx (1).pdfTALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx (1).pdf
TALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx (1).pdfAngelineBocanegra
 

Similar a Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf (20)

Macros exce vperez1
Macros exce vperez1Macros exce vperez1
Macros exce vperez1
 
Macros-para-microsoft-excel
Macros-para-microsoft-excelMacros-para-microsoft-excel
Macros-para-microsoft-excel
 
Base de datos de excel (antologia)
Base de datos de excel (antologia)Base de datos de excel (antologia)
Base de datos de excel (antologia)
 
Antología
AntologíaAntología
Antología
 
Excel VBA Guía Rápida para principiantes.pdf
Excel VBA Guía Rápida para principiantes.pdfExcel VBA Guía Rápida para principiantes.pdf
Excel VBA Guía Rápida para principiantes.pdf
 
Por qué usar vba en excel 2010
Por qué usar vba en excel 2010Por qué usar vba en excel 2010
Por qué usar vba en excel 2010
 
Por qué usar vba en excel 2010
Por qué usar vba en excel 2010Por qué usar vba en excel 2010
Por qué usar vba en excel 2010
 
Excel - Macros
Excel - MacrosExcel - Macros
Excel - Macros
 
Angel y cielo
Angel y cieloAngel y cielo
Angel y cielo
 
Por qué usar vba en excel 2010
Por qué usar vba en excel 2010Por qué usar vba en excel 2010
Por qué usar vba en excel 2010
 
Por qué usar vba en excel 2010
Por qué usar vba en excel 2010Por qué usar vba en excel 2010
Por qué usar vba en excel 2010
 
6pasosmacroseficientes.pdf
6pasosmacroseficientes.pdf6pasosmacroseficientes.pdf
6pasosmacroseficientes.pdf
 
Spring framework
Spring frameworkSpring framework
Spring framework
 
Manual de-macros-excel
Manual de-macros-excel  Manual de-macros-excel
Manual de-macros-excel
 
Mi estudio de caso
Mi estudio de casoMi estudio de caso
Mi estudio de caso
 
Introduccion a ms excel
Introduccion a ms excelIntroduccion a ms excel
Introduccion a ms excel
 
Actividades de apropiación del conocimiento
Actividades de apropiación del conocimientoActividades de apropiación del conocimiento
Actividades de apropiación del conocimiento
 
Aplicacion mvc entity_framework_factura
Aplicacion mvc entity_framework_facturaAplicacion mvc entity_framework_factura
Aplicacion mvc entity_framework_factura
 
TALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx.pdf
TALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx.pdfTALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx.pdf
TALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx.pdf
 
TALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx (1).pdf
TALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx (1).pdfTALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx (1).pdf
TALLER DE TECNOLOGIA GRUPO 6, TERCER PERIODO 10-2..docx (1).pdf
 

Último

Arquitectura Moderna Le Corbusier- Mies Van Der Rohe
Arquitectura Moderna Le Corbusier- Mies Van Der RoheArquitectura Moderna Le Corbusier- Mies Van Der Rohe
Arquitectura Moderna Le Corbusier- Mies Van Der Roheimariagsg
 
APORTES Y CARACTERISTICAS DE LAS OBRAS DE CORBUSIER. MIES VAN DER ROHE
APORTES Y CARACTERISTICAS DE LAS OBRAS DE  CORBUSIER. MIES VAN DER ROHEAPORTES Y CARACTERISTICAS DE LAS OBRAS DE  CORBUSIER. MIES VAN DER ROHE
APORTES Y CARACTERISTICAS DE LAS OBRAS DE CORBUSIER. MIES VAN DER ROHEgonzalezdfidelibus
 
2024-EL CAMBIO CLIMATICO Y SUS EFECTOS EN EL PERÚ Y EL MUNDO.pdf
2024-EL CAMBIO CLIMATICO Y SUS EFECTOS EN EL PERÚ Y EL MUNDO.pdf2024-EL CAMBIO CLIMATICO Y SUS EFECTOS EN EL PERÚ Y EL MUNDO.pdf
2024-EL CAMBIO CLIMATICO Y SUS EFECTOS EN EL PERÚ Y EL MUNDO.pdfcnaomi195
 
Normas de convivencia para imprimir gratis
Normas de convivencia para imprimir gratisNormas de convivencia para imprimir gratis
Normas de convivencia para imprimir gratisbrasilyamile
 
Jesus Diaz afiche Manierismo .pdf arquitectura
Jesus Diaz afiche Manierismo .pdf arquitecturaJesus Diaz afiche Manierismo .pdf arquitectura
Jesus Diaz afiche Manierismo .pdf arquitecturajesusgrosales12
 
Le Corbusier y Mies van der Rohe: Aportes a la Arquitectura Moderna
Le Corbusier y Mies van der Rohe: Aportes a la Arquitectura ModernaLe Corbusier y Mies van der Rohe: Aportes a la Arquitectura Moderna
Le Corbusier y Mies van der Rohe: Aportes a la Arquitectura Modernasofpaolpz
 
Geometrías de la imaginación: Diseño e iconografía de Querétaro
Geometrías de la imaginación: Diseño e iconografía de QuerétaroGeometrías de la imaginación: Diseño e iconografía de Querétaro
Geometrías de la imaginación: Diseño e iconografía de QuerétaroJuan Carlos Fonseca Mata
 
CERTIFICACIÓN DE CAPACITACIÓN PARA EL CENSO - tfdxwBRz6f3AP7QU.pdf
CERTIFICACIÓN DE CAPACITACIÓN PARA EL CENSO - tfdxwBRz6f3AP7QU.pdfCERTIFICACIÓN DE CAPACITACIÓN PARA EL CENSO - tfdxwBRz6f3AP7QU.pdf
CERTIFICACIÓN DE CAPACITACIÓN PARA EL CENSO - tfdxwBRz6f3AP7QU.pdfasnsdt
 
Arquitectura Moderna Walter Gropius- Frank Lloyd Wright
Arquitectura Moderna  Walter Gropius- Frank Lloyd WrightArquitectura Moderna  Walter Gropius- Frank Lloyd Wright
Arquitectura Moderna Walter Gropius- Frank Lloyd Wrightimariagsg
 
Slaimen Barakat - SLIDESHARE TAREA 2.pdf
Slaimen Barakat - SLIDESHARE TAREA 2.pdfSlaimen Barakat - SLIDESHARE TAREA 2.pdf
Slaimen Barakat - SLIDESHARE TAREA 2.pdfslaimenbarakat
 
Arquitectura moderna nazareth bermudez PSM
Arquitectura moderna nazareth bermudez PSMArquitectura moderna nazareth bermudez PSM
Arquitectura moderna nazareth bermudez PSMNaza59
 
LAMODERNIDADARQUITECTURABYBARBARAPADILLA.pdf
LAMODERNIDADARQUITECTURABYBARBARAPADILLA.pdfLAMODERNIDADARQUITECTURABYBARBARAPADILLA.pdf
LAMODERNIDADARQUITECTURABYBARBARAPADILLA.pdfBrbara57940
 
TIPOS DE LINEAS utilizados en dibujo técnico mecánico
TIPOS DE LINEAS utilizados en dibujo técnico mecánicoTIPOS DE LINEAS utilizados en dibujo técnico mecánico
TIPOS DE LINEAS utilizados en dibujo técnico mecánicoWilsonChambi4
 
diseño de plantas agroindustriales unidad
diseño de plantas agroindustriales unidaddiseño de plantas agroindustriales unidad
diseño de plantas agroindustriales unidaddabuitragoi
 
Proceso de percepción visual y de reconocimiento
Proceso de percepción visual y de reconocimientoProceso de percepción visual y de reconocimiento
Proceso de percepción visual y de reconocimientoJorge Fernandez
 
PDU - PLAN DE DESARROLLO URBANO DE LA CIUDAD DE CHICLAYO
PDU - PLAN DE DESARROLLO URBANO DE LA CIUDAD DE CHICLAYOPDU - PLAN DE DESARROLLO URBANO DE LA CIUDAD DE CHICLAYO
PDU - PLAN DE DESARROLLO URBANO DE LA CIUDAD DE CHICLAYOManuelBustamante49
 
plantilla-de-messi-1.pdf es muy especial
plantilla-de-messi-1.pdf es muy especialplantilla-de-messi-1.pdf es muy especial
plantilla-de-messi-1.pdf es muy especialAndreaMlaga1
 
Guía de actividades y rúbrica de evaluación - Unidad 3 - Escenario 4 - Rol de...
Guía de actividades y rúbrica de evaluación - Unidad 3 - Escenario 4 - Rol de...Guía de actividades y rúbrica de evaluación - Unidad 3 - Escenario 4 - Rol de...
Guía de actividades y rúbrica de evaluación - Unidad 3 - Escenario 4 - Rol de...MayerlyAscanioNavarr
 
Arquitectura moderna / Nazareth Bermúdez
Arquitectura moderna / Nazareth BermúdezArquitectura moderna / Nazareth Bermúdez
Arquitectura moderna / Nazareth BermúdezNaza59
 
Presentacion de 100 psicologos dijeron.pptx
Presentacion de 100 psicologos dijeron.pptxPresentacion de 100 psicologos dijeron.pptx
Presentacion de 100 psicologos dijeron.pptxbarbaracantuflr
 

Último (20)

Arquitectura Moderna Le Corbusier- Mies Van Der Rohe
Arquitectura Moderna Le Corbusier- Mies Van Der RoheArquitectura Moderna Le Corbusier- Mies Van Der Rohe
Arquitectura Moderna Le Corbusier- Mies Van Der Rohe
 
APORTES Y CARACTERISTICAS DE LAS OBRAS DE CORBUSIER. MIES VAN DER ROHE
APORTES Y CARACTERISTICAS DE LAS OBRAS DE  CORBUSIER. MIES VAN DER ROHEAPORTES Y CARACTERISTICAS DE LAS OBRAS DE  CORBUSIER. MIES VAN DER ROHE
APORTES Y CARACTERISTICAS DE LAS OBRAS DE CORBUSIER. MIES VAN DER ROHE
 
2024-EL CAMBIO CLIMATICO Y SUS EFECTOS EN EL PERÚ Y EL MUNDO.pdf
2024-EL CAMBIO CLIMATICO Y SUS EFECTOS EN EL PERÚ Y EL MUNDO.pdf2024-EL CAMBIO CLIMATICO Y SUS EFECTOS EN EL PERÚ Y EL MUNDO.pdf
2024-EL CAMBIO CLIMATICO Y SUS EFECTOS EN EL PERÚ Y EL MUNDO.pdf
 
Normas de convivencia para imprimir gratis
Normas de convivencia para imprimir gratisNormas de convivencia para imprimir gratis
Normas de convivencia para imprimir gratis
 
Jesus Diaz afiche Manierismo .pdf arquitectura
Jesus Diaz afiche Manierismo .pdf arquitecturaJesus Diaz afiche Manierismo .pdf arquitectura
Jesus Diaz afiche Manierismo .pdf arquitectura
 
Le Corbusier y Mies van der Rohe: Aportes a la Arquitectura Moderna
Le Corbusier y Mies van der Rohe: Aportes a la Arquitectura ModernaLe Corbusier y Mies van der Rohe: Aportes a la Arquitectura Moderna
Le Corbusier y Mies van der Rohe: Aportes a la Arquitectura Moderna
 
Geometrías de la imaginación: Diseño e iconografía de Querétaro
Geometrías de la imaginación: Diseño e iconografía de QuerétaroGeometrías de la imaginación: Diseño e iconografía de Querétaro
Geometrías de la imaginación: Diseño e iconografía de Querétaro
 
CERTIFICACIÓN DE CAPACITACIÓN PARA EL CENSO - tfdxwBRz6f3AP7QU.pdf
CERTIFICACIÓN DE CAPACITACIÓN PARA EL CENSO - tfdxwBRz6f3AP7QU.pdfCERTIFICACIÓN DE CAPACITACIÓN PARA EL CENSO - tfdxwBRz6f3AP7QU.pdf
CERTIFICACIÓN DE CAPACITACIÓN PARA EL CENSO - tfdxwBRz6f3AP7QU.pdf
 
Arquitectura Moderna Walter Gropius- Frank Lloyd Wright
Arquitectura Moderna  Walter Gropius- Frank Lloyd WrightArquitectura Moderna  Walter Gropius- Frank Lloyd Wright
Arquitectura Moderna Walter Gropius- Frank Lloyd Wright
 
Slaimen Barakat - SLIDESHARE TAREA 2.pdf
Slaimen Barakat - SLIDESHARE TAREA 2.pdfSlaimen Barakat - SLIDESHARE TAREA 2.pdf
Slaimen Barakat - SLIDESHARE TAREA 2.pdf
 
Arquitectura moderna nazareth bermudez PSM
Arquitectura moderna nazareth bermudez PSMArquitectura moderna nazareth bermudez PSM
Arquitectura moderna nazareth bermudez PSM
 
LAMODERNIDADARQUITECTURABYBARBARAPADILLA.pdf
LAMODERNIDADARQUITECTURABYBARBARAPADILLA.pdfLAMODERNIDADARQUITECTURABYBARBARAPADILLA.pdf
LAMODERNIDADARQUITECTURABYBARBARAPADILLA.pdf
 
TIPOS DE LINEAS utilizados en dibujo técnico mecánico
TIPOS DE LINEAS utilizados en dibujo técnico mecánicoTIPOS DE LINEAS utilizados en dibujo técnico mecánico
TIPOS DE LINEAS utilizados en dibujo técnico mecánico
 
diseño de plantas agroindustriales unidad
diseño de plantas agroindustriales unidaddiseño de plantas agroindustriales unidad
diseño de plantas agroindustriales unidad
 
Proceso de percepción visual y de reconocimiento
Proceso de percepción visual y de reconocimientoProceso de percepción visual y de reconocimiento
Proceso de percepción visual y de reconocimiento
 
PDU - PLAN DE DESARROLLO URBANO DE LA CIUDAD DE CHICLAYO
PDU - PLAN DE DESARROLLO URBANO DE LA CIUDAD DE CHICLAYOPDU - PLAN DE DESARROLLO URBANO DE LA CIUDAD DE CHICLAYO
PDU - PLAN DE DESARROLLO URBANO DE LA CIUDAD DE CHICLAYO
 
plantilla-de-messi-1.pdf es muy especial
plantilla-de-messi-1.pdf es muy especialplantilla-de-messi-1.pdf es muy especial
plantilla-de-messi-1.pdf es muy especial
 
Guía de actividades y rúbrica de evaluación - Unidad 3 - Escenario 4 - Rol de...
Guía de actividades y rúbrica de evaluación - Unidad 3 - Escenario 4 - Rol de...Guía de actividades y rúbrica de evaluación - Unidad 3 - Escenario 4 - Rol de...
Guía de actividades y rúbrica de evaluación - Unidad 3 - Escenario 4 - Rol de...
 
Arquitectura moderna / Nazareth Bermúdez
Arquitectura moderna / Nazareth BermúdezArquitectura moderna / Nazareth Bermúdez
Arquitectura moderna / Nazareth Bermúdez
 
Presentacion de 100 psicologos dijeron.pptx
Presentacion de 100 psicologos dijeron.pptxPresentacion de 100 psicologos dijeron.pptx
Presentacion de 100 psicologos dijeron.pptx
 

Programación VBA con Excel - Manuel Ángel Torres Remon-FREELIBROS.ME.pdf

  • 1.
  • 3. PROGRAMACIÓN VBA CON EXCEL Autor: Manuel Ángel Torres Remon © Derecho de autor reservado Empresa Editora Macro E.I.R.L. © Derecho de edición, arte gráfico y diagramación reservados Empresa Editora Macro E.I.R.L. Edición a cargo de: Empresa Editora Macro E.I.R.L. Av. Paseo de la República 5613 – Miraflores Lima - Perú (511) 719-9700 ventas@editorialmacro.com http://www.editorialmacro.com Primera edición: Mayo 2012 - 1000 ejemplares Impreso en los Talleres Gráficos de Empresa Editora Macro E.I.R.L. Lima - Perú ISBN Nº 978-612-304-064-2 Hecho el Depósito Legal en la Biblioteca Nacional del Perú Nº 2012-06469 Prohibida la reproducción parcial o total, por cualquier medio o método de este libro sin previa autorización de la Empresa Editora Macro E.I.R.L.  
  • 4. MANUEL ÁNGEL TORRES REMON Manuel Ángel TORRES REMON es Licenciado en Informática de la Universidad Alas Peruanas (Lima- Perú), actualmente docente de Tecnología del Instituto de Educación Superior CIBERTEC; imparte cursos de programación en los ciclos III y IV de la carrera profesional de Computación e Informática. Se inicio en la docencia en el año 2000 dictando el curso de Técnicas de Programación y Estructura de Datos a estudiantes del III ciclo de la carrera profesional de Computación e Informática del Instituto de Educación Superior Manuel Arévalo Cáceres en donde también fue estudiante y egreso en el año 1996 donde todavía se programaba en C++ y Pascal. También dicta cursos de programación en el centro de computo UNIMASTER de la Universidad Nacional de Ingeniería como Programador Java, Programador Net, Programador PHP y Programación VBA con Excel. En la actualidad se ha capacitado en cursos de programación Net con Visual Studio 2010 dictando los Fundamentos de la Programación en Net, Conexión a Base de Datos con ADO NET y la Programación Orientada a Objetos con NET aplicando en esta última parte las N-Capas de la Programación. Los cursos que actualmente dicta son: Programación Orientada a Objetos II con Net 2010, Base de Datos Avanzado I con Transact SQL Server 2008 r2, Programación VBA con Excel 2010, Análisis y Diseño de Sistemas I-II con UML y Rational Architect Software.
  • 5.
  • 6. Dedicatoria Este libro está dedicado a mis pequeñas Ángela y Fernanda por darme las fuerzas necesarias para seguir adelante y mucho más a mi esposa Luz por comprenderme en todo lo que me propongo. Agradecimientos Quiero agradecer la oportunidad que me está brindando la editorial Macro de exponer un trabajo que lo tenía pensado hace mucho, pero por la falta de tiempo no se podía concretar y también un porcentaje se lo debo a los valiosos aportes de los estudiantesquecompartieronconmigolassesiones de VBA para Excel impartidos en Unimaster de la Universidad Nacional de Ingeniería, en el IEST Manuel Arévalo Cáceres y a Cibertec, ya que gracias a sus experiencias pude desarrollar casos que se expondrán en este material. Me olvidaba mencionar a mi gran amigo Paul Paredes que por intermedio de su persona conocí a la gran familia Macro, gracias por el apoyo desinteresado que siempre demuestras Paul.
  • 7.
  • 8. Introducción Hoy en día los usuarios de aplicaciones de oficina han evolucionado sus conocimientos sobre estas herramientas, tanto así que tienen la necesidad de crear aplicaciones para el desarrollo de sus funciones que faciliten y ahorren tiempo en el proceso, para esto existe la herramienta de desarrollo de Office como es VBA, la cual les ayudará a plasmar todo lo planeado en aplicaciones mucho más interactivas con el usuario; al principio resultará un poco complicado entender el lenguaje pero conforme avance los capítulos comprenderá que no es tan complejo el desarrollo en VBA sino al contrario nos incentiva a crear nuevas formas de presentar un proceso en poco tiempo y de fácil uso para el usuario. Cada vez hay más usuarios interesados en conocer qué es lo que ofrece VBA, pues la respuesta la tiene en este material, el cual le mostrará con casos prácticos el uso adecuado que le puede dar al VBA y el enorme tiempo que ahorrará en ejecutar procesos; la ventaja de la programación VBA es que evita el uso de fórmulas extensas, como las que puede aplicar en Excel, y resumirlas en códigos preparados por usted mismo con VBA, empezará a notar un cambio conforme avancen los capítulos del libro y sugiero no dejar de practicar los ejercicios propuestos de este material. Con el libro de Programación VBA con Excel aprenderá el manejo integral de Visual Basic para Aplicaciones (VBA) y su empleo dentro de Excel. Así logrará conocer el lenguaje de programación, crear nuevas funcionesdecálculo,controlarlosobjetosdeExcelpormediodeprogramación,implementaraplicaciones comerciales y ampliar enormemente la funcionalidad que ofrece Excel a sus usuarios. Asimismo, contará con la posibilidad de editar profesionalmente las macros que se genere en las aplicaciones. Programación VBA con Excel está dirigido a usuarios intermedios y/o avanzados de Excel que aún no son programadores, este material pretende explicar el inicio de la programación hasta el control de una base de datos con Access proponiendo casos prácticos y su respectiva evaluación en cada capítulo.
  • 9.
  • 10. Índice Capítulo 1 Introducción ......................................................................................................................................17 Introducción.......................................................................................................................................19 ¿Qué es un programa?.......................................................................................................................20 ¿Qué son los Lenguajes de Programación?........................................................................................21 Introducción a la Programación Orientada a Objetos........................................................................22 Clase............................................................................................................................................22 Objeto .........................................................................................................................................22 Propiedad....................................................................................................................................23 Evento .........................................................................................................................................24 ¿El Office y su relación con VBA? .......................................................................................................24 ¿Por qué debemos aprender VBA? ....................................................................................................24 Automatización y repetición .......................................................................................................24 Mayor interacción con el usuario................................................................................................25 Interacción entre aplicaciones de Office .....................................................................................25 ¿Cuál es el futuro de VBA?.................................................................................................................25 Herramientas para Office de Microsoft Visual Studio........................................................................25 Convenciones del libro.......................................................................................................................26 Listado de comandos de Excel en inglés y español ............................................................................27 Evaluación de la capacidad ................................................................................................................49 Capítulo 2 Introducción al Visual Basic Aplicaciones (VBA)...............................................................................51 Lenguaje Basic....................................................................................................................................53 Fundamentos de Visual Basic Aplicaciones para Excel.......................................................................53 La ficha Programador de Excel 2010 ..................................................................................................54 Configurar la seguridad de Macros en un libro de Excel....................................................................56 Modos de acceso al VBA....................................................................................................................56 Descripción del editor VBA ................................................................................................................57 Descripción de la barra de herramientas Estándar.....................................................................57 El Explorador de Proyectos..........................................................................................................59
  • 11. La Ventana de Propiedades........................................................................................................63 La Ventana de Código ................................................................................................................64 Personalizar del entorno VBA.............................................................................................................65 Asignar derechos sobre el proyecto VBA....................................................................................65 Asignar una clave al código VBA................................................................................................66 Activar el requerimiento de declaración obligatoria de variables .............................................67 Aplicar formato al editor de código VBA....................................................................................67 El objeto ThisWorkBook.....................................................................................................................68 El objeto WorkSheets.........................................................................................................................69 Evaluación de la capacidad ................................................................................................................72 Capítulo 3 La Macro ............................................................................................................................................73 La Grabadora de Macros....................................................................................................................75 Implementación de una Macro..........................................................................................................78 Ejecutar una Macro............................................................................................................................81 Administrar una Macro (crear, modificar y eliminar).........................................................................81 Asignar una Macro a un control de formulario, activeX, imagen o forma .........................................83 Caso desarrollado 1: Encabezado de Informe....................................................................................85 Caso desarrollado 2: Navegador Web................................................................................................88 Evaluación de la capacidad ................................................................................................................92 Capítulo 4 El Modelo de Objetos........................................................................................................................93 Introducción al modelo de objetos ....................................................................................................95 Clase Application................................................................................................................................95 ActiveCell ...................................................................................................................................96 ActiveSheets...............................................................................................................................96 ActiveWindow............................................................................................................................97 Selection.....................................................................................................................................98 Caso Desarrollado 1: Datos del Sistema.............................................................................................99 Clase Range........................................................................................................................................101
  • 12. Métodos del objeto Range..........................................................................................................101 Propiedades del objeto Range ....................................................................................................103 Método Offset....................................................................................................................................104 Caso Desarrollado 2: Búsqueda de Documentos ...............................................................................105 Evaluación de la capacidad ................................................................................................................106 Capítulo 5 Fundamentos de Programación........................................................................................................107 Introducción a la Programación con VBA...........................................................................................109 Comentarios.......................................................................................................................................109 Concatenación ...................................................................................................................................110 Operadores usados en VBA................................................................................................................111 Las variables y su declaración en VBA................................................................................................113 Tipos de datos y su operador de referencia.......................................................................................114 Las Constantes ...................................................................................................................................116 Expresiones algorítmicas vs algebraicas.............................................................................................116 Asignación de valores.........................................................................................................................117 Estructura secuencial .........................................................................................................................117 Caso Desarrollado 1: Sueldo de Trabajadores....................................................................................118 Caso desarrollado 2: Ejercicios Secuenciales .....................................................................................120 Casos Propuestos ...............................................................................................................................124 Evaluación de la capacidad ................................................................................................................126 Capítulo 6 Funciones y Procedimientos .............................................................................................................127 Funciones -Introducción a las funciones............................................................................................129 Funciones para cadenas de caracteres...............................................................................................129 Caso desarrollado 1: Funciones de Texto...........................................................................................133 Funciones Numéricas.........................................................................................................................134 Caso desarrollado 2: Números Aleatorios..........................................................................................136 Funciones de fecha ............................................................................................................................138 Caso desarrollado 3: Funciones de Fechas.........................................................................................141
  • 13. Caso desarrollado 4: Cálculo de Edad ................................................................................................142 Caso desarrollado 5: Venta al Crédito................................................................................................142 Caso desarrollado 6: Cálculo de Días .................................................................................................143 Funciones de conversión de tipo........................................................................................................145 Funciones de comprobación de valor ................................................................................................147 Funciones definidas por el usuario ....................................................................................................149 Estructura de una función...........................................................................................................149 Ámbito de una función................................................................................................................150 Tipo de dato de retorno ..............................................................................................................151 Llamada a una función................................................................................................................152 Parámetros de una función.........................................................................................................152 Crear funciones definidas por el usuario.....................................................................................153 Opciones de las funciones...........................................................................................................155 Procedimientos ..................................................................................................................................156 Estructura de procedimiento.......................................................................................................156 Llamada a un procedimiento ......................................................................................................158 Parámetros de un procedimiento................................................................................................158 Casos propuestos...............................................................................................................................158 Evaluación de la capacidad ................................................................................................................160 Capítulo 7 Gestión de Errores.............................................................................................................................161 Gestión de Errores..............................................................................................................................163 Introducción a los errores en VBA......................................................................................................163 Control básico de errores con On Error Goto.....................................................................................164 La Clase Err.........................................................................................................................................165 Listado de Errores reconocidos por VBA............................................................................................166 Caso Desarrollado 1: Venta de Repuestos..........................................................................................166 Caso Desarrollado 2: División de Números........................................................................................168 Casos Propuestos ...............................................................................................................................169 Evaluación de la capacidad ................................................................................................................170
  • 14. Capítulo 8 Estructura Condicional ......................................................................................................................171 Estructura Condicional - Introducción................................................................................................173 Estructura de selección simple If…Then.............................................................................................173 Operadores Lógicos y Relacionales ....................................................................................................174 Caso Desarrollado 1: Venta de Productos..........................................................................................175 Estructura de selección doble If…Then…Else.....................................................................................178 Estructura de selección doblemente encadenada If…Then…ElseIf....................................................179 Caso Desarrollado 2: Salario de Trabajadores....................................................................................180 Casos Propuestos ...............................................................................................................................183 La Clase Option Button ......................................................................................................................185 La Clase CheckBox..............................................................................................................................186 Caso desarrollado 3: Agenda Básica...................................................................................................188 La Clase ComboBox ...........................................................................................................................192 La Clase ListBox .................................................................................................................................193 Caso desarrollado 4: Selección de Países...........................................................................................194 Caso desarrollado 5: Ciudad-País.......................................................................................................195 Estructura de selección múltiple Select-Case.....................................................................................197 Caso Desarrollado 6: Registro de Software........................................................................................198 Caso Desarrollado 7: Registro de Pasajeros .......................................................................................200 Instrucción With.................................................................................................................................204 Validaciones .......................................................................................................................................205 Caso desarrollado 8: Tienda Comercial..............................................................................................207 Caso Propuesto ..................................................................................................................................217 Capítulo 9 Estructura Repetitiva.........................................................................................................................219 Introducción.......................................................................................................................................221 Contadores.........................................................................................................................................222 Acumuladores ....................................................................................................................................222 Caso Desarrollado 1: Control de Peaje...............................................................................................223 Sentencia For…Next, usos..................................................................................................................230 Caso desarrollado 2: Tabla de Multiplicar..........................................................................................231
  • 15. Caso desarrollado 3: Series Numéricas..............................................................................................235 Anidamiento de For ...........................................................................................................................239 Caso desarrollado 4: Pirámide de Números.......................................................................................239 Casos propuestos...............................................................................................................................241 Estructura while .................................................................................................................................242 Caso desarrollado 5: Tienda Comercial de Electrodomésticos...........................................................243 Caso desarrollado 6: Consulta de Datos.............................................................................................248 Caso Desarrollado 7: Filtrado de Alumnos.........................................................................................250 Capítulo 10 Los Formularios .................................................................................................................................253 Manejo de Formularios......................................................................................................................255 Manejo de cajas de entrada (InputBox).............................................................................................255 Caso desarrollado 1: Conversiones ....................................................................................................256 Cuadros de Mensaje (MsgBox)...........................................................................................................259 Tiempos en la programación..............................................................................................................263 Nomenclatura de nombres a objetos.................................................................................................265 Agregar un UserForm al proyecto......................................................................................................266 La Clase UserForm..............................................................................................................................266 La Clase Label ...................................................................................................................................269 La Clase TextBox ...............................................................................................................................271 La Clase Command Button ..............................................................................................................274 Los Eventos.........................................................................................................................................275 Ventana de Código.............................................................................................................................277 Caso desarrollado 2: Venta de Productos ..........................................................................................278 Caso propuesto ..................................................................................................................................284
  • 16. Capítulo 11 Base de datos con VBA y Access .......................................................................................................285 Base de datos.....................................................................................................................................287 Objetivos de los Sistema de base de datos ........................................................................................287 Representación de la Información .....................................................................................................288 Caso Desarrollado 1: Delivery ............................................................................................................292 Caso Propuesto ..................................................................................................................................293 Recuperación de Datos: Instrucción Select........................................................................................293 Consultas............................................................................................................................................294 Manejo de INNER JOIN.......................................................................................................................298 Conexión a Base de Datos con Access y VBA .....................................................................................299 Conexión ADO....................................................................................................................................301 Conectando a una base de datos Access ...........................................................................................303
  • 17.
  • 18. 1 1 1 CAPÍTULO INTRODUCCIÓN  Introducción  ¿Qué es un programa?  ¿Qué son los Lenguajes de Programación?  Introducción a la Programación Orientada a Objetos – Clase – Objeto – Propiedades – Eventos  ¿El Office y su relación con VBA?  ¿Por qué debemos aprender VBA? – Automatización y repetición – Mayor interacción con el usuario – Interacción entre aplicaciones de Office  ¿Cuál es el futuro de VBA?  Herramientas para Office de Microsoft Visual Studio  Convenciones del libro  Listado de comandos de Excel en inglés y español  Evaluación de la capacidad CAPACIDAD DEL CAPÍTULO  Reconoce conceptos básicos de programación.  Identifica la diferencia entre un objeto y una clase.  Reconoce los comandos de Excel en inglés.
  • 19.
  • 20. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 19 • INTRODUCCIÓN Partiendo desde que un usuario hace uso de una computadora personal, debemos considerar los diferentes roles que se asumen frente a esta, es decir, los roles que ejecutamos al manipular una computadora; usted conocerá que existen los administradores de base de datos que tienen por misión gestionar y administrar una basededatos,comosurolloindica,luegoestánlosprogramadores o desarrolladores que tienen por misión implementar códigos fuentes y crear aplicaciones en todos los entornos ya sea web, plataforma o móvil y finalmente los operadores de aplicaciones. El término operador hace referencia a un rol de sólo uso de los programas aplicativos que puede implementar un programador, este no tiene por qué manipular el código ya que no sería un rol adecuado para un operador. VBA está diseñado justamente para aquellos usuarios emprendedores, que necesitan ir más allá de sólo operar la aplicación, es decir, ya conocen toda las actividades de proceso de la aplicación y ahora necesitan reducir tiempos a la hora de aplicarlos y la única forma es por medio de códigos. A partir de un estudio de fundamentos de programación como es este libro, podrá desarrollar aplicaciones pequeñas pero de gran calidad para Excel dentro del entorno VBA manipulando el código del lenguaje Basic. Visual Basic para aplicaciones (VBA) está dirigido a usuarios operadores que quieren entrar al mundo de la programación, no se necesita tener conocimientos de programación ya que este material tiene por objetivo dar los conocimientos necesarios para crear, manipular y administrar el código desde el fundamento de la programación hasta la conexión a la base de datos con Access. La idea principal del uso de VBA en Excel es agilizar las tareas que se realizan en forma repetitiva o de aquellas fórmulas extensas que alguna vez usó en Excel, VBA resume dichas tareas en porciones pequeñas de códigos que son manipulados como Macros de Excel. Conocer VBA implica facilitar su trabajo en Excel y le brinda la posibilidad de realizar tareas más ágiles; que antes de conocer VBA eran un poco engorrosas, no hay que dejar de lado la tarea importante que se realiza en Excel, VBA lo resume ahorrando tiempo e inclusive realiza tareas no posibles desde Excel, le pregunto ¿Será necesario conocer el lenguaje que propone VBA? No obstante, VBA no es útil sólo para tareas repetitivas. También puede usar VBA para crear nuevas funcionalidades en Excel (por ejemplo, puede desarrollar nuevos algoritmos para analizar datos, manipular grandes cantidades de registros, ahorrar tiempo en la toma de decisiones) y realizar tareas que integren Excel con otras aplicaciones de Office, como Microsoft Access 2010. Es muy cierto que de todas las aplicaciones de Office, Excel es la más usada. Este libro no pretende enseñar los comandos de Excel sino más bien prepararlo para desarrollar aplicaciones de alta calidad y en el futuro ser programador en Excel. A pesar de todas las buenas razones para usar VBA en Excel 2010, es importante recordar que la mejor solución de un problema posiblemente no se relacione con VBA en absoluto. Excel tiene una gran variedad de características sin VBA y es posible que hasta un usuario avanzado no esté familiarizado con todas ellas. Antes de acudir a una solución de VBA, realice una búsqueda exhaustiva en Ayuda y Recursos en Línea para asegurarse de que no existe una manera más simple.
  • 21. INTRODUCCIÓN CAP. 1 20 • ¿QUÉ ES UN PROGRAMA? Si usted es usuario de las aplicaciones de Office como Word, Power Point o el mismo Excel entonces usted ha usado un programa, estos y muchos programas tienen por misión facilitar el trabajo del usuario y realizar procesos mucho más rápidos e intuitivos esa es la característica de los programas; es así como existen programas para reproducir música, video o acceder a internet. Todos los programas han sido diseñados pensando en el usuario final, por tanto; el desarrollo de programas que usted realice con VBA para Excel tendrá que tener el mismo objetivo, es decir, estará diseñado para agilizar las tareas que antes con Excel resultaban un poco largas aplicarlas, un caso real es la función SI de Excel que sólo tiene 8 niveles de comparación, VBA para Excel lo supera con la Estructura Selectiva If que no tiene límite de comparaciones y así se encontrarán muchas más comparaciones conforme avance en VBA. Entonces a la pregunta de ¿Qué es un programa? La respuesta sería la siguiente: representa un conjunto de instrucciones que tiene por objetivo dar un resultado de calidad siguiendo un patrón de reglas propias del lenguaje. También es conocido como Programa Fuente o Código Fuente y cuando se encuentra en marcha se le conoce como ejecución del programa y cuando está en ese estado sólo se muestran resultados; claro está los resultados esperados por el usuario. Public Function Celsius(ByVal Fahrenheit) Celsius = Round((Fahrenheit - 32) * 5 / 9, 2) End Function En la Fig. 1.1 se muestra una porción de código fuente que tiene por misión calcular el valor de Celsius a partir de un valor en Farenheit. ¿QUÉ ES UN PROGRAMA DE APLICACIÓN? Es un tipo de programa diseñado para usuarios que no necesitan tener conocimientos de programación. Estos programas resultan ser bastante cómodos por lo sencillo y rápido de sus comandos, específicamente está diseñado para tareas inmediatas. Tenemos: ¿QUÉ SON LOS SISTEMAS OPERATIVOS? Es un tipo de programa que permite tener en funcionamiento una computadora, todos los programas de aplicación tienen como plataforma de trabajo un sistema operativo. Tenemos: ¿QUÉ ES UN LENGUAJE DE PROGRAMACIÓN? Es un tipo de programa que desarrolla programas de aplicación, ahora entienda la idea principal de VBA es crear aplicaciones para agilizar las tareas que se realiza en un programa de aplicación. Tenemos: Fig. 1-1
  • 22. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 21 • ¿QUÉ SON LOS LENGUAJES DE PROGRAMACIÓN? VBA debe ser escrito en un lenguaje de programación que sea entendible por la computadora, así tenemos el caso en que se quiere mostrar un mensaje desde VBA a Excel; entonces, el lenguaje interpreta el comando de envío de mensajes y lo ejecuta, esto quiere decir que cada instrucción colocada en VBA debe ser interpretada por un lenguaje; en VBA el lenguaje es BASIC por eso usted encontrará mucha similitud entre las instrucciones Visual Basic y VBA. Vea el siguiente ejemplo, para poder mostrar un mensaje desde VBA se debe colocar el comando Msgbox, pero como nota en la Fig. 1.2 se debe respetar cierto patrón del comando; por ejemplo, colocarlo en comillas, a lo largo de este libro comprenderá muchos de esos patrones. Para que se pueda generar la ventana de saludo, la computadora debe entender la instrucción, esto es un trabajo interno de VBA gracias a su soporte del lenguaje Basic es que interpreta, traduce y ejecuta las instrucciones de un código fuente. En la Fig. 1.4 se muestra el ciclo de elaboración de un programa típico, todo empieza con un programa fuente que es donde reside el código VBA, hay que tener en cuenta que un programa fuente se basa en reglas propias del lenguaje, el intérprete verifica justamente esas instrucciones y las traduce para que la computadora las pueda entender, aquí ocurre 2 cuestiones: si el programa está correcto se mostrará la aplicación en tiempo de ejecución, caso contrario se mostrará un mensaje de error como el que sigue: Fig. 1-2 Fig. 1-3 Fig. 1-4 Fig. 1-5 
  • 23. INTRODUCCIÓN CAP. 1 22 Luego VBA lo devuelve al código fuente para que usted pueda corregir los errores y volver a empezar el ciclo de elaboración de un programa. Ojo no necesariamente un programa se encuentra correcto cuando pasa esta etapa ya que también existen diferentes tipos de errores como los de lógica. "Un programa puede ejecutarse correctamente pero no necesariamente devuelve la respuesta adecuada". • INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Excel, como muchas otras aplicaciones, ha sido diseñado basándose en la teoría de los objetos. La programación orientada a objetos o también llamada POO es un paradigma de la programación, el cual usa objetos y sus interacciones, con el objetivo de implementar aplicaciones y programas de alta calidad. Hay algunos conceptos que debe considerar antes de comenzar con el VBA ya que varios de los procesos que realizará en VBA están basados en objetos, como por ejemplo, asignar propiedades a los UserForm o simplemente implementar un código fuente. • CLASE Son las plantillas para hacer objetos. En una clase se define los comportamientos y propiedades que poseerán los objetos, esto quiere decir que cada vez que use un objeto estará usando una copia de la clase, esto explica muchas cosas en Excel por ejemplo Hoja1, Hoja2, Hoja3 son objetos de la clase WorkSheets de Excel. • OBJETO Un objeto es una instancia (copia) de la clase de la cual hereda todos los atributos y métodos que la clase contiene con el fin de interactuar con el exterior. Ahora pongamos un ejemplo real, cuando usted tiene un simple lápiz como objeto ¿Cuáles son las características que nota? ¿Qué puede realizar con el lápiz? ¿QUÉ FUNCIÓN TIENEN LOS INTÉRPRETES EN LA PROGRAMACIÓN? Un intérprete efectúa la traducción y ejecución simultánea de cada una de las instrucciones del código fuente realizado VBA, es decir, es el encargado de revisar línea por línea y traducirlo en un código entendible por la computadora. Fig. 1-6
  • 24. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 23 Como notará las características de un simple lápiz es universal ya que todo lápiz cumple con la función de escribir y todos tienen un color por ejemplo. Ahora para poder diferenciar las características de lo que puede realizar es muy sencillo, las acciones a realizar normalmente son verbos mientras que las características no. Ahora vea con un ejemplo tipo VBA, tenemos un UserForm o formulario, el cual también se le denomina objeto, y por lo tanto tiene características que ahora se llamarán propiedades y tiene acciones que realizar a lo que se llamará eventos. Se definen las propiedades y eventos de un UserForm: • PROPIEDAD Son las características que tiene un objeto seleccionado, cada objeto en VBA tiene sus propiedades bien definidas,las cuales pueden ser modificadas por el programador con la idea de personalizar el objeto. En la Fig. 1.8 se muestra la lista de propiedades del objeto UserForm, debe tener en cuenta que las propiedades varían en un porcentaje no determinado entre un objeto u otro, es decir, hay propiedades comunes y propiedades propiamente del objeto. Fig. 1-7 LISTA DE CARACTERÍSTICAS LISTA DE ACCIONES QUE PUEDE REALIZAR  Alto  Diámetro  Color  Marca  Escribir  Sobrescribir  Garabatear PROPIEDADES EVENTOS  Nombre del formulario  Alto en pixeles  Ancho en pixeles  Color de fondo  Activado  Cerrado  Cliqueado Fig. 1-8
  • 25. INTRODUCCIÓN CAP. 1 24 • EVENTO Es un suceso que podría tener un objeto (tal como una interacción del usuario con la máquina o un mensaje enviado por un objeto). El sistema maneja el evento enviando el mensaje adecuado al objeto pertinente. También se puede definir como evento a la reacción que puede desencadenar un objeto, es decir, la acción que genera. En la Fig. 1.9 se muestra la lista de eventos de un determinado objeto, como sucedió con las propiedades, los eventos también son parcialmente similares entre los objetos pero hay eventos propiamente de un tipo de objeto, por ejemplo, la propiedad PaswordChar es exclusivo del objeto TextBox. • ¿EL OFFICE Y SU RELACIÓN CON VBA? ¿Desea limpiar 1000 filas en Excel? ¿Desea crear un informe por cada cliente que compró productos en su tienda y al final imprimir el monto total vendido? ¿Quiere exportar los registros de su tabla en Word a Excel? Usted puede realizar estas y muchas tareas haciendo uso del código VBA para Office, hay que tener en cuenta que algunos software de ingeniería también necesitan lo mismo y están incorporando VBA con la misma idea que se tenía con Office. Supongo que usted pensará que las interrogantes planteadas anteriormente se pueden resolver usando Excel y está en lo cierto, pero tenga en cuenta el tiempo usado en cada interrogante e imagínese hacerlo a varios archivos de Excel en diferentes tiempos se volvería engorroso estar haciendo repetidamente una acción que ya antes había aplicado, VBA suple las tareas cotidianas por macros de acceso sencillo. • ¿POR QUÉ DEBEMOS APRENDER VBA? Se puede nombrar 3 razones: • AUTOMATIZACIÓN Y REPETICIÓN VBA es efectivo y eficaz a la hora de implementar soluciones repetitivas ante problemas de corrección o formato. Fig. 1-9
  • 26. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 25 • MAYOR INTERACCIÓN CON EL USUARIO VBA ofrece mecanismos para poder interactuar con el usuario y ofrecer una experiencia sencilla y profesional a la vez. Por ejemplo, si se tiene un archivo de Excel importante para una empresa la forma de protegerlo es asignarle una contraseña de apertura del archivo, pero es bien conocido que existen aplicaciones que rompen dicha contraseña, en VBA se puede preparar un formulario de logeo donde los usuarios se encuentren registrados en una base de datos alojada en el servidor por ejemplo Access o SQL Server. • INTERACCIÓN ENTRE APLICACIONES DE OFFICE En la actualidad VBA está tomando muchos seguidores por la facilidad de uso y por la forma en que interactúa con las demás aplicaciones de Office, y como lo comenté anteriormente, por interactuar con aplicaciones de ingeniería. • ¿CUÁL ES EL FUTURO DE VBA? El siguiente paso natural en la evolución de VBA es dejar de ser un subconjunto de Visual Basic y pasar a ser una plataforma .NET. Microsoft no planea hacer mejoras significativas a VBA en el futuro, aunque continuará dando soporte a las licencias de VBA que se han ido ofreciendo, VBA está siendo sustituido por las Herramientas para Aplicaciones de Microsoft Visual Studio (VSTA: Visual Studio Tools for Applications) y las Herramientas para Office de Microsoft Visual Studio (VSTO: Visual Studio Tools for Office). Estas herramientas funcionan bajo la plataforma .NET. En la Fig. 1.10 se muestra el logo oficial del VSTO, sugiero que como herramienta que desplazará al VBA comience a investigar el tema, aquí sólo se han mencionado referencias globales del VSTO ya que no es tema de este libro. • HERRAMIENTAS PARA OFFICE DE MICROSOFT VISUAL STUDIO El VSTO no es VBA, es una plataforma integrada para el desarrollo de aplicaciones dentro del entorno Office con dos lenguajes el Basic y C, la diferencia con la plataforma Net es que en vez de aparecer un Windows Form en VSTO aparece una hoja de Excel o un documento de Word para implementarle código personalizado. Microsoft en su página oficial habla sobre el tema de VSTO de la siguiente manera: “Visual Studio Tools para Office puede ayudarle a aprovechar las mejoras de productividad de Microsoft .NET Framework Version 2.0 para extender las aplicaciones de Microsoft Office 2003 y Microsoft Office System 2007 mediante Visual Basic y Visual C#. Las herramientas incluyen nuevos proyectos de Visual Studio que le ayudan a empezar con la creación de soluciones de Microsoft Office.” Ahora hay dos ediciones de Visual Studio Tools para Office:  Microsoft Visual Studio 2005 Tools para Microsoft Office System (VSTO 2005)  Microsoft Visual Studio 2005 Tools para Microsoft Office System 2007 (VSTO 2005 SE) Estas dos ediciones proporcionan muchas características nuevas que ayudan a crear soluciones administradas que utilizan Microsoft Office 2003 y Microsoft Office System 2007. Fig. 1-10
  • 27. INTRODUCCIÓN CAP. 1 26 • CONVENCIONES DEL LIBRO Con la idea de sacar el máximo provecho y lograr una mejor comunicación entre el lector y el libro, es que se explicarán algunas convenciones usadas en este material.  En este libro encontrará muchos códigos VBA incrustados en el tema, para esto se usará la fuente Consolas al hacer referencia a una instrucción VBA como por ejemplo: Dim N%: N=10  Si se toma en cuenta que a partir de Office 2007 ya no existen los menús de opciones en este libro se considerarán las referencias a las opciones de la siguiente manera, por ejemplo, si se quiere acceder a la herramienta Visual Basic de la ficha programador entonces se mencionará de la siguiente manera: Ficha Programador  Visual Basic (fuente: Tahoma). A continuación se verá una comparación de la evolución de las barras entre Excel 2003 y 2010. En la Fig. 1.11 se muestra la barra de herramientas de la versión Office 2003, podía resultar un poco incómodo para el trabajo en Excel pero uno se acostumbra a los cambios, como sucedió con la versión 2007 y 2010. En la Fig. 1.12 se muestra la versión mejorada de la barra; en este material se llamarán Fichas o Pestañas. Una de las particularidades de las fichas es que presionando la tecla ALT le aparecen los métodos abreviados para acceder a un elemento determinado.  El editor de VBA tiene un aspecto Visual Basic 6 y aquí sí encontrará la barra de menús, suponga que necesita acceder a Referencias del Menú Herramientas del entorno VBA, entonces lo mencionará de la siguiente manera: Herramientas  Referencias (fuente: Tahoma).  Las notas importantes e interrogantes del tema serán colocadas en el siguiente formato: Fig. 1-11 Fig. 1-12 ¿QUÉ ES UN LENGUAJE DE PROGRAMACIÓN DE ALTO NIVEL? Un lenguaje de programación de alto nivel se caracteriza por expresar un algoritmo de una manera más cercana a la capacidad cognitiva humana, es decir, a un lenguaje simple pero en nuestro quehacer lo encontraremos en inglés que no es tan complicado, en lugar de la capacidad ejecutora de las máquinas. Por esta razón, a finales de los años 50 surgió un nuevo tipo de lenguaje de programación que evitaba inconvenientes, a costa de ceder un poco en las ventajas. Estos lenguajes se llaman lenguajes de programación de tercera generación o de alto nivel, en contraposición a los de bajo nivel.
  • 28. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 27 • LISTADO DE COMANDOS DE EXCEL EN INGLÉS Y ESPAÑOL A continuación se mostrará una lista de comandos de Excel expresados en español e inglés, que le servirá como base para su futuro código, ya que siempre tendrá la necesidad de usar una función en Excel en el código VBA, todas las funciones de Excel tienen un equivalente en VBA sólo tiene que respetar el formato de cada función. GRUPO ENGLISH ESPAÑOL Math ABS ABS Financial ACCRINT INT.ACUM Financial ACCRINTM INT.ACUM.V Math ACOS ACOS Math ACOSH ACOSH Lookup ADDRESS DIRECCION Financial AMORDEGRC AMORTIZ.PROGRE Financial AMORLINC AMORTIZ.LIN Logical AND Y Lookup AREAS AREAS Text ASC ASC Math ASIN ASENO Math ASINH ASENOH Math ATAN ATAN Math ATAN2 ATAN2 Math ATANH ATANH Statistical AVEDEV DESVPROM Statistical AVERAGE PROMEDIO Statistical AVERAGEA fnNA:AVERAGEA Text BAHTTEXT fnNA:BAHTTEXT Engineering BESSELI BESSELI Engineering BESSELJ BESSELJ Engineering BESSELK BESSELK Engineering BESSELY BESSELY Statistical BETADIST DISTR.BETA Statistical BETAINV DISTR.BETA.INV Engineering BIN2DEC BIN.A.DEC Engineering BIN2HEX BIN.A.HEX Engineering BIN2OCT BIN.A.OCT Statistical BINOMDIST DISTR.BINOM Math CEILING MULTIPLO.SUPERIOR Information CELL CELDA Text CHAR CARACTER Statistical CHIDIST DISTR.CHI Statistical CHIINV PRUEBA.CHI.INV Statistical CHITEST PRUEBA.CHI Lookup CHOOSE ELEGIR
  • 29. INTRODUCCIÓN CAP. 1 28 Text CLEAN LIMPIAR Text CODE CODIGO Lookup COLUMN COLUMNA Lookup COLUMNS COLUMNAS Math COMBIN COMBINAT Engineering COMPLEX COMPLEJO Text CONCATENATE CONCATENAR Statistical CONFIDENCE INTERVALO.CONFIANZA Engineering CONVERT CONVERTIR Statistical CORREL COEF.DE.CORREL Math COS COS Math COSH COSH Statistical COUNT CONTAR Statistical COUNTA CONTARA Information COUNTBLANK CONTAR.BLANCO Math COUNTIF CONTAR.SI Financial COUPDAYBS CUPON.DIAS.L1 Financial COUPDAYS CUPON.DIAS Financial COUPDAYSNC CUPON.DIAS.L2 Financial COUPNCD CUPON.FECHA.L2 Financial COUPNUM CUPON.NUM Financial COUPPCD CUPON.FECHA.L1 Statistical COVAR COVAR Statistical CRITBINOM BINOM.CRIT Financial CUMIPMT PAGO.INT.ENTRE Financial CUMPRINC PAGO.PRINC.ENTRE Date DATE FECHA Undocumented DATEDIF SIFECHA Undocumented DATESTRING CADENA.FECHA Date DATEVALUE FECHANUMERO Database DAVERAGE BDPROMEDIO Date DAY DIA Date DAYS360 DIAS360 Financial DB DB Text-DoubleByte DBCS DBCS Database DCOUNT BDCONTAR Database DCOUNTA BDCONTARA Financial DDB DDB Engineering DEC2BIN DEC.A.BIN Engineering DEC2HEX DEC.A.HEX Engineering DEC2OCT DEC.A.OCT Math DEGREES GRADOS Engineering DELTA DELTA Statistical DEVSQ DESVIA2
  • 30. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 29 Database DGET BDEXTRAER Financial DISC TASA.DESC Database DMAX BDMAX Database DMIN BDMIN Text DOLLAR MONEDA Financial DOLLARDE MONEDA.DEC Financial DOLLARFR MONEDA.FRAC Database DPRODUCT BDPRODUCTO Database DSTDEV BDDESVEST Database DSTDEVP BDDESVESTP Database DSUM BDSUMA Financial DURATION DURACION Database DVAR BDVAR Database DVARP BDVARP Date EDATE FECHA.MES Financial EFFECT INT.EFECTIVO Date EOMONTH FIN.MES Engineering ERF FUN.ERROR Engineering ERFC FUN.ERROR.COMPL Information ERROR.TYPE TIPO.DE.ERROR External EUROCONVERT EUROCONVERT Math EVEN REDONDEA.PAR Text EXACT IGUAL Math EXP EXP Statistical EXPONDIST DISTR.EXP Math FACT FACT Math FACTDOUBLE FACT.DOBLE Logical FALSE FALSO Statistical FDIST DISTR.F Text FIND ENCONTRAR Text DoubleByte FINDB ENCONTRARB Statistical FINV DISTR.F.INV Statistical FISHER FISHER Statistical FISHERINV PRUEBA.FISHER.INV Text FIXED DECIMAL Math FLOOR MULTIPLO.INFERIOR Statistical FORECAST PRONOSTICO Statistical FREQUENCY FRECUENCIA Statistical FTEST PRUEBA.F Financial FV VF Financial FVSCHEDULE VF.PLAN Statistical GAMMADIST DISTR.GAMMA Statistical GAMMAINV DISTR.GAMMA.INV
  • 31. INTRODUCCIÓN CAP. 1 30 Statistical GAMMALN GAMMA.LN Math GCD M.C.D Statistical GEOMEAN MEDIA.GEOM Engineering GESTEP MAYOR.O.IGUAL Database GETPIVOTDATA fnNA:GETPIVOTDATA Statistical GROWTH CRECIMIENTO Statistical HARMEAN MEDIA.ARMO Engineering HEX2BIN HEX.A.BIN Engineering HEX2DEC HEX.A.DEC Engineering HEX2OCT HEX.A.OCT Lookup HLOOKUP BUSCARH Date HOUR HORA Lookup HYPERLINK fnNA:HYPERLINK Statistical HYPGEOMDIST DISTR.HIPERGEOM Logical IF SI Engineering IMABS IM.ABS Engineering IMAGINARY IMAGINARIO Engineering IMARGUMENT IM.ANGULO Engineering IMCONJUGATE IM.CONJUGADA Engineering IMCOS IM.COS Engineering IMDIV IM.DIV Engineering IMEXP IM.EXP Engineering IMLN IM.LN Engineering IMLOG10 IM.LOG10 Engineering IMLOG2 IM.LOG2 Engineering IMPOWER IM.POT Engineering IMPRODUCT IM.PRODUCT Engineering IMREAL IM.REAL Engineering IMSIN IM.SENO Engineering IMSQRT IM.RAIZ2 Engineering IMSUB IM.SUSTR Engineering IMSUM IM.SUM Lookup INDEX INDICE Lookup INDIRECT INDIRECTO Information INFO INFO Math INT ENTERO Statistical INTERCEPT INTERSECCION Financial INTRATE TASA.INT Financial IPMT PAGOINT Financial IRR TIR Information ISBLANK ESBLANCO Information ISERR ESERR Information ISERROR ESERROR
  • 32. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 31 Information ISEVEN ES.PAR Information ISLOGICAL ESLOGICO Information ISNA ESNOD Information ISNONTEXT ESNOTEXTO Information ISNUMBER ESNUMERO Information ISODD ES.IMPAR Financial ISPMT INT.PAGO.DIR Information ISREF ESREF Information ISTEXT ESTEXTO Text DoubleByte JIS fnNA:JIS Statistical KURT CURTOSIS Statistical LARGE K.ESIMO.MAYOR Math LCM M.C.M Text LEFT IZQUIERDA Text DoubleByte LEFTB IZQUIERDAB Text LEN LARGO Text DoubleByte LENB LARGOB Statistical LINEST ESTIMACION.LINEAL Math LN LN Math LOG LOG Math LOG10 LOG10 Statistical LOGEST ESTIMACION. LOGARITMICA Statistical LOGINV DISTR.LOG.INV Statistical LOGNORMDIST DISTR.LOG.NORM Lookup LOOKUP BUSCAR Text LOWER MINUSC Lookup MATCH COINCIDIR Statistical MAX MAX Statistical MAXA fnNA:MAXA Math MDETERM MDETERM Financial MDURATION DURACION.MODIF Statistical MEDIAN MEDIANA Text MID EXTRAE Text DoubleByte MIDB EXTRAE Statistical MIN MIN Statistical MINA fnNA:MINA Date MINUTE MINUTO Math MINVERSE MINVERSA Financial MIRR TIRM Math MMULT MMULT Math MOD RESIDUO Statistical MODE MODA
  • 33. INTRODUCCIÓN CAP. 1 32 Date MONTH MES Math MROUND REDOND.MULT Math MULTINOMIAL MULTINOMIAL Information N N Information NA NOD Statistical NEGBINOMDIST NEGBINOMDIST Date NETWORKDAYS DIAS.LAB Financial NOMINAL TASA.NOMINAL Statistical NORMDIST DISTR.NORM Statistical NORMINV DISTR.NORM.INV Statistical NORMSDIST DISTR.NORM.ESTAND Statistical NORMSINV DISTR.NORM.ESTAND.INV Logical NOT NO Date NOW AHORA Financial NPER NPER Financial NPV VNA Undocumented NUMBERSTRING CADENA.NUMERO Engineering OCT2BIN OCT.A.BIN Engineering OCT2DEC OCT.A.DEC Engineering OCT2HEX OCT.A.HEX Math ODD REDONDEA.IMPAR Financial ODDFPRICE PRECIO.PER.IRREGULAR.1 Financial ODDFYIELD RENDTO.PER.IRREGULAR.1 Financial ODDLPRICE PRECIO.PER.IRREGULAR.2 Financial ODDLYIELD RENDTO.PER.IRREGULAR.2 Lookup OFFSET DESREF Logical OR O Statistical PEARSON PEARSON Statistical PERCENTILE PERCENTIL Statistical PERCENTRANK RANGO.PERCENTIL Statistical PERMUT PERMUTACIONES Text PHONETIC fnNA:PHONETIC Math PI PI Financial PMT PAGO Statistical POISSON POISSON Math POWER POTENCIA Financial PPMT PAGOPRIN Financial PRICE PRECIO Financial PRICEDISC PRECIO.DESCUENTO Financial PRICEMAT PRECIO.VENCIMIENTO Statistical PROB PROBABILIDAD Math PRODUCT PRODUCTO Text PROPER NOMPROPIO
  • 34. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 33 Financial PV VA Statistical QUARTILE CUARTIL Math QUOTIENT COCIENTE Math RADIANS RADIANES Math RAND ALEATORIO Math RANDBETWEEN ALEATORIO.ENTRE Statistical RANK JERARQUIA Financial RATE TASA Financial RECEIVED CANTIDAD.RECIBIDA Text REPLACE REEMPLAZAR Text DoubleByte REPLACEB REEMPLAZARB Text REPT REPETIR Text RIGHT DERECHA Text DoubleByte RIGHTB DERECHAB Math ROMAN NUMERO.ROMANO Math ROUND REDONDEAR Math ROUNDDOWN REDONDEAR.MENOS Math ROUNDUP REDONDEAR.MAS Lookup ROW FILA Lookup ROWS FILAS Statistical RSQ COEFICIENTE.R2 Lookup RTD fnNA:RTD Text SEARCH HALLAR Text DoubleByte SEARCHB HALLARB Date SECOND SEGUNDO Math SERIESSUM SUMA.SERIES Math SIGN SIGNO Math SIN SENO Math SINH SENOH Statistical SKEW COEFICIENTE.ASIMETRIA Financial SLN SLN Statistical SLOPE PENDIENTE Statistical SMALL K.ESIMO.MENOR External SQL.REQUEST SQL.REQUEST Math SQRT RAIZ Math SQRTPI RAIZ2PI Statistical STANDARDIZE NORMALIZACION Statistical STDEV DESVEST Statistical STDEVA fnNA:STDEVA Statistical STDEVP DESVESTP Statistical STDEVPA fnNA:STDEVPA Statistical STEYX ERROR.TIPICO.XY Text SUBSTITUTE SUSTITUIR
  • 35. INTRODUCCIÓN CAP. 1 34 Math SUBTOTAL SUBTOTALES Math SUM SUMA Math SUMIF SUMAR.SI Math SUMPRODUCT SUMAPRODUCTO Math SUMSQ SUMA.CUADRADOS Math SUMX2MY2 SUMAX2MENOSY2 Math SUMX2PY2 SUMAX2MASY2 Math SUMXMY2 SUMAXMENOSY2 Financial SYD SYD Text T T Math TAN TAN Math TANH TANH Financial TBILLEQ LETRA.DE.TES.EQV.A.BONO Financial TBILLPRICE LETRA.DE.TES.PRECIO Financial TBILLYIELD LETRA.DE.TES.RENDTO Statistical TDIST DISTR.T Text TEXT TEXTO Date TIME NSHORA Date TIMEVALUE HORANUMERO Statistical TINV DISTR.T.INV Date TODAY HOY Lookup TRANSPOSE TRANSPONER Statistical TREND TENDENCIA Text TRIM ESPACIOS Statistical TRIMMEAN MEDIA.ACOTADA Logical TRUE VERDADERO Math TRUNC TRUNCAR Statistical TTEST PRUEBA.T Information TYPE TIPO Text UPPER MAYUSC Undocumented USDOLLAR USDOLLAR Text VALUE VALOR Statistical VAR VAR Statistical VARA fnNA:VARA Statistical VARP VARP Statistical VARPA fnNA:VARPA Financial VDB DVS Lookup VLOOKUP BUSCARV Date WEEKDAY DIASEM Date WEEKNUM NUM.DE.SEMANA Statistical WEIBULL DIST.WEIBULL Date WORKDAY DIA.LAB Financial XIRR TIR.NO.PER
  • 36. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 35 Financial XNPV VNA.NO.PER Date YEAR AÑO Date YEARFRAC FRAC.AÑO Financial YIELD RENDTO Financial YIELDDISC RENDTO.DESC Financial YIELDMAT RENDTO.VENCTO Statistical ZTEST PRUEBA.Z Command A1.R1C1 A1.L1C1 Command ABSREF REFABS Command ACTIVATE ACTIVAR Command ACTIVATE.NEXT ACTIVAR.SIGUIENTE Command ACTIVATE.PREV ACTIVAR.ANTERIOR Command ACTIVE.CELL CELDA.ACTIVA Command ACTIVE.CELL.FONT FUENTE.CELDA.ACTIVA Command ADD.ARROW AGREGAR.FLECHA Command ADD.BAR AGREGAR.BARRA Command ADD.CHART.AUTOFORMAT AGREGAR.AUTOFMTO. GRAF Command ADD.COMMAND AGREGAR.COMANDO Command ADD.LIST.ITEM AGREGAR.A.LISTA Command ADD.MENU AGREGAR.MENU Command ADD.OVERLAY AGREGAR.GRAFICO. SUPERPUESTO Command ADD.TOOL AGREGAR.HERRAMIENTA Command ADD.TOOLBAR AGREGAR.BARRA. HERRAMIENTAS Command ADDIN.MANAGER ADMIN.MACROS. AUTOMATICAS Command ALERT ALERTA Command ALIGNMENT ALINEACION Command ANOVA1 AN.VAR1 Command ANOVA1? AN.VAR1? Command ANOVA2 AN.VAR2 Command ANOVA2? AN.VAR2? Command ANOVA3 AN.VAR3 Command ANOVA3? AN.VAR3? Command APP.ACTIVATE APL.ACTIVAR Command APP.ACTIVATE.MICROSOFT APL.ACTIVAR.MICROSOFT Command APP.MAXIMIZE APL.MAXIMIZAR Command APP.MINIMIZE APL.MINIMIZAR Command APP.MOVE APL.MOVER Command APP.RESTORE APL.RESTABLECER Command APP.SIZE APL.TAMAÑO Command APP.TITLE APL.TITULO
  • 37. INTRODUCCIÓN CAP. 1 36 Command APPLY.NAMES APLICAR.NOMBRES Command APPLY.STYLE APLICAR.MODELO Command ARGUMENT ARGUMENTO Command ARRANGE.ALL ORGANIZAR.TODO Command ASSIGN.TO.OBJECT ASIGNAR.A.OBJETO Command ASSIGN.TO.TOOL ASIGNAR.A.HERRAMIENTA Command ATTACH.TEXT ADHERIR.TEXTO Command ATTACH.TOOLBARS ADJUNTAR.BARRA. HERRAMIENTAS Command ATTRIBUTES ATRIBUTOS Command AUTO.OUTLINE CREAR.ESQUEMA Command AUTOCORRECT AUTOCORRECCIÓN Command AXES EJES Command BEEP BIP Command BORDER BORDES Command BREAK INTERRUMPIR Command BRING.TO.FRONT HACIA.ADELANTE Command CALCULATE.DOCUMENT CALCULAR.DOCUMENTO Command CALCULATE.NOW CALCULAR.AHORA Command CALCULATION CALCULAR Command CALL LLAMAR Command CALLER LLAMADOR Command CANCEL.COPY CANCELAR.COPIAR Command CANCEL.KEY CANCELAR.TECLA Command CELL.PROTECTION PROTEGER.CELDA Command CHANGE.LINK CAMBIAR.VINCULO Command CHART.ADD.DATA GRAFICO.AGREGAR.DATOS Command CHART.TREND GRAFICO.TENDENCIA Command CHART.WIZARD ASISTENTE.PARA.GRAFICOS Command CHECK.COMMAND MARCAR.COMANDO Command CHECKBOX.PROPERTIES FORMATO.OBJETO. CASILLA.DE.VERIFICACION Command CLEAR BORRAR Command CLEAR.OUTLINE BORRAR.ESQUEMA Command CLEAR.PRINT.AREA BORRAR.AREA. DE.IMPRESION Command CLEAR.ROUTING.SLIP ANULAR.DISTRIBUIR Command CLOSE CERRAR Command CLOSE.ALL CERRAR.TODO Command COLOR.PALETTE PALETA.COLORES Command COLUMN.WIDTH ANCHO.COLUMNA Command COMBINATION COMBINADO Command CONSOLIDATE CONSOLIDAR Command CONSTRAIN.NUMERIC RESTRICCION.NUMERICA
  • 38. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 37 Command COPY COPIAR Command COPY.CHART COPIAR.GRAFICO Command COPY.PICTURE COPIAR.IMAGEN Command COPY.TOOL COPIAR.HERRAMIENTA Command CREATE.NAMES CREAR.NOMBRES Command CREATE.OBJECT CREAR.OBJETO Command CREATE.PUBLISHER CREATE.PUBLISHER Command CUSTOM.REPEAT PERSONALIZAR.REPETIR Command CUSTOM.UNDO PERSONALIZAR.DESHACER Command CUSTOMIZE.TOOLBAR PERSONALIZAR.BARRA Command CUT CORTAR Command DATA.DELETE DATOS.ELIMINAR Command DATA.FIND DATOS.BUSCAR Command DATA.FIND.NEXT DATOS.BUSCAR.SIGUIENTE Command DATA.FIND.PREV DATOS.BUSCAR.ANTERIOR Command DATA.FORM FICHA Command DATA.LABEL ROTULOS.DATOS Command DATA.SERIES DATOS.SERIES Command DEFINE.NAME DEFINIR.NOMBRE Command DEFINE.STYLE DEFINIR.MODELO Command DELETE.ARROW ELIMINAR.FLECHA Command DELETE.BAR ELIMINAR.BARRA Command DELETE.CHART. AUTOFORMAT ELIMINAR.AUTOFMTO. GRAF Command DELETE.COMMAND ELIMINAR.COMANDO Command DELETE.FORMAT ELIMINAR.FORMATO Command DELETE.MENU ELIMINAR.MENU Command DELETE.NAME ELIMINAR.NOMBRE Command DELETE.OVERLAY ELIMINAR.GRAFICO. SUPERPUESTO Command DELETE.STYLE ELIMINAR.MODELO Command DELETE.TOOL ELIMINAR.HERRAMIENTA Command DELETE.TOOLBAR ELIMINAR.BARRA. HERRAMIENTAS Command DEMOTE DISMINUIR.NIVEL Command DEREF VALREF Command DESCR DESCRIPTIVA Command DESCR? DESCRIPTIVA? Command DIALOG.BOX CUADRO.DE.DIALOGO Command DIRECTORY DIRECTORIO Command DISABLE.INPUT INHABILITAR.ENTRADA Command DISPLAY PRESENTAR Command DOCUMENTS DOCUMENTOS Command DUPLICATE DUPLICAR
  • 39. INTRODUCCIÓN CAP. 1 38 Command ECHO ECO Command EDIT.COLOR EDICION.COLOR Command EDIT.DELETE EDICION.ELIMINAR Command EDIT.OBJECT EDITAR.OBJETO Command EDIT.REPEAT EDICION.REPETIR Command EDIT.SERIES EDICION.SERIES Command EDIT.TOOL EDICION.HERRAMIENTA Command EDITBOX.PROPERTIES FORMATO.OBJETO. CUADRO.EDICION Command EDITION.OPTIONS EDICION.OPCIONES Command ELSE SI.NO Command ELSE.IF SI.NO.SI Command ENABLE.COMMAND HABILITAR.COMANDO Command ENABLE.OBJECT HABILITAR.OBJETO Command ENABLE.TIPWIZARD HABILITAR.ASISTENTE. IDEAS Command ENABLE.TOOL HABILITAR.HERRAMIENTA Command END.IF FIN.SI Command ENTER.DATA INTRODUCIR.DATOS Command ERROR ERROR Command ERRORBAR.X BARRA.ERROR.X Command ERRORBAR.Y BARRA.ERROR.Y Command EVALUATE EVALUAR Command EXEC EJEC Command EXECUTE EJECUTA Command EXPON SUAVIZ.EXPON Command EXPON? SUAVIZ.EXPON? Command EXTEND.POLYGON EXTENDER.POLIGONO Command EXTRACT EXTRAER Command FCLOSE CERRARA Command FILE.CLOSE ARCHIVO.CERRAR Command FILE.DELETE ARCHIVO.ELIMINAR Command FILES ARCHIVOS Command FILL.AUTO AUTO.LLENAR Command FILL.DOWN LLENAR.HACIA.ABAJO Command FILL.GROUP LLENAR.GRUPO Command FILL.LEFT LLENAR.HACIA. LA.IZQUIERDA Command FILL.RIGHT LLENAR.HACIA. LA.DERECHA Command FILL.UP LLENAR.HACIA.ARRIBA Command FILL.WORKGROUP LLENAR.GRUPO. DE.TRABAJO Command FILTER FILTROS
  • 40. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 39 Command FILTER.ADVANCED FILTRO.AVANZADO Command FILTER.SHOW.ALL FILTROS.MOSTRAR.TODO Command FIND.FILE BUSCAR.ARCHIVO Command FONT FUENTES Command FONT.PROPERTIES PROPIEDADES.FUENTE Command FOPEN ABRIRA Command FOR PARA Command FOR.CELL PARA.CELDA Command FORMAT.AUTO AUTOFORMATO Command FORMAT.CHART FORMATO.GRAFICO Command FORMAT.CHARTTYPE FORMATO.TIPO.GRAFICO Command FORMAT.FONT FORMATO.FUENTES Command FORMAT.LEGEND FORMATO.LEYENDA Command FORMAT.MAIN FORMATO.PRINCIPAL Command FORMAT.MOVE FORMATO.MOVER Command FORMAT.NUMBER FORMATO.NUMERO Command FORMAT.OVERLAY FORMATO.SUPERPUESTO Command FORMAT.SHAPE FORMATO.FIGURA Command FORMAT.SIZE FORMATO.TAMAÑO Command FORMAT.TEXT FORMATO.TEXTO Command FORMULA FORMULA Command FORMULA.ARRAY FORMULA.MATRICIAL Command FORMULA.CONVERT FORMULA.CONVERTIR Command FORMULA.FILL FORMULA.LLENAR Command FORMULA.FIND FORMULA.BUSCAR Command FORMULA.FIND.NEXT FORMULA.BUSCAR. SIGUIENTE Command FORMULA.FIND.PREV FORMULA.BUSCAR. ANTERIOR Command FORMULA.GOTO FORMULA.IR.A Command FORMULA.REPLACE FORMULA.REEMPLAZAR Command FOURIER FOURIER Command FOURIER? FOURIER? Command FPOS POSICIONA Command FREAD LEERA Command FREADLN LEERALN Command FREEZE.PANES INMOVILIZAR.SECCIONES Command FSIZE TAMAÑOA Command FTESTV PRUEBA.F.VAR Command FTESTV? PRUEBA.F.VAR? Command FULL PANTALLA.COMPLETA Command FULL.SCREEN VISTA.PANTALLA. COMPLETA
  • 41. INTRODUCCIÓN CAP. 1 40 Command FUNCTION.WIZARD ASISTENTE.PARA. FUNCIONES Command FWRITE ESCRIBIRA Command FWRITELN ESCRIBIRALN Command GALLERY.3D.AREA GALERIA.AREAS.3D Command GALLERY.3D.BAR GALERIA.BARRAS.3D Command GALLERY.3D.COLUMN GALERIA.COLUMNAS.3D Command GALLERY.3D.LINE GALERIA.LINEAS.3D Command GALLERY.3D.PIE GALERIA.CIRCULAR.3D Command GALLERY.3D.SURFACE GALERIA.SUPERFICIE.3D Command GALLERY.AREA GALERIA.AREAS Command GALLERY.BAR GALERIA.BARRAS Command GALLERY.COLUMN GALERIA.COLUMNAS Command GALLERY.CUSTOM GALERIA.PERZONALIZADA Command GALLERY.DOUGHNUT GALERIA.ANILLOS Command GALLERY.LINE GALERIA.LINEAS Command GALLERY.PIE GALERIA.CIRCULAR Command GALLERY.RADAR GALERIA.RADAR Command GALLERY.SCATTER GALERIA.DISPERSION Command GET.BAR INDICAR.BARRA Command GET.CELL INDICAR.CELDA Command GET.CHART.ITEM INDICAR.ELEMENTO. GRAFICO Command GET.DEF INDICAR.DEF Command GET.DOCUMENT INDICAR.DOCUMENTO Command GET.FORMULA INDICAR.FORMULA Command GET.LINK.INFO INDICAR.INFO.VINCULO Command GET.MOVIE GET.MOVIE Command GET.NAME INDICAR.NOMBRE Command GET.NOTE INDICAR.NOTAS Command GET.OBJECT INDICAR.OBJETO Command GET.PIVOT.FIELD INDICAR.CAMPO.TABLA.DI Command GET.PIVOT.ITEM INDICAR.ELEMENTO.TABLA. DI Command GET.PIVOT.TABLE INDICAR.TABLA.DINAMICA Command GET.TOOL INDICAR.HERRAMIENTA Command GET.TOOLBAR INDICAR.BARRA. HERRAMIENTAS Command GET.WINDOW INDICAR.VENTANA Command GET.WORKBOOK INDICAR.LIBRO Command GET.WORKSPACE INDICAR.AREA.DE.TRABAJO Command GOAL.SEEK BUSCAR.OBJETIVO Command GOTO IR.A Command GRIDLINES LINEAS.DE.DIVISION
  • 42. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 41 Command GROUP AGRUPAR Command HALT DETENER Command HELP AYUDA Command HIDE OCULTAR Command HIDE.DIALOG OCULTAR.DIALOGO Command HIDE.OBJECT OCULTAR.OBJETO Command HISTOGRAM HISTOGRAMA Command HISTOGRAM? HISTOGRAMA? Command HLINE LINEAH Command HPAGE PAGINAH Command HSCROLL DESPLAZARH Command INITIATE INICIAR Command INPUT INTRODUCIR Command INSERT INSERTAR Command INSERT.MAP.OBJECT INSERTAR.MAPA.OBJETO Command INSERT.OBJECT INSERTAR.OBJETO Command INSERT.PICTURE INSERTAR.IMAGEN Command INSERT.TITLE INSERTAR.TITULO Command JUSTIFY JUSTIFICAR Command LABEL.PROPERTIES FORMATO.OBJ.ROTULO Command LAST.ERROR ULTIMO.ERROR Command LEGEND LEYENDA Command LINE.PRINT IMPRIMIR.EN.LINEA Command LINK.COMBO VINCULAR.COMBINADO Command LINK.FORMAT VINCULAR.FORMATO Command LINKS VINCULOS Command LIST.NAMES LISTAR.NOMBRES Command LISTBOX.PROPERTIES FORMATO.OBJ.CUADRO. LISTA Command MACRO.OPTIONS OPCIONES.MACRO Command MAIL.ADD.MAILER CORREO.AGREGAR. FORMULARIO Command MAIL.DELETE.MAILER CORREO.ELIMINAR. FORMULARIO Command MAIL.EDIT.MAILER CORREO.EDICION. FORMULARIO Command MAIL.FORWARD REENVIAR.CORREO Command MAIL.LOGOFF CERRAR.CORREO Command MAIL.LOGON INICIAR.CORREO Command MAIL.NEXT.LETTER CORREO.SIGUIENTE. MENSAJE Command MAIL.REPLY CORREO.RESPONDER Command MAIL.REPLY.ALL CORREO. REPONDER.A.TODOS
  • 43. INTRODUCCIÓN CAP. 1 42 Command MAIL.SEND.MAILER ENVIAR.FORMULARIO Command MAIN.CHART GRAFICO.PRINCIPAL Command MAIN.CHART.TYPE GRAFICO.PRINCIPAL.TIPO Command MCORREL MCORREL Command MCORREL? MCORREL? Command MCOVAR MCOVAR Command MCOVAR? MCOVAR? Command MENU.EDITOR MENU.EDITOR Command MERGE.STYLES COMBINAR.MODELOS Command MESSAGE MENSAJE Command MOVE MOVER Command MOVE.TOOL MOVER.HERRAMIENTA Command MOVEAVG MEDIA.MOV Command MOVEAVG? MEDIA.MOV? Command MOVIE.COMMAND MOVIE.COMMAND Command NAMES NOMBRES Command NEW NUEVO Command NEW.WINDOW NUEVA.VENTANA Command NEXT SALIR.BUCLE Command NOTE NOTA Command OBJECT.PROPERTIES PROPIEDADES.OBJETO Command OBJECT.PROTECTION PROTEGER.OBJETO Command ON.DATA LLAMAR.POR.DATOS Command ON.DOUBLECLICK LLAMAR.POR.DOBLE.CLIC Command ON.ENTRY LLAMAR.POR.ENTRADA Command ON.KEY LLAMAR.POR.TECLA Command ON.RECALC LLAMAR.POR.RECALCULO Command ON.SHEET LLAMAR.POR.HOJA Command ON.TIME LLAMAR.POR.HORA Command ON.WINDOW LLAMAR.POR.VENTANA Command OPEN ABRIR Command OPEN.DIALOG ABRIR.ARCHIVO Command OPEN.LINKS ABRIR.VINCULOS Command OPEN.MAIL OPEN.MAIL Command OPEN.TEXT ABRIR.ARCHIVO.TEXTO Command OPTIONS.CALCULATION OPCIONES.CALCULAR Command OPTIONS.CHART OPCIONES.GRAFICO Command OPTIONS.EDIT OPCIONES.EDICION Command OPTIONS.GENERAL OPCIONES.GENERAL Command OPTIONS.LISTS.ADD AGREGAR.LISTA.PERS Command OPTIONS.LISTS.DELETE ELIMINAR.LISTAS Command OPTIONS.LISTS.GET OPCIONES.INDICAR.LISTAS Command OPTIONS.TRANSITION OPCIONES.TRANSICION
  • 44. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 43 Command OPTIONS.VIEW OPCIONES.VER Command OUTLINE ESQUEMA Command OVERLAY SUPERPUESTO Command OVERLAY.CHART.TYPE TIPO.GRAFICO. SUPERPUESTO Command PAGE.SETUP AJUSTAR.PAGINA Command PARSE REDISTRIBUIR Command PASTE PEGAR Command PASTE.LINK PEGAR.VINCULOS Command PASTE.PICTURE PEGAR.IMAGEN Command PASTE.PICTURE.LINK PEGAR.VINCULOS.IMAGEN Command PASTE.SPECIAL PEGADO.ESPECIAL Command PASTE.TOOL PEGAR.HERRAMIENTA Command PATTERNS DISEÑO Command PAUSE PAUSA Command PICKLIST LISTA.ELECCIÓN Command PIVOT.ADD.DATA TABLA.DI.ADICIONAR. DATOS Command PIVOT.ADD.FIELDS TABLA.DI.AGREGAR. CAMPO Command PIVOT.FIELD TABLA.DI.CAMPO Command PIVOT.FIELD.GROUP AGRUPAR.CAMPOS. DINAMICOS Command PIVOT.FIELD.PROPERTIES TABLA.DI.PROPIEDADES. CAMPO Command PIVOT.FIELD.UNGROUP DESAGRUPAR.CAMPOS. DINAMICOS Command PIVOT.ITEM TABLA.DI.ELEMENTO Command PIVOT.ITEM.PROPERTIES TABLA.DI.PROPIEDADES. ELEMENTO Command PIVOT.REFRESH TABLA.DI.RENOVAR Command PIVOT.SHOW.PAGES TABLA.DI.MOSTRAR. PAGINAS Command PIVOT.TABLE.WIZARD ASISTENTE.TABLAS. DINAMICAS Command PLACEMENT COLOCAR Command POKE TRANSFERIR Command POST.DOCUMENT EXPEDIR.DOCUMENTO Command PRECISION PRECISION Command PREFERRED PREFERIDO Command PRESS.TOOL PRESIONAR.HERRAMIENTA Command PRINT IMPRIMIR Command PRINT.PREVIEW PRESENTACION. PRELIMINAR Command PRINTER.SETUP ESPECIFICAR.IMPRESORA
  • 45. INTRODUCCIÓN CAP. 1 44 Command PROMOTE AUMENTAR.NIVEL Command PROTECT.DOCUMENT PROTEGER.DOCUMENTO Command PTTESTM PRUEBA.T.EMPAREJADAS Command PTTESTM? PRUEBA.T.EMPAREJADAS? Command PTTESTV PRUEBA.T.DIF.VAR Command PTTESTV? PRUEBA.T.DIF.VAR? Command PUSHBUTTON.PROPERTIES FORMATO.OBJ.BOTON Command QUIT SALIR Command RANDOM ALEATORIO2 Command RANDOM? ALEATORIO2? Command RANKPERC JERARQUIA.PERCENTIL Command RANKPERC? JERARQUIA.PERCENTIL? Command REFTEXT REFTEXTO Command REGISTER REGISTRAR Command REGISTER.ID ID.REGISTRO Command REGRESS REGRESION Command REGRESS? REGRESION? Command RELREF REFREL Command REMOVE.LIST.ITEM ELIMINAR.ELEMENTO.LISTA Command REMOVE.PAGE.BREAK ANULAR.SALTO.DE.PAGINA Command RENAME.COMMAND CAMBIAR.NOMBRE. COMANDO Command RENAME.OBJECT CAMBIAR.NOMBRE.OBJETO Command REPLACE.FONT REEMPLAZAR.TIPO Command REQUEST SOLICITAR Command RESET.TOOL RESTABLECER. HERRAMIENTA Command RESET.TOOLBAR RESTABLECER.BARRA Command RESTART REINICIAR Command RESULT RESULTADO Command RESUME REANUDAR Command RETURN VOLVER Command ROUTE.DOCUMENT RUTA.DOCUMENTO Command ROUTING.SLIP LISTA.DE.DISTRIBUCION Command ROW.HEIGHT ALTO.FILA Command RUN EJECUTAR Command SAMPLE MUESTRA Command SAMPLE? MUESTRA? Command SAVE GUARDAR Command SAVE.AS GUARDAR.COMO Command SAVE.COPY.AS GUARDAR.COPIA.COMO Command SAVE.DIALOG GUARDAR.ARCHIVO Command SAVE.NEW.OBJECT GUARDAR.NUEVO.OBJETO
  • 46. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 45 Command SAVE.TOOLBAR GUARDAR.BARRA. HERRAMIENTAS Command SAVE.WORKBOOK GUARDAR.LIBRO Command SAVE.WORKSPACE GUARDAR.AREA. DE.TRABAJO Command SCALE ESCALA Command SCENARIO.ADD AGREGAR.ESCENARIO Command SCENARIO.CELLS ESCENARIO.CELDAS Command SCENARIO.DELETE ESCENARIO.ELIMINAR Command SCENARIO.EDIT ESCENARIO.EDITAR Command SCENARIO.GET ESCENARIO.INDICAR Command SCENARIO.MERGE ESCENARIO.COMBINAR Command SCENARIO.SHOW ESCENARIO.MOSTRAR Command SCENARIO.SHOW.NEXT ESCENARIO.MOSTRAR. PROXIMO Command SCENARIO.SUMMARY ESCENARIO.RESUMEN Command SCROLLBAR.PROPERTIES FORMATO.OBJ.BARRA. DESPLAZ Command SELECT SELECCIONAR Command SELECT.ALL SELECCIONAR.TODO Command SELECT.CHART SELECCIONAR.GRAFICO Command SELECT.END SELECCIONAR.FIN Command SELECT.LAST.CELL SELECCIONAR.ULTIMA. CELDA Command SELECT.LIST.ITEM SELECCIONAR.ELEMENTO. LISTA Command SELECT.PLOT.AREA SELECCIONAR.AREA. DE.TRAZADO Command SELECT.SPECIAL SELECCION.ESPECIAL Command SELECTION SELECCION Command SEND.KEYS ENVIAR.TECLAS Command SEND.MAIL ENVIAR.DOCUMENTO.POR. MAIL Command SEND.TO.BACK HACIA.ATRAS Command SERIES SERIES Command SERIES.AXES EJES.SERIES Command SERIES.ORDER ORDEN.SERIES Command SERIES.X SERIES.X Command SERIES.Y SERIES.Y Command SET.CONTROL.VALUE ESTABLECER.VALOR. DE.CONTROL Command SET.CRITERIA ESTABLECER.CRITERIOS Command SET.DATABASE ESTABLECER.BASE. DE.DATOS
  • 47. INTRODUCCIÓN CAP. 1 46 Command SET.DIALOG.DEFAULT ESTABLECER.DIALOGO. ESTANDAR Command SET.DIALOG.FOCUS ESTABLECER.ENFOQUE. DIALOGO Command SET.EXTRACT ESTABLECER.EXTRACCION Command SET.LIST.ITEM ESTABLECER.ELEMENTO. LISTA Command SET.NAME ESTABLECER.NOMBRE Command SET.PAGE.BREAK ESTABLECER.SALTO. DE.PAGINA Command SET.PREFERRED ESTABLECER.GRAFICO. PREFERIDO Command SET.PRINT.AREA ESTABLECER.AREA. DE.IMPRESION Command SET.PRINT.TITLES ESTABLECER. TITULOS.A.IMPRIMIR Command SET.UPDATE.STATUS ESTADO.ACTUALIZACION Command SET.VALUE ESTABLECER.VALOR Command SHARE COMPARTIR Command SHARE.NAME COMPARTIR.NOMBRE Command SHEET.BACKGROUND HOJA.FONDO Command SHORT.MENUS MENUS.CORTOS Command SHOW.ACTIVE.CELL MOSTRAR.CELDA.ACTIVA Command SHOW.BAR MOSTRAR.BARRA Command SHOW.CLIPBOARD MOSTRAR.PORTAPAPELES Command SHOW.DETAIL MOSTRAR.DETALLE Command SHOW.DIALOG MOSTRAR.DIALOGO Command SHOW.INFO MOSTRAR.INFORMACION Command SHOW.LEVELS MOSTRAR.NIVELES Command SHOW.TOOLBAR MOSTRAR.BARRA. DE.HERRAMIENTAS Command SIZE TAMAÑO Command SORT ORDENAR Command SORT.SPECIAL SORT.SPECIAL Command SOUND.NOTE NOTA.SONORA Command SOUND.PLAY REPRODUCIR.SONIDO Command SPELLING ORTOGRAFIA Command SPELLING.CHECK REVISION.ORTOGRAFICA Command SPLIT DIVIDIR Command STANDARD.FONT TIPO.ESTANDAR Command STANDARD.WIDTH ANCHO.ESTANDAR Command START COMENZAR Command STEP PASO.A.PASO Command STYLE ESTILO
  • 48. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 47 Command SUBSCRIBE.TO SUBSCRIBE.TO Command SUBTOTAL.CREATE CREAR.SUBTOTAL Command SUBTOTAL.REMOVE ELIMINAR.SUBTOTAL Command SUMMARY.INFO RESUMEN Command TAB.ORDER ORDEN.DE.TAB Command TABLE TABLA Command TERMINATE TERMINAR Command TEXT.BOX CUADRO.DE.TEXTO Command TEXT.TO.COLUMNS TEXTO.EN.COLUMNAS Command TEXTREF TEXTOREF Command TRACER.CLEAR QUITAR.RASTREADOR Command TRACER.DISPLAY MOSTRAR.RASTREADOR Command TRACER.ERROR RASTREAR.ERROR Command TRACER.NAVIGATE DESPLAZAR.PTOS.RASTREO Command TTESTM PRUEBA.T.VAR.IGUAL Command TTESTM? PRUEBA.T.VAR.IGUAL? Command UNDO DESHACER Command UNGROUP DESAGRUPAR Command UNGROUP.SHEETS DESAGRUPAR.HOJAS Command UNHIDE MOSTRAR Command UNLOCKED.NEXT DESBLOQUEADA. SIGUIENTE Command UNLOCKED.PREV DESBLOQUEADA. ANTERIOR Command UNREGISTER DESREGISTRAR Command UPDATE.LINK ACTUALIZAR.VINCULO Command VBA.ADD.WATCH VBA.AGREGAR.INSPECCION Command VBA.CLEAR.BREAKPOINTS VBA.BORRAR.PTOS. INTERRUPCION Command VBA.DEBUG.WINDOW VBA.VENTANA. DE.DEPURACION Command VBA.EDIT.WATCH VBA.EDICION.INSPECCION Command VBA.END VBA.FINALIZAR Command VBA.INSERT.FILE VBA.INSERTAR.ARCHIVO Command VBA.INSTANT.WATCH VBA.INSPECCION. INSTANTANEA Command VBA.MAKE.ADDIN VBA.CREAR.MACRO. AUTOM Command VBA.OBJECT.BROWSER VBA.EXAMINAR.OBJETO Command VBA.PROCEDURE.DEFINITION VBA.DEFINIR. PROCEDIMIENTO Command VBA.REFERENCES OB.REFERENCIAS Command VBA.RESET VBA.RESTABLECER Command VBA.STEP.INTO VBA.RECORRER.TODO
  • 49. INTRODUCCIÓN CAP. 1 48 Command VBA.STEP.OVER VBA.RECORRER.PRINCIPAL Command VBA.TOGGLE.BREAKPOINT VBA.ALTERNAR.PTO. DE.INTERRUPCION Command VIEW.3D PRESENTACION.3D Command VLINE LINEAV Command VOLATILE VOLATIL Command VPAGE PAGINAV Command VSCROLL DESPLAZARV Command WAIT ESPERAR Command WHILE MIENTRAS Command WINDOW.MAXIMIZE VENTANA.MAXIMIZAR Command WINDOW.MINIMIZE VENTANA.MINIMIZAR Command WINDOW.MOVE VENTANA.MOVER Command WINDOW.RESTORE VENTANA.RESTAURAR Command WINDOW.SIZE VENTANA.TAMAÑO Command WINDOW.TITLE VENTANA.TITULO Command WINDOWS VENTANAS Command WORKBOOK.ACTIVATE LIBRO.ACTIVAR Command WORKBOOK.ADD LIBRO.AGREGAR Command WORKBOOK.COPY LIBRO.COPIAR Command WORKBOOK.DELETE ELIMINAR.LIBRO Command WORKBOOK.HIDE OCULTAR.LIBRO Command WORKBOOK.INSERT INSERTAR.LIBRO Command WORKBOOK.MOVE LIBRO.MOVER Command WORKBOOK.NAME NOMBRE.LIBRO Command WORKBOOK.NEW LIBRO.DE.TRABAJO.NUEVO Command WORKBOOK.NEXT LIBRO.SIGUIENTE Command WORKBOOK.OPTIONS LIBRO.OPCIONES Command WORKBOOK.PREV LIBRO.ANTERIOR Command WORKBOOK.PROTECT PROTEGER.LIBRO Command WORKBOOK.SCROLL LIBRO.PASAR.A.HOJA Command WORKBOOK.SELECT LIBRO.SELECCIONAR Command WORKBOOK.TAB.SPLIT LIBRO.BAR.DE.DIV. HORIZONTAL Command WORKBOOK.UNHIDE MOSTRAR.LIBRO Command WORKGROUP GRUPO.DE.TRABAJO Command WORKGROUP.OPTIONS GRUPOTRABAJO. OPCIONES Command WORKSPACE AREA.DE.TRABAJO Command ZOOM ZOOM Command ZTESTM PRUEBA.Z.MEDIAS Command ZTESTM? PRUEBA.Z.MEDIAS?
  • 50. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 49 • EVALUACIÓN DE LA CAPACIDAD 1. ¿Qué concepto tiene de un programa y nombre tres programas de tipo lenguajes de programación? ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ 2. ¿Cuál es la diferencia entre una clase y un objeto? ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ 3. Mencione 5 propiedades y 5 eventos del objeto ListBox del VBA. ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ 4. ¿Cuál es la diferencia entre VBA y VSTO? ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ 5. ¿Cuál es el equivalente de las siguientes funciones de Excel en VBA?  BuscarV  Promedio  Suma  MediaGeom ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________ ___________________________________________________________________________________________________________
  • 51.
  • 52. 2 2 2 CAPÍTULO INTRODUCCIÓN AL VISUAL BASIC APLICACIONES (VBA)  Lenguaje Basic  Fundamentos de Visual Basic Aplicaciones para Excel  La ficha Programador de Excel 2010  Configurar la seguridad de Macros en un libro de Excel  Modos de Acceso al VBA  Descripción del editor VBA – Descripción de la barra de herramientas estándar – El explorador de Proyectos – La Ventana de Propiedades – La Ventana de Código  Personalizar del entorno VBA – Asignar derechos sobre el proyecto VBA – Asignar una clave al código VBA – Activar el requerimiento de declaración obligatoria de variables – Aplicar formato al editor de código VBA  El objeto ThisWorkBook  El objeto WorkSheets  Evaluación de la capacidad CAPACIDAD DEL CAPÍTULO  Reconoce conceptos básicos de programación y objetos VBA.
  • 53.
  • 54. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 53 • LENGUAJE BASIC El lenguaje BASIC fue inventado en 1964 por John George Kemeny (1926-1992) y Thomas Eugene Kurtz (1928-) en el Dartmouth College. En años subsiguientes, mientras que otros dialectos de BASIC aparecían, el BASIC original de Kemeny y Kurtz fue conocido como Dartmouth BASIC. BASIC fue diseñado para permitir a los estudiantes escribir programas usando terminales de una computadora en tiempo compartido. Estaba pensado para reducir notablemente la complejidad de los otros lenguajes del momento, con uno diseñado específicamente para la clase de usuarios que los sistemas de tiempo compartido permitían: un usuario más sencillo, fuera del área de las ciencias de la computación, a quien no le interesaba tanto la velocidad, sólo el hecho de ser capaz de programar y usar la máquina sin demasiadas complicaciones. Los diseñadores del lenguaje también querían que permaneciera en el dominio público, lo cual contribuyó a que se diseminara rápidamente. Basic presenta ocho principios que rigen su diseño: 1. Ser fácil de usar para los principiantes, propone sentencias en inglés que son de simple corte, sólo debe tener cuidado en el formato de cada una de ellas. 2. Ser un lenguaje de propósito general, Basic no está destinado a un área específica más bien es portable. 3. Permitir a los expertos añadir características avanzadas, conservando simple el lenguaje para los principiantes. 4. Ser interactivo. 5. Proveer mensajes de error, claros y amigables. 6. Responder rápido en los programas pequeños. 7. No requerir un conocimiento del hardware de la computadora. 8. Proteger al usuario del sistema operativo. • FUNDAMENTOS DE VISUAL BASIC APLICACIONES PARA EXCEL Microsoft VBA (Visual Basic for Applications) es un lenguaje de macros bajo la plataforma Visual Basic, aquí es donde se desarrollará aplicaciones a medida para el sistema operativo Windows, VBA está incluido en varias aplicaciones Microsoft es por eso que no necesita instalación ni mucho menos descargarla de internet. Microsoft VBA viene integrado en aplicaciones de Microsoft Office, como Word, Excel y Access. Prácticamente cualquier cosa que se pueda programar en Visual Basic 5.0 o 6.0 se puede hacer también dentro de un documento de Office, con la sola limitación que el producto final no se puede compilar separadamente del documento, hoja o base de datos en que fue creado; es decir, se convierte en una macro (o más bien una súper macro). Esta macro puede instalarse o distribuirse con sólo copiar el documento o base de datos.
  • 55. INTRODUCCIÓN AL VISUAL BASIC APLICACIONES (VBA) CAP. 2 54 • LA FICHA PROGRAMADOR DE EXCEL 2010 Esta ficha tiene entre sus herramientas el acceso al entorno VBA, formularios y varias opciones más pertenecientes al entorno avanzado de Excel. En la actualidad la mayoría de software de ingeniería cuentan con un acceso al VBA, Excel lo realiza por medio de esta ficha. Excel inicialmente no muestra la ficha Programador, se debe habilitar para lo cual usted deberá seguir los siguientes pasos: Seleccione el menú Archivo (1) desde Excel, aquí es la diferencia en Excel 2007 y 2010, este último implementó en su entorno el menú de opción Archivo y es desde allí donde se debe seleccionar Opciones (2) con esta usted obtendrá una ventana de opciones dentro de las cuales podrá activar la ficha programador que se encuentra hasta el momento inhabilitada. De la ventana Opciones de Excel, seleccione Personalizar cinta de opciones. Finalmente para habilitar la ficha programador sólo debe realizar un check en el recuadro de la Fig. 2.1 y finalmente clic en aceptar. 1 2 Fig. 2-1
  • 56. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 55 Las herramientas presentadas por la ficha Programador son: Se definirán las principales herramientas que tiene la ficha Programador: Fig. 2-2 HERRAMIENTA DESCRIPCIÓN COMBINACIÓN DE TECLAS Botón que permite acceder al entorno VBA. Alt+F11 Botón que permite mostrar el entorno de control de macros públicas para Excel, es decir, podrá editar, ejecutar o eliminar las macros. Desde este entorno no solamente visualiza macros creadas desde Excel sino también las implementadas en VBA como funciones o procedimientos públicos. Alt+F8 Permite iniciar la grabación de una nueva macro que posteriormente usted la podrá administrar desde la herramienta Macros. No presenta Botón de personalización de seguridad de la macro frente a un archivo de Excel. Seguramente que a usted alguna vez le apareció un mensaje así: Y optó por pensarlo antes de seleccionar Habilitar contenido, la advertencia ocurre por la actividad macro que se encuentra dentro del Excel y que al no configurar la Seguridad de macros; Excel opta por preguntar si desea habilitarlas. No presenta Los controles de los Formularios presentan una lista de objetos que pueden asociarse a una macro para la ejecución de una aplicación VBA. No presenta
  • 57. INTRODUCCIÓN AL VISUAL BASIC APLICACIONES (VBA) CAP. 2 56 • CONFIGURAR LA SEGURIDAD DE MACROS EN UN LIBRO DE EXCEL Toda implementación de macros en Excel necesita ser habilitada al momento de acceder a ella esto es porque un libro de Excel grabado en forma genérica no tiene una macro asignada, entonces al implementarle una macro el tipo de archivo debe ser Libro de Excel habilitado para macros. Ahora tiene 2 opciones, primero dejar que Excel le pregunte al momento de abrir un documento de Excel si quiere habilitar el contenido o segundo configurar la seguridad de la macro para que al acceder al archivo de Excel con macros no realice pregunta alguna y habilite las macros. Acceso:  Ficha Programador  En la ventana Centro de confianza se muestra una serie de opciones y como verá ya está predefinida la opción Deshabilitar todas las macros con notificación, de la cual usted debe configurar de la siguiente manera: Debe seleccionar Habilitar todas las macros (1) y active el check Confiar en el acceso al modelo de objetos de proyectos de VBA (2). Entiéndase que la habilitación conlleva a no preguntar sobre las macros al momento de abrir un archivo de Excel, en el caso de confiar en el modelo de objetos habilite el uso de los comandos WorkBook, WorkSheets, Cells, Range, etc. • MODOS DE ACCESO AL VBA Se cuenta con 2 formas de acceder a VBA, se nombrarán sin orden de prioridad. 1 2 Fig. 2-3 COMBINACIÓN DE TECLAS DESCRIPCIÓN Alt + F11 Esta combinación presenta 2 efectos, el primero es de acceder a VBA si usted se encuentra en Excel y devolverlo a Excel si se encuentra en el entorno VBA. Botón de acceso al entorno VBA.
  • 58. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 57 • DESCRIPCIÓN DEL EDITOR VBA El editor VBA tiene una apariencia amigable y muy parecida a Visual Basic, si usted es usuario de Visual Basic le será familiar muchas de las herramientas que aparecen en este entorno, la única diferencia es que VBA construye aplicaciones para Office, pero no genera aplicaciones de plataforma ni web ni mucho menos móviles. 1 Barra de herramientas Estándar (VerBarra de HerramientasEstándar) 2 Ventana Explorador de Proyectos (CTRL+R) 3 Ventana de Propiedades (F4) 4 Entorno de edición de código y desarrollo • DESCRIPCIÓN DE LA BARRA DE HERRAMIENTAS ESTÁNDAR La barra de herramientas estándar ha sido muy usada en las versiones anteriores al Excel 2007, sus características siguen siendo las mismas. Fig. 2-4 Fig. 2-5 1 4 2 3
  • 59. INTRODUCCIÓN AL VISUAL BASIC APLICACIONES (VBA) CAP. 2 58 A continuación se muestra las principales herramientas que contiene la barra de herramientas estándar, su descripción y la combinación de teclas con la cual podrá acceder a dichas herramientas: Para un trabajo más fluido en el código VBA se recomienda también habilitar la barra de herramientas Edición (VerBarra de HerramientasEdición) TOOLS DESCRIPCIÓN COMBINACIÓN DE TECLAS Volver al Entorno de Excel ALT+F11 Grabar Macro básico, tener en cuenta que Grabar desde el editor o Grabar desde Excel es la misma tarea sólo debe asignar como tipo Libro de Excel habilitado para macros. CTRL+S Ejecutar el código VBA F5 Interrumpir, permite detener la ejecución de la macro y poder continuar al presionar F5. CTRL+Pause Restablecer, permite detener y salir del modo de ejecución de la macro. Permite mostrar las propiedades de un objeto seleccionado. F4 Permite mostrar las herramientas sólo en el entorno de desarrollo de un UserForm. Fig. 2-6
  • 60. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 59 • EL EXPLORADOR DE PROYECTOS Desde el explorador de proyectos se puede tener el control de todos los objetos que tiene Excel. 1 En esta sección se tiene el control de visualización de los objetos de Excel. TOOLS DESCRIPCIÓN COMBINACIÓN DE TECLAS Lista de Propiedades y Métodos, cuando se está implementando código en VBA es necesario invocar a las propiedades de un determinado objeto ya que será difícil aprender todas las propiedades o métodos de todos los objetos en VBA. CTRL+J CTRL+Barra Espaciadora Lista de constantes, se presenta una lista de constantes declaradas dentro del entorno VBA. CTRL+SHIFT+J Información rápida, muestra el formato que tiene el objeto en referencia. CTRL+I Sangría derecha-izquierda, permite tabular el código VBA para poder visualizarlo ordenadamente. Tab Shift + Tab Bloque de comentarios, esto permite añadir el símbolo de comentario al inicio de la línea de código y no se tomará en cuenta cuando se realice la depuración de la aplicación. Toda línea de instrucción de color verde es tomada como comentario por VBA. ‘Declaración de Variables (Comentario) Dim N as Integer (Instrucción VBA) No registrada Permite visualizar el código fuente VBA. Permite visualizar el Formulario y sus objetos ocultando momentáneamente el código fuente. Permite mostrar y/o ocultar en Jerarquía de Carpetas de los objetos contenidos en el Proyecto VBA. Fig. 2-7 1 5 2 3 4
  • 61. INTRODUCCIÓN AL VISUAL BASIC APLICACIONES (VBA) CAP. 2 60 2 Visualiza el nombre del documento habilitado para macros (Macros Basicos.xlsm) enmarcado en el proyecto VBA. 3 Visualiza las hojas del libro activo: Sheets1 (Sheets1) – Hoja1(Hoja1) ThisWorkBook representa al libro activo. 4 UserForm1 es el formulario. 5 Módulo1: es el objeto que permite crear funciones o procedimientos definidos por el usuario, cuando usted crea una macro en Excel automáticamente se crea un módulo con el código autogenerado por VBA. Agregar un módulo En el desarrollo de una aplicación se necesitará agregar un Módulo y dentro de él, colocar el código VBA por medio de Funciones o Procedimientos, además de declarar variables globales. Usted puede añadir un número indeterminado de Módulos al proyecto. Veamos: Primera Forma:  Desde el Menú InsertarMódulo Segunda Forma:  Haga clic derecho en el Explorador de Proyectos.  Seleccione Insertar.  Seleccione Módulo. En la ventana de la Fig. 2.8 se puede implementar funciones o procedimientos que serán públicos dentro de Excel, entienda que si implementa una función (Function), Excel la visualizará dentro de la lista de funciones y si implementa un procedimiento(Sub) Excel lo podrá visualizar por medio de una macro. Cambiar el nombre al módulo Una vez agregado el módulo al proyecto notará que VBA le asigna el nombre Módulo1 por la tendencia de los objetos, así es que imagine si inserta 10 Módulos, será complicado saber que contiene cada módulo, por lo tanto se hace necesario colocar un nombre a cada módulo ya que fueron creados con una tarea específica. Fig. 2-8
  • 62. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 61 Fig. 2-9 Fig. 2-10 Fig. 2-11 Fig. 2-12 Pasos para el cambio de nombre:  Seleccione el módulo desde el Explorador de Proyectos.  Cambie la propiedad (Name) desde la ventana Propiedades; por ejemplo, moFunciones que representa a un módulo de puras funciones. Eliminar un módulo Tenga en cuenta que al eliminar un Módulo estará eliminando a todas las funciones o procedimientos programados en él. Pasos para la eliminación:  Presione clic derecho sobre la función desde el Explorador de Proyectos.  Seleccione Quitar nombreModulo.  A la ventana siguiente, se sugiere que seleccione la opción No, ya que si lo va a eliminar es porque no lo necesitará, pero dependerá de usted. Implementar una función dentro de un módulo Veamos un caso de implementación de una función dentro del Módulo moFunciones. Caso. Implemente una función que determine la raíz cúbica de un número N dentro del módulo moFunciones.
  • 63. INTRODUCCIÓN AL VISUAL BASIC APLICACIONES (VBA) CAP. 2 62 Como notará hay varias funciones que se deben explicar en los siguientes capítulos como Round o la misma función. Para probar la función debe implementar en Excel una hoja de la siguiente forma: Agregar un UserForm Un UserForm es la forma en que el usuario se puede comunicar con una aplicación VBA, la idea principal es que el programador implemente lo mejor posible dicho UserForm y sea amigable para el usuario. Existen varias forma de agregar un UserForm tenemos: Primera Forma:  Desde el Menú InsertarUserForm Segunda Forma:  Presione clic derecho en el Explorador de Proyectos.  Seleccione Insertar.  Seleccione UserForm. Cambiar el nombre al formulario Pasos para cambiar de nombre al formulario:  Seleccione el UserForm desde el Explorador de Proyectos.  Modifique la propiedad (Name) por un nombre adecuado al UserForm, por ejemplo frmPago. Eliminar el UserForm Tenga en cuenta que al eliminar un UserForm también elimina las macros que hacen referencia a dicho UserForm. Fig. 2-13 Fig. 2-14 i f d
  • 64. GESTIÓN Y METODOLOGÍA PROGRAMACIÓN VBA CON EXCEL 63 Fig. 2-16 Fig. 2-15 Pasos para la eliminación:  Presione clic derecho sobre el UserForm desde el Explorador de Proyectos.  Seleccione Quitar nombreUserForm.  A la ventana siguiente, se sugiere que seleccione la opción No, ya que si lo va a eliminar es porque no lo necesitará, pero dependerá de usted. Ejecutar un UserForm Ejecutar un UserForm implica pasar al modo de ejecución de una aplicación; por lo tanto, no podrá realizar ningún cambio en el código mientras se encuentre en este estado. Tenemos las siguientes formas: Primera Forma:  Realice 2 clics en un UserForm del Explorador de Proyectos.  Presione F5. Segunda Forma:  Realice 2 clics en un UserForm del Explorador de Proyectos.  Presione . • LA VENTANA DE PROPIEDADES Cada objeto contenido en el proyecto de VBA tiene propiedades, algunas de ellas parecidas, pero esto es debido a la teoría de los objetos (consulte el Capítulo 1, el tema de Programación Orientada a Objetos). 1 En esta sección aparece el nombre del Objeto y la clase a la que pertenece.  Nombre del Objeto: frmPago  Nombre de la Clase: UserForm 2 Lista de propiedades activas por el objeto seleccionado. 3 Valor asignado a cada propiedad, que puede ser modificado en tiempo de diseño, la modificación en esta sección está predeterminada por VBA, la mayoría de las propiedades ya tienen un valor inicial. 1 2 3
  • 65. INTRODUCCIÓN AL VISUAL BASIC APLICACIONES (VBA) CAP. 2 64 • LA VENTANA DE CÓDIGO La ventana de código no es visible directamente por el entorno VBA, para asignar un código a un objeto debe dar doble clic sobre el mismo y así logrará acceder a su entorno de código, recuerde respetar las reglas VBA ya que al pasar a ejecutar la aplicación verificará instrucción por instrucción y emitirá los errores por medio de mensajes en la pantalla. A continuación se describirá las partes que componen una ventana de código en VBA. 1 En este cuadro combinado se muestra una relación de objetos contenidos dentro del UserForm. 2 Lista de eventos activos por un objeto seleccionado. 3 VBA forma una estructura de tipo procedimiento con el objeto y el evento seleccionado, se puede interpretar de la siguiente forma: procedimiento privado del objeto Workbook (Libro de Excel) con el evento Open, es decir, el código se ejecutará cuando se aperture un libro de Excel. Vea el siguiente caso: se necesita mostrar la fecha actual por medio de un mensaje, todo esto debe ocurrir al abrir un libro de Excel. A continuación se muestra el código fuente del caso: La función MsgBox mostrará la fecha actual siempre y cuando grabe la aplicación como tipo Libro de Excel habilitado para Macros. Abra el libro guardado recientemente y observe el mensaje programado, más adelante se describirá con detalle la forma de envíos de mensaje. 1 3 2 Fig. 2-17 Fig. 2-18 Fig. 2-19