Subido por hiro75

VBA Excel 2016 Programación en Excel Macros y lenguaje VBA

Anuncio
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
Presentación
1. Presentación del lenguaje VBA
17
1.1 Objetivos del lenguaje VBA
1.2 Algunas definiciones
1.3 Escritura de código VBA
17
18
19
2. Las macros de Excel
19
2.1 Mostrar la pestaña Desarrollador en la cinta de opciones
2.2 Descripción de la pestaña Desarrollador
2.2.1 Grupo Código
2.2.2 Grupo Complementos
2.2.3 Grupo Controles
2.3 Grabar una macro
2.3.1 Grabar la primera macro
2.3.2 Ejecutar una macro
2.3.3 Grabar una macro con referencias relativas
2.3.4 Definir el lugar de almacenamiento de una nueva macro
2.3.5 Eliminar una macro
2.3.6 Guardar un libro con macros
2.4 Las macros y la seguridad
2.4.1 Modificar la configuración de seguridad
2.4.2 Descripción de las diferentes opciones de seguridad
2.4.3 Habilitar las macros cuando aparece la advertencia de seguridad
2.4.4 Activar las macros en una ubicación dada
2.4.5 Firmas electrónicas de macros
2.5 Modificar el código de una macro
3. Asignar una macro
32
3.1 Acceso a una macro desde la cinta de opciones de Office 2016
3.2 Asociar una macro a un icono de la barra de herramientas de acceso rápido
3.3 Asociar una macro a un botón de comando
3.4 Asignar una macro a una imagen
3.5 Asociar una macro a una zona de un objeto gráfico
www.ediciones-eni.com
19
20
20
21
21
22
22
23
23
25
26
26
27
27
27
28
29
30
30
© Ediciones ENI
32
35
36
36
37
1/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
3.6 Asociar una macro a una imagen Control ActiveX
4. El entorno de desarrollo VBE
37
38
4.1 Acceso al entorno VBE
4.2 Cerrar el entorno VBE
4.3 Volver a Excel
4.4 Descripción del entorno VBE
4.5 Elegir las ventanas que hay que mostrar
5. Configuración del editor VBA
39
39
39
40
43
43
5.1 Configuración de la tipografía
5.2 Configuración de la introducción de código
5.3 Manejo de errores
5.4 Acoplar una ventana
43
44
45
46
El lenguaje VBA
1. Módulos
47
1.1 Presentación
1.2 Acceso a los módulos
1.3 Importar y exportar código VBA
47
49
49
2. Procedimientos
50
2.1 Definiciones
2.2 Acceso a los procedimientos
2.3 Procedimientos Sub
2.4 Procedimientos Function
2.5 Declaración de procedimientos
2.6 Alcance de los procedimientos
2.7 Argumentos de los procedimientos
2.8 Argumentos con nombre
2.9 Llamar a un procedimiento
2.10 Llamar a una función VBA en una fórmula de Excel
2.11 Ejemplos de procedimientos y funciones
www.ediciones-eni.com
© Ediciones ENI
50
51
51
52
53
54
54
55
57
57
60
2/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
3. Variables
61
3.1 Tipos de variables
3.2 Declaración de variables
3.2.1 Declaraciones implícitas
3.2.2 Declaraciones explícitas
3.2.3 Sintaxis de las instrucciones de declaración
3.3 Declaración de los tipos de variables
3.3.1 Declaraciones explícitas del tipo
3.3.2 Declaraciones implícitas del tipo
3.3.3 Convención de nombres de variables
3.4 Matrices
3.5 Constantes
3.5.1 Constantes personalizadas
3.5.2 Constantes integradas
4. Estructuras de decisión
75
4.1 Instrucción If
4.2 Instrucción Select Case
76
79
5. Estructuras en ciclo
80
5.1 Instrucción Do...Loop
5.2 Instrucción While...Wend
5.3 Instrucción For...Next
5.4 Instrucción For Each...Next
5.5 Salir de las estructuras de control
6. Operadores
81
82
83
84
86
86
6.1 Operadores aritméticos
6.2 Operadores de comparación
6.3 Operadores lógicos
6.4 Operador de concatenación
6.5 Prioridad de los operadores
87
87
88
89
89
7. Reglas de escritura del código
www.ediciones-eni.com
61
66
66
67
67
68
68
69
71
71
73
73
74
90
© Ediciones ENI
3/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
7.1 Comentarios
7.2 Carácter de continuación
7.3 Sangrías
7.4 Nombres de los procedimientos, variables y constantes
90
90
91
91
La programación de objetos en Excel
1. Presentación
93
2. El modelo de objeto de Excel
94
2.1 Presentación
2.2 Principales objetos y colecciones
94
95
3. Principios de uso de los objetos y las colecciones
98
3.1 Propiedades
3.2 Propiedades que representan objetos
3.3 Métodos
3.4 Eventos
3.5 Colecciones
3.6 Redacción automática de instrucciones
98
98
100
101
102
104
4. Instrucciones usadas con los objetos
106
4.1 La instrucción With
4.2 La instrucción For Each...Next
4.3 La instrucción If TypeOf
4.4 La instrucción Set
106
107
107
108
5. El Examinador de objetos
109
5.1 Presentación
5.2 Búsqueda en el Examinador de objetos
109
111
Objetos de Excel
www.ediciones-eni.com
© Ediciones ENI
4/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
1. El objeto Application
113
1.1 Propiedades que representan las opciones de Excel
1.1.1 Opciones de la categoría General
1.1.2 Opciones de la categoría Fórmulas
1.1.3 Opciones de la categoría Revisión
1.1.4 Opciones de la categoría Guardar
1.1.5 Opciones de la categoría Avanzadas
1.2 Propiedades relativas a la presentación de la aplicación
1.3 Propiedades varias
1.4 Métodos del objeto Application
1.4.1 Métodos que actúan sobre las fórmulas y los cálculos
1.4.2 Métodos que actúan sobre las celdas
1.4.3 Métodos que actúan sobre las listas personalizadas
1.4.4 Métodos que muestran los cuadros de diálogo
1.4.5 Métodos relacionados con las acciones en Excel
1.4.6 Métodos relativos al correo
1.4.7 Otros métodos
1.5 Ejemplos de códigos que usan el objeto Application
1.5.1 Modificación de la interfaz de Excel
1.5.2 Creación de una lista personalizada
1.5.3 Selección de columnas no consecutivas
1.5.4 Evaluación del resultado de una fórmula
2. Objeto Workbook
139
2.1 Objetos y colecciones
2.2 Propiedades
2.2.1 Propiedades relativas a la actualización y registro de libros
2.2.2 Propiedades relativas a libros compartidos
2.2.3 Otras propiedades
2.3 Lista de métodos
2.3.1 Métodos que actúan directamente sobre los libros
2.3.2 Métodos relativos a la seguridad
2.3.3 Métodos relativos a libros compartidos
2.3.4 Métodos relacionados con datos vinculados
www.ediciones-eni.com
114
114
115
117
118
119
126
128
132
132
133
133
134
134
135
136
137
137
137
138
138
© Ediciones ENI
140
142
142
143
146
148
148
150
150
151
5/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
2.3.5 Métodos relativos al envío de libros
2.3.6 Otros métodos
2.4 Ejemplos de códigos que usan el objeto Workbook
2.4.1 Creación de un libro de Excel
2.4.2 Importar una base de datos y exportarla al formato HTML
2.4.3 Mostrar las propiedades de un libro
2.4.4 Exportar un libro al formato PDF
3. El objeto Worksheet
152
153
153
153
154
155
156
156
3.1 Lista de objetos y colecciones
3.2 Objetos y colecciones
3.3 Propiedades
3.4 Métodos
3.5 Ejemplos de códigos que usan el objeto Worksheet
3.5.1 Ordenar las hojas de cálculo de un libro
3.5.2 Protección de las hojas de cálculo de un libro
3.5.3 Ordenar una tabla
4. El objeto Range
157
157
160
162
165
165
166
166
167
4.1 Propiedades y métodos que devuelven un objeto Range
167
4.2 Sintaxis de las propiedades que devuelven un objeto Range
170
4.3 Lista de objetos y colecciones
174
4.4 Propiedades
176
4.4.1 Propiedades relacionadas con la posición y el formato de las celdas
176
4.4.2 Propiedades que se relacionan con el contenido de celdas y con las fórmulas
177
4.4.3 Otras propiedades
178
4.5 Métodos
179
4.5.1 Métodos que devuelven un objeto
179
4.5.2 Métodos que se relacionan con la presentación de las celdas
179
4.5.3 Métodos relacionados con el contenido de las celdas
181
4.5.4 Métodos relacionados con los nombres de celdas
183
4.5.5 Métodos relacionados con los filtros
183
4.5.6 Métodos relacionados con el modo esquema
184
4.5.7 Métodos que se relacionan con la herramienta de Auditoría
184
www.ediciones-eni.com
© Ediciones ENI
6/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
4.5.8 Otros métodos
185
5. Ejemplos de uso de los objetos
186
5.1 Cálculo del importe de una prima
5.2 Asignar comentarios a las celdas
186
188
Tablas dinámicas y gráficos
1. Las tablas dinámicas
191
1.1 El objeto PivotTable
1.1.1 Colecciones
1.1.2 Propiedades
1.1.3 Métodos
1.2 Creación de una tabla dinámica
191
191
192
196
196
2. Los gráficos
197
2.1 El objeto Shape
2.1.1 Propiedades
2.1.2 Métodos
2.2 El objeto Chart
2.2.1 Colecciones
2.2.2 Propiedades
2.2.3 Métodos
2.3 Creación de un gráfico
197
197
198
198
198
198
199
200
3. Ejemplo de aplicación
201
3.1 Presentación
3.2 Código VBA del ejemplo
201
202
4. Creación de una tabla dinámica con minigráficos
210
Cuadros de diálogo
www.ediciones-eni.com
© Ediciones ENI
7/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
1. Presentación
215
2. Cuadros de diálogo integrados
216
2.1 El objeto Dialog
2.2 Los métodos GetOpenFileName y GetSaveAsFileName
3. Cuadros de diálogo predefinidos
216
217
219
3.1 La función InputBox
3.2 El método InputBox
3.3 La función MsgBox
3.4 Constantes usadas en los cuadros de diálogo
219
220
221
225
Formularios
1. Presentación
227
2. Crear un formulario
228
3. Personalizar un formulario
237
3.1 Escribir procedimientos
3.2 Lista de eventos asociados a los principales controles
3.3 Ejecutar y cerrar un formulario
4. Ejemplo de formulario personalizado
237
238
244
245
4.1 Presentación
4.2 Código asociado al botón macro de la pestaña Empleados
4.3 Código VBA asociado al formulario
245
247
247
Mejoras en la interfaz de usuario
www.ediciones-eni.com
© Ediciones ENI
8/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
1. Presentación
253
2. Personalización de la cinta con la utilidad Custom UI Editor
254
2.1 Presentación de la utilidad Custom UI Editor
2.2 Ejemplo de código XML de personalización
2.3 Etiquetas XML correspondientes a los distintos elementos de la cinta
2.3.1 Pestañas y grupos
2.3.2 Principales controles de la cinta de opciones
2.3.3 Atributos de los controles de la cinta de opciones
2.3.4 Resumen de los atributos para cada control
2.3.5 Imágenes de la galería de iconos de Microsoft Office
2.3.6 Funciones de llamadas Callbacks
2.3.7 Uso de las funciones de llamada Callbacks
3. Ejemplo de cinta personalizada con el Custom UI Editor
3.1 Presentación
3.2 Código XML de la cinta
3.3 Código VBA de personalización de la cinta (módulo "Cinta")
254
256
259
259
260
263
265
267
267
270
271
271
273
275
4. Personalización de la cinta de opciones mediante la colección CommandBars
279
5. Ejemplos de barras de comandos
280
5.1 Barras de herramientas personalizadas
5.2 Comandos de menús en formato Office 2016
5.3 Agregar el grupo a la barra de herramientas de acceso rápido
6. Barras de comandos
282
6.1 Terminología
6.1.1 Barra de comandos
6.1.2 Control
6.2 Crear una barra de comandos
6.3 Eliminar una barra de comandos
6.4 Mostrar una barra de comandos
www.ediciones-eni.com
280
280
281
© Ediciones ENI
282
282
282
282
284
284
9/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
7. Controles (opciones o botones de comando) de las barras de comandos
7.1 Agregar un control
7.2 Especificar el título de un control
7.3 Eliminar un control
7.4 Asociar un procedimiento a un control
7.5 Otras propiedades
7.6 Lista de imágenes asociadas a los botones de comando
8. Ejemplos de menús personalizados
285
285
286
287
287
287
289
290
8.1 Presentación
8.2 Código de los ejemplos
8.3 Código del módulo de clase ThisWorkbook
8.4 Código de la hoja "Nota de Gastos"
8.5 Código del módulo ProcMenus
8.6 Código del módulo ProcAction
290
292
292
293
293
298
Administración de eventos
1. Presentación
301
2. Escritura de eventos
302
2.1 Eventos de libro, de hoja o de formulario
2.2 Eventos del objeto Application
2.3 Evento asociado a un gráfico incrustado
302
304
307
3. Eventos del objeto Application
309
4. Eventos del objeto Workbook
314
5. Eventos del objeto Worksheet
317
www.ediciones-eni.com
© Ediciones ENI
10/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
6. Eventos del objeto Chart
319
Depuración y administración de errores
1. Diferentes tipos de error
321
1.1 Errores de sintaxis
1.2 Errores de compilación
1.3 Errores de ejecución
1.4 Errores de lógica
321
322
323
324
2. Depuración
325
2.1 Presentación
2.2 La barra de herramientas Depuración
2.3 El objeto Debug
3. Administración de errores en VBA
325
325
327
328
3.1 El objeto Err
330
Comunicación con las aplicaciones de Office
1. La tecnología Automation
333
1.1 Presentación
1.2 Uso de la tecnología Automation
2. Comunicación con Word desde Excel
336
2.1 El modelo de objeto de Word
2.2 Principales colecciones del modelo de objeto de Word
2.3 Principales objetos del modelo de objeto de Word
2.4 La colección Documents
2.5 Objetos Document
2.6 Ejemplo
www.ediciones-eni.com
333
334
© Ediciones ENI
336
337
338
339
340
342
11/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
3. Comunicación con Access desde Excel
3.1 El modelo de objeto de Access
3.2 Principales colecciones del modelo de objeto de Access
3.3 Principales objetos del modelo de objeto de Access
3.4 Ejemplos
3.4.1 Listar tablas de una base de Access
3.4.2 Mostrar una tabla de Access en Excel
3.4.3 Abrir una tabla o consulta de Access en un nuevo libro
4. Comunicación con Outlook desde Excel
4.1 Objetos de Outlook
4.2 Acceso a los objetos de Outlook
4.2.1 Creación de un objeto (e-mail, contacto...) en Outlook
4.2.2 Acceso a los objetos (contactos, citas...) de Outlook
4.3 Ejemplo de uso del objeto MailItem
5. Objetos vinculados o incrustados
345
345
346
346
348
348
348
350
351
351
352
352
353
354
355
5.1 Métodos del objeto OLEObject
5.2 Propiedades del objeto OLEObject
6. Métodos y propiedades relativos a los vínculos con Excel
6.1 Métodos y propiedades del objeto Workbook
6.2 Métodos y propiedades de otros objetos
356
356
357
357
359
Internet
1. Consultas por Internet
361
2. El objeto QueryTable
363
2.1 Propiedades del objeto QueryTable
2.2 Ejemplos
www.ediciones-eni.com
© Ediciones ENI
364
368
12/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
3. Publicación de páginas web
370
3.1 Asociación de un elemento de libro a una página web
3.2 Publicación de la página web
3.3 Ejemplo
4. Los objetos WebOptions y DefaultWebOptions
4.1 Propiedades
4.1.1 Opciones de la pestaña General
4.1.2 Opciones de la pestaña Exploradores
4.1.3 Opciones de la pestaña Archivos
4.1.4 Otras propiedades
4.2 Método del objeto WebOptions
5. Importar, exportar y asignar archivos XML
5.1 Colecciones
5.2 Métodos del objeto Workbook
5.3 Eventos del objeto Workbook
5.4 Métodos del objeto XmlMap
371
372
372
373
374
374
375
376
376
377
377
378
379
380
381
6. El objeto HyperLink
381
6.1 Propiedades
6.2 Métodos
381
382
Programación en Windows
1. Presentación de las API
383
2. Llamar a una función de la API de Windows
385
2.1 Sintaxis de la instrucción Declare
2.2 Paso de argumentos
385
386
3. Lista de funciones API de Windows
www.ediciones-eni.com
386
© Ediciones ENI
13/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
4. Ejemplos de uso de funciones API de Windows
4.1 Recuperar el directorio Windows
4.2 Abrir la calculadora de Windows
5. El objeto FileSystemObject
387
387
388
390
5.1 Métodos
5.2 Propiedades
5.3 Ejemplo: copia de archivos de Excel
390
392
392
Código de una miniaplicación
1. Presentación general
393
2. Descripción de la aplicación GestPresupuesto
394
3. Cinta de Office 2013 personalizada
396
3.1 Presentación
3.2 Código XML de la cinta personalizada
4. Módulo ThisWorbook
398
4.1 Presentación
4.2 Código VBA del módulo ThisWorkbook
5. Formulario NuevoPresupuesto
398
398
399
5.1 Presentación
5.2 Lista de controles
5.3 Lista de celdas con nombre del modelo Presupuesto.xltx
5.4 Código VBA del formulario NuevoPresupuesto
6. Formulario BuscarPresupuesto
399
399
400
400
403
6.1 Presentación
www.ediciones-eni.com
396
397
403
© Ediciones ENI
14/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
6.2 Lista de controles
6.3 Código VBA del formulario BuscarPresupuesto
7. Módulos ProcCinta y ProcGene
403
404
407
7.1 Código VBA del módulo ProcCinta
7.2 Código VBA del módulo ProcGene
407
409
Anexos
1. Lista de instrucciones
413
1.1 Cadenas de caracteres
1.2 Fecha Hora/Matemáticas
1.3 Declaración
1.4 Error
1.5 Archivo
1.6 Estructuración
1.7 Sistema
1.8 Diversas
413
414
414
416
417
421
422
423
2. Lista de funciones
424
2.1 Conversiones
2.2 Cadenas de caracteres
2.3 Matemáticas
2.4 Financieras
2.5 Fechas y horas
2.6 Archivos, Sistema
2.7 Verificación de variables
2.8 Interacción
2.9 Matrices
2.10 SQL
2.11 Diversas
2.12 Solver
424
426
429
431
433
436
438
439
439
440
441
442
3. Constantes VBA
www.ediciones-eni.com
444
© Ediciones ENI
15/16
VBA Excel 2016
Programación en Excel: Macros y lenguaje VBA
3.1
3.2
3.3
3.4
3.5
Constantes de color
Constantes de fecha
Constantes de teclas correspondientes a letras y números
Constantes de teclas de función
Constantes de teclas diversas
444
444
445
445
446
índice 449
www.ediciones-eni.com
© Ediciones ENI
16/16
Descargar