0% encontró este documento útil (0 votos)
60 vistas22 páginas

Contenido

El documento es una guía completa sobre la programación en Excel utilizando VBA, que abarca desde la presentación del lenguaje hasta la creación y personalización de formularios. Incluye secciones sobre macros, el entorno de desarrollo VBE, estructuras de control, objetos de Excel y cuadros de diálogo. Proporciona ejemplos prácticos y descripciones detalladas de procedimientos, variables y métodos para facilitar el aprendizaje y la aplicación de VBA en Excel.

Cargado por

jose guevara
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
60 vistas22 páginas

Contenido

El documento es una guía completa sobre la programación en Excel utilizando VBA, que abarca desde la presentación del lenguaje hasta la creación y personalización de formularios. Incluye secciones sobre macros, el entorno de desarrollo VBE, estructuras de control, objetos de Excel y cuadros de diálogo. Proporciona ejemplos prácticos y descripciones detalladas de procedimientos, variables y métodos para facilitar el aprendizaje y la aplicación de VBA en Excel.

Cargado por

jose guevara
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

VBA Excel 2013

Programación en Excel: Macros y lenguaje VBA

Presentación
1. Presentación del lenguaje VBA
17
1.1 Objetivos del lenguaje VBA
17
1.2 Algunas definiciones
18
1.3 Escritura de código VBA
19

2. Las macros de Excel


19
2.1 Mostrar la ficha PROGRAMADOR en la cinta de opciones
19
2.2 Descripción de la ficha PROGRAMADOR
20
2.2.1 Grupo Código
20
2.2.2 Grupo Complementos
21
2.2.3 Grupo Controles
21
2.3 Grabar una macro
22
2.3.1 Grabar la primera macro
22
2.3.2 Ejecutar una macro
23
2.3.3 Grabar una macro con referencias relativas
23
2.3.4 Definir el lugar de almacenamiento de una nueva macro
25
2.3.5 Eliminar una macro
26
2.3.6 Guardar un libro con macros
26
2.4 Las macros y la seguridad

www.ediciones-eni.com © Ediciones ENI 1/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

27
2.4.1 Modificar la configuración de seguridad
27
2.4.2 Descripción de las diferentes opciones de seguridad
28
2.4.3 Habilitar las macros cuando aparece la advertencia de seguridad
29
2.4.4 Activar las macros en una ubicación dada
30
2.4.5 Firmas electrónicas de macros
30
2.5 Modificar el código de una macro
31

3. Asignar una macro


33
3.1 Acceso a una macro desde la cinta de opciones de Office 2013
33
3.2 Asociar una macro a un icono de la barra de herramientas de acceso rápido
36
3.3 Asociar una macro a un botón de comando
37
3.4 Asignar una macro a una imagen
38
3.5 Asociar una macro a una zona de un objeto gráfico
38
3.6 Asociar una macro a una imagen Control ActiveX
39

4. El entorno de desarrollo VBE


40
4.1 Acceso al entorno VBE
40
4.2 Cerrar el entorno VBE
40
4.3 Volver a Excel
40
4.4 Descripción del entorno VBE
41
4.5 Elegir las ventanas que hay que mostrar
44

www.ediciones-eni.com © Ediciones ENI 2/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

5. Configuración del editor VBA


44
5.1 Configuración de la tipografía
44
5.2 Configuración de la introducción de código
45
5.3 Manejo de errores
46
5.4 Acoplar una ventana
48

El lenguaje VBA
1. Módulos
49
1.1 Presentación
49
1.2 Acceso a los módulos
51
1.3 Importar y exportar código VBA
51

2. Procedimientos
52
2.1 Definiciones
52
2.2 Acceso a los procedimientos
53
2.3 Procedimientos Sub
53
2.4 Procedimientos Function
54
2.5 Declaración de procedimientos
55
2.6 Alcance de los procedimientos
56
2.7 Argumentos de los procedimientos

www.ediciones-eni.com © Ediciones ENI 3/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

56
2.8 Argumentos con nombre
57
2.9 Llamar a un procedimiento
59
2.10 Llamar a una función VBA en una fórmula Excel
59
2.11 Ejemplos de procedimientos y funciones
62

3. Variables
63
3.1 Tipos de variables
63
3.2 Declaración de variables
68
3.2.1 Declaraciones implícitas
68
3.2.2 Declaraciones explícitas
69
3.2.3 Sintaxis de las instrucciones de declaración
69
3.3 Declaración de los tipos de variables
70
3.3.1 Declaraciones explícitas del tipo
70
3.3.2 Declaraciones implícitas del tipo
71
3.4 Matrices
73
3.5 Constantes
75
3.5.1 Constantes personalizadas
75
3.5.2 Constantes integradas
76

4. Estructuras de decisión
77
4.1 Instrucción If
77

www.ediciones-eni.com © Ediciones ENI 4/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

4.2 Instrucción Select Case


80

5. Estructuras en ciclo
82
5.1 Instrucción Do...Loop
82
5.2 Instrucción While...Wend
84
5.3 Instrucción For...Next
84
5.4 Instrucción For Each...Next
86
5.5 Salir de las estructuras de control
87

6. Operadores
88
6.1 Operadores aritméticos
88
6.2 Operadores de comparación
89
6.3 Operadores lógicos
90
6.4 Operador de concatenación
90
6.5 Prioridad de los operadores
91

7. Reglas de escritura del código


92
7.1 Comentarios
92
7.2 Carácter de continuación
92
7.3 Sangrías
93
7.4 Nombres de los procedimientos, variables y constantes
93

www.ediciones-eni.com © Ediciones ENI 5/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

La programación de objetos en Excel


1. Presentación
95

2. El modelo de objetos de Excel


96
2.1 Presentación
96
2.2 Objetos y colecciones
97

3. Principios de uso de los objetos y las colecciones


100
3.1 Propiedades
100
3.2 Propiedades que representan objetos
100
3.3 Métodos
102
3.4 Eventos
103
3.5 Colecciones
104
3.6 Redacción automática de instrucciones
106

4. Instrucciones usadas con los objetos


108
4.1 La instrucción With
108
4.2 La instrucción For Each...Next
109
4.3 La instrucción If TypeOf
109
4.4 La instrucción Set
110

5. El Examinador de objetos

www.ediciones-eni.com © Ediciones ENI 6/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

111
5.1 Presentación
111
5.2 Búsqueda en el Examinador de objetos
113

Objetos de Excel
1. El objeto Application
115
1.1 Propiedades que representan las opciones de Excel
116
1.1.1 Opciones de la categoría General
116
1.1.2 Opciones de la categoría Fórmulas
117
1.1.3 Opciones de la categoría Revisión
119
1.1.4 Opciones de la categoría Guardar
121
1.1.5 Opciones de la categoría Avanzadas
122
1.2 Propiedades relativas a la presentación de la aplicación
129
1.3 Propiedades varias
131
1.4 Métodos del objeto Application
135
1.4.1 Métodos que actúan sobre las fórmulas y cálculos
135
1.4.2 Métodos que actúan sobre las celdas
136
1.4.3 Métodos que actúan sobre las listas personalizadas
136
1.4.4 Métodos que muestran los cuadros de diálogo
136
1.4.5 Métodos relacionados con las acciones en Excel
137
1.4.6 Métodos relativos al correo

www.ediciones-eni.com © Ediciones ENI 7/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

138
1.4.7 Otros métodos
138
1.5 Ejemplos de códigos que usan el objeto Application
140
1.5.1 Modificación de la interfaz de Excel
140
1.5.2 Creación de una lista personalizada
140
1.5.3 Selección de columnas no consecutivas
141
1.5.4 Evaluación del resultado de una fórmula
141

2. Objeto Workbook
142
2.1 Objetos y colecciones
143
2.2 Propiedades
145
2.2.1 Propiedades relativas a la actualización y registro de libros
145
2.2.2 Propiedades relativas a libros compartidos
146
2.2.3 Otras propiedades
149
2.3 Lista de métodos
151
2.3.1 Métodos que actúan directamente sobre los libros
151
2.3.2 Métodos relativos a la seguridad
153
2.3.3 Métodos relativos a libros compartidos
153
2.3.4 Métodos relacionados con datos vinculados
154
2.3.5 Métodos relativos al envío de libros
155
2.3.6 Otros métodos
156
2.4 Ejemplos de códigos que usan el objeto Workbook

www.ediciones-eni.com © Ediciones ENI 8/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

156
2.4.1 Creación de un libro Excel
156
2.4.2 Importar una base de datos y exportarla al formato HTML
157
2.4.3 Mostrar las propiedades de un libro
158
2.4.4 Exportar un libro al formato PDF
159

3. El objeto Worksheet
159
3.1 Lista de objetos y colecciones
160
3.2 Objetos y colecciones
160
3.3 Propiedades
163
3.4 Métodos
165
3.5 Ejemplos de códigos que usan el objeto Worksheet
168
3.5.1 Ordenar las hojas de cálculo de un libro
168
3.5.2 Protección de las hojas de cálculo de un libro
169
3.5.3 Ordenar una tabla
169

4. El objeto Range
170
4.1 Propiedades y métodos que devuelven un objeto Range
170
4.2 Sintaxis de las propiedades que devuelven un objeto Range
173
4.3 Lista de objetos y colecciones
177
4.4 Propiedades
179
4.4.1 Propiedades relacionadas con la posición y el formato de las celdas
179

www.ediciones-eni.com © Ediciones ENI 9/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

4.4.2 Propiedades que se relacionan con el contenido de celdas y con las fórmulas
180
4.4.3 Otras propiedades
181
4.5 Métodos
182
4.5.1 Métodos que devuelven un objeto
182
4.5.2 Métodos que se relacionan con la presentación de las celdas
182
4.5.3 Métodos relacionados con el contenido de las celdas
184
4.5.4 Métodos relacionados con los nombres de celdas
186
4.5.5 Métodos relacionados con los filtros
186
4.5.6 Métodos relacionados con el modo esquema
187
4.5.7 Métodos que se relacionan con la herramienta de Auditoría
187
4.5.8 Otros métodos
188

5. Ejemplos de uso de los objetos


189
5.1 Cálculo del importe de un premio
189
5.2 Asignar comentarios a las celdas
191
5.3 Creación de una tabla dinámica con mini gráficos
193

Cuadros de diálogo
1. Presentación
197

2. Cuadros de diálogo integrados


198

www.ediciones-eni.com © Ediciones ENI 10/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

2.1 El objeto Dialog


198
2.2 Los métodos GetOpenFileName y GetSaveAsFileName
199

3. Cuadros de diálogo predefinidos


201
3.1 La función InputBox
201
3.2 El método InputBox
202
3.3 La función MsgBox
203
3.4 Constantes usadas en los cuadros de diálogo
207

Formularios
1. Presentación
209

2. Crear un formulario
210

3. Personalizar un formulario
219
3.1 Escribir procedimientos
219
3.2 Lista de eventos asociados a los principales controles
220
3.3 Ejecutar y cerrar un formulario
226

4. Ejemplo de formulario personalizado


227
4.1 Presentación
227
4.2 Código asociado al botón macro de la ficha Empleados

www.ediciones-eni.com © Ediciones ENI 11/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

229
4.3 Código VBA asociado al formulario
229

Mejoras en la interfaz de usuario


1. Presentación
235

2. Personalización de la cinta con la utilidad Custom UI Editor


236
2.1 Presentación de la utilidad Custom UI Editor
236
2.2 Ejemplo de código XML de personalización
238
2.3 Etiquetas XML correspondientes a los distintos elementos de la cinta
241
2.3.1 Fichas y grupos
241
2.3.2 Principales controles de la cinta de opciones
242
2.3.3 Atributos de los controles de la cinta de opciones
245
2.3.4 Resumen de los atributos para cada control
247
2.3.5 Imágenes de la galería de iconos de Microsoft Office
249
2.3.6 Funciones de llamadas Callbacks
249
2.3.7 Uso de las funciones de llamada Callbacks
252

3. Ejemplo de cinta personalizada con el Custom UI Editor


253
3.1 Presentación
253
3.2 Código XML de la cinta
255

www.ediciones-eni.com © Ediciones ENI 12/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

3.3 Código VBA de personalización de la cinta (módulo "Cinta")


257

4. Personalización de la cinta de opciones mediante la colección CommandBars


261

5. Ejemplos de barras de comandos


262
5.1 Barras de herramientas personalizadas
262
5.2 Comandos de menús en formato Office 2013
262
5.3 Agregar el grupo a la barra de herramientas de acceso rápido
262

6. Barras de comandos
264
6.1 Terminología
264
6.1.1 Barra de comandos
264
6.1.2 Control
264
6.2 Crear una barra de comandos
264
6.3 Eliminar una barra de comandos
265
6.4 Mostrar una barra de comandos
266

7. Controles (opciones o botones de comando) de las barras de comandos


267
7.1 Agregar un control
267
7.2 Especificar el título de un control
268
7.3 Eliminar un control
268
7.4 Asociar un procedimiento a un control
268

www.ediciones-eni.com © Ediciones ENI 13/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

7.5 Otras propiedades


269
7.6 Lista de imágenes asociadas a los botones de comando
270

8. Ejemplos de menús personalizados


272
8.1 Presentación
272
8.2 Código de los ejemplos
273
8.3 Código del módulo de clase ThisWorkbook
274
8.4 Código de la hoja "Nota de Gastos"
274
8.5 Código del módulo ProcMenus
275
8.6 Código del módulo ProcAction
280

Administración de eventos
1. Presentación
283

2. Escritura de eventos
284
2.1 Eventos de libro, de hoja o de formulario
284
2.2 Eventos del objeto Application
286
2.3 Evento asociado a un gráfico incrustado
289

3. Eventos del objeto Application


291

4. Eventos del objeto Workbook


296

www.ediciones-eni.com © Ediciones ENI 14/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

5. Eventos del objeto Worksheet


299

6. Eventos del objeto Chart


301

Depuración y administración de errores


1. Diferentes tipos de error
303
1.1 Errores de sintaxis
303
1.2 Errores de compilación
304
1.3 Errores de ejecución
305
1.4 Errores de lógica
306

2. Depuración
307
2.1 Presentación
307
2.2 La barra de herramientas Depuración
307
2.3 El objeto Debug
309

3. Administración de errores en VBA


310
3.1 El objeto Err
312

Comunicación con las aplicaciones Office

www.ediciones-eni.com © Ediciones ENI 15/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

1. La tecnología Automation
315
1.1 Presentación
315
1.2 Uso de la tecnología Automation
317

2. Comunicación con Word desde Excel


318
2.1 El modelo de objeto Word
318
2.2 Principales colecciones del modelo de objetos Word
319
2.3 Principales objetos del modelo de objetos Word
320
2.4 La colección Documents
322
2.5 Objetos Document
322
2.6 Ejemplo
325

3. Comunicación con Access desde Excel


327
3.1 El modelo de objeto Access
327
3.2 Principales colecciones del modelo de objeto Access
328
3.3 Principales objetos del modelo de objeto Access
328
3.4 Ejemplos
330
3.4.1 Listar tablas de una base Access
330
3.4.2 Mostrar una tabla Access en Excel
331
3.4.3 Abrir una tabla o consulta Access en un nuevo libro
332

www.ediciones-eni.com © Ediciones ENI 16/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

4. Comunicación con Outlook desde Excel


333
4.1 Objetos Outlook
333
4.2 Acceso a los objetos Outlook
334
4.2.1 Creación de un objeto (e-mail, contacto...) en Outlook
334
4.2.2 Acceso a los objetos (contactos, citas...) de Outlook
335
4.3 Ejemplo de uso del objeto MailItem
336

5. Objetos vinculados o incrustados


337
5.1 Métodos del objeto OLEObject
338
5.2 Propiedades del objeto OLEObject
338

6. Métodos y propiedades relativos a los vínculos con Excel


339
6.1 Métodos y propiedades del objeto Workbook
339
6.2 Métodos y propiedades de otros objetos
341

Internet
1. Consultas por Internet
343

2. El objeto QueryTable
345
2.1 Propiedades del objeto QueryTable
346
2.2 Ejemplos
350

www.ediciones-eni.com © Ediciones ENI 17/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

3. Publicación de páginas Web


352
3.1 Asociación de un elemento de libro a una página Web
353
3.2 Publicación de la página Web
354
3.3 Ejemplo
354

4. Los objetos WebOptions y DefaultWebOptions


355
4.1 Propiedades
356
4.1.1 Opciones de la ficha General
356
4.1.2 Opciones de la ficha Exploradores
357
4.1.3 Opciones de la ficha Archivos
358
4.1.4 Otras propiedades
358
4.2 Método del objeto WebOptions
359

5. Importar, exportar y asignar archivos XML


359
5.1 Colecciones
360
5.2 Métodos del objeto Workbook
361
5.3 Eventos del objeto Workbook
362
5.4 Métodos del objeto XmlMap
363

6. El objeto HyperLink
363
6.1 Propiedades
363

www.ediciones-eni.com © Ediciones ENI 18/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

6.2 Métodos
364

Programación Windows
1. Presentación de las API
367

2. Llamar a una función de la API Windows


369
2.1 Sintaxis de la instrucción Declare
369
2.2 Paso de argumentos
370

3. Lista de funciones API Windows


370

4. Ejemplos de uso de funciones API Windows


371
4.1 Recuperar el directorio Windows
371
4.2 Abrir la calculadora de Windows
372

5. El objeto FileSystemObject
374
5.1 Métodos
374
5.2 Propiedades
376
5.3 Ejemplo: copia de archivos Excel
376

Código de una miniaplicación

www.ediciones-eni.com © Ediciones ENI 19/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

1. Presentación general
377

2. Descripción de la aplicación GestPresupuesto


378

3. Cinta Office 2013 personalizada


380
3.1 Presentación
380
3.2 Código XML de la cinta personalizada
381

4. Módulo ThisWorbook
382
4.1 Presentación
382
4.2 Código VBA del módulo ThisWorkbook
382

5. Formulario NuevoPresupuesto
383
5.1 Presentación
383
5.2 Lista de controles
383
5.3 Lista de celdas con nombre del modelo Presupuesto.xltx
384
5.4 Código VBA del formulario NuevoPresupuesto
384

6. Formulario BuscarPresupuesto
387
6.1 Presentación
387
6.2 Lista de controles
387
6.3 Código VBA del formulario BuscarPresupuesto
388

www.ediciones-eni.com © Ediciones ENI 20/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

7. Módulos ProcCinta y ProcGene


391
7.1 Código VBA del módulo ProcCinta
391
7.2 Código VBA del módulo ProcGene
393

Anexos
1. Lista de instrucciones
397
1.1 Cadenas de caracteres
397
1.2 Fecha Hora/Matemáticas
398
1.3 Declaración
398
1.4 Error
400
1.5 Archivo
401
1.6 Estructuración
405
1.7 Sistema
406
1.8 Diversas
407

2. Lista de funciones
408
2.1 Conversiones
408
2.2 Cadenas de caracteres
410
2.3 Matemáticas
413
2.4 Financieras
415

www.ediciones-eni.com © Ediciones ENI 21/22


VBA Excel 2013
Programación en Excel: Macros y lenguaje VBA

2.5 Fechas y horas


417
2.6 Archivos, Sistema
420
2.7 Verificación de variables
422
2.8 Interacción
423
2.9 Matrices
423
2.10 SQL
424
2.11 Diversas
425
2.12 Solver
426

3. Constantes VBA
428
3.1 Constantes de color
428
3.2 Constantes de fecha
428
3.3 Constantes de teclas correspondientes a letras y números
429
3.4 Constantes de teclas de función
429
3.5 Constantes de teclas diversas
430

índice
433

www.ediciones-eni.com © Ediciones ENI 22/22

También podría gustarte