Subido por dulce castillo

Contenido 978-2-409-01318-8

Anuncio
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
Capítulo 1: Introducción
A. Introducción
14
B. ¿A quién va dirigido este libro?
14
C. ¿Qué es una macro?
14
D. ¿Qué interés tiene hacer macros?
15
E. Contenido del libro
15
Capítulo 2: El editor de Visual Basic
A. Introducción
18
B. ¿Cómo iniciar Visual Basic Editor?
18
1. Versión Excel 2003 (o anterior)
18
2. Versión Excel 2007 (o posterior)
19
C. La interfaz
20
1. Los módulos
21
2. Los cuadros de diálogo personalizados
23
www.ediciones-eni.com
© Ediciones ENI
1/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
3. Las barras de herramientas
25
Capítulo 3: La programación en Visual Basic
A. Introducción
28
B. ¿Qué es un objeto?
28
1. Propiedad de un objeto
28
2. Método de un objeto
28
C. Regla de codificación
29
1. Asociación de objetos
30
2. Asociación de propiedades o de métodos
30
D. Ayuda en línea
31
E. Codificación de las celdas y de los rangos de celdas
31
1. La celda
31
2. El rango de celdas
32
3. Las celdas nombradas
32
F. Significado del signo =
33
G. Los procedimientos
www.ediciones-eni.com
© Ediciones ENI
2/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
34
H. Las funciones
34
Capítulo 4: Primer programa
A. Introducción
38
B. La Grabadora de macros
38
1. Versión Excel 2003 (o anterior)
38
2. Versión Excel 2007 (o posterior)
39
C. Primer ejercicio
41
D. Examen del código
45
E. Ejecución del código
46
F. Otras técnicas para mejorar el código
47
1. Grabar acciones con dos hojas de cálculo
47
2. La instrucción Select
48
3. La instrucción Copy
48
4. Transferencia de datos
49
5. El bloque de datos With ... End With
49
www.ediciones-eni.com
© Ediciones ENI
3/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
6. El código optimizado
50
G. Síntesis
51
Capítulo 5: Las variables
A. Introducción
54
B. ¿Qué es una variable?
54
C. El método MsgBox
55
1. Vista de un mensaje personalizado
55
2. Ver el resultado de una variable
56
3. Personalizar el mensaje
56
D. Declaración de una variable
58
1. ¿Declaración obligatoria o no?
58
2. Comprobación de las declaraciones
59
3. Tipo de variable
60
a. Declaración de texto
60
b. Declaración de números
61
c. Declaración fechas
62
d. Declaración de objetos
www.ediciones-eni.com
© Ediciones ENI
4/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
63
e. Declaración booleana
63
f. Declaración en Variant, declaración cajón de sastre
64
4. Alcance de las variables
64
a. La instrucción Dim
64
b. La instrucción Static
65
c. La instrucción Public
66
E. Caso práctico de utilización de una variable
66
F. El método InputBox
68
G. Las tablas en memoria
69
1. Presentación
69
2. Las ventajas de trabajar con tablas
70
Capítulo 6: Las condiciones
A. Introducción
72
B. La instrucción If
72
1. Presentación
72
2. Ejemplo de aplicación
73
www.ediciones-eni.com
© Ediciones ENI
5/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
3. Explicación
74
4. Transformación del código
74
5. Abreviatura de escritura
75
6. Condición anidada
76
C. La instrucción SELECT CASE
77
1. Presentación
77
2. Ejemplo de utilización
78
a. Test a un solo valor
78
b. Test en varios valores no contiguos
78
c. Test en valores contiguos
79
3. Reversibilidad
79
D. ¿IF o SELECT CASE?
81
E. Ejemplo de uso de dos instrucciones
81
1. Crear un test en función de los parámetros
81
2. Crear los parámetros
82
3. Crear un test en el programa
83
4. Programa completo
85
Capítulo 7: Los bucles
www.ediciones-eni.com
© Ediciones ENI
6/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
A. Introducción
88
B. La instrucción For ... Next
88
1. Etapas de un bucle For ... Next
88
2. Primer ejemplo de bucle
89
3. Explicación del código
89
4. Ejemplo de bucle con dos variables
90
a. Etapa nº 1
90
b. Etapa nº 2
91
c. Etapa nº 3
91
d. Síntesis
91
C. Bucle según condición
92
1. While ... Wend
92
a. Principio
92
b. Ejemplo de aplicación
92
c. Obligación
93
2. Ejemplo de código
93
3. Do ... Loop
97
a. Presentación
97
b. Ejemplo de aplicación
97
www.ediciones-eni.com
© Ediciones ENI
7/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
c. Explicación del código
99
d. Mejora del código
99
e. Trabajar con dos hojas
101
D. Bucle en objetos Excel
102
1. Presentación
102
2. Explicación del código
102
Capítulo 8: Depuración
A. Presentación
106
B. Buenas prácticas
107
C. Lectura "Paso a paso"
108
1. La tecla 8
108
2. La combinación de teclas m 8
109
D. Inspeccionar las variables
110
E. La ventana Inspecciones
112
F. La ventana de variables locales
113
www.ediciones-eni.com
© Ediciones ENI
8/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
G. El punto de interrupción
115
H. La instrucción Debug.Print
117
I. Interrupción según condición
118
J. Intervenir durante la ejecución del código
120
1. Vuelta atrás
120
2. Cambiar manualmente el valor de las variables
121
K. Ejemplo de aplicación de la depuradora
123
1. Resolución del primer error
124
2. Resolución del segundo error
126
Capítulo 9: Estructura de un programa
A. Dividir un programa en varios procedimientos
130
1. Código inicial
130
2. División del código
131
3. La instrucción Call
132
4. El interés de dividir en varios procedimientos
133
B. Alcance de las variables
133
www.ediciones-eni.com
© Ediciones ENI
9/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
1. Vuelta a la declaración de las variables
134
a. Dim dentro de un procedimiento
134
b. Dim al principio del Módulo
134
c. Declaración en Public
136
2. Dim o Public
137
C. Parámetros de llamada
137
1. Principio de transmisión de variables locales
137
a. Respeto del tipo de variable
138
2. Ayuda en la escritura y en la navegación
139
a. Uso de las etiquetas informativas
139
b. Navegación simplificada
140
3. Flexibilidad de programación
141
a. Finalizar el programa
143
b. Procedimientos invisibles
144
D. Las llamadas a funciones
145
1. Crear una función personalizada con parámetros
145
2. Llamada a la función personalizada
146
3. Afectar un tipo a la función personalizada
147
4. Transmitir un rango de celdas
147
www.ediciones-eni.com
© Ediciones ENI
10/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
E. Ejemplo de aplicación
148
1. Etapa 1: creación del código para la primera celda
149
2. Etapa 2: extracción del cálculo de la suma en una función
149
3. Etapa 3: creación de la función Media
150
4. Etapa 4: creación del bucle para las filas y explicación del código
151
a. El código
151
b. Explicación del código
151
5. Etapa 5: creación del bucle para las columnas
152
6. Conclusión
153
F. Parámetros opcionales
154
Capítulo 10: Las funciones básicas
A. Los operadores
158
1. Los operadores aritméticos
158
2. Los operadores de comparación
159
3. Los operadores lógicos (o booleanos)
159
4. Simplificación de la escritura de los tests
160
B. Conversión de variable
161
www.ediciones-eni.com
© Ediciones ENI
11/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
1. Funciones de conversión
161
2. Probar una variable
161
C. Funciones matemáticas
162
1. Funciones usuales
162
2. Las funciones Excel
163
Capítulo 11: Administrar las listas de caracteres
A. Introducción
166
B. Funciones básicas
166
1. El operador &
166
a. Utilización en un programa
166
b. Ejemplo de uso para cambiar el nombre a una hoja
166
c. Entrar en bucle con todos los nombres
167
2. Las tres instrucciones habituales
168
a. La instrucción Left
168
b. La instrucción Right
168
c. La instrucción Len
169
d. Ejemplo de uso de instrucciones de texto
169
e. Extracción de una parte de una celda
170
www.ediciones-eni.com
© Ediciones ENI
12/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
3. Sustitución
171
a. Función Mid
171
b. Función Replace
171
4. Posicionamiento de un carácter
172
a. La instrucción InStr
172
b. La instrucción InstrRev
173
5. Cortar una cadena
174
6. Supresión de los espacios
174
7. Mayúsculas y minúsculas
174
a. Todos los caracteres en mayúsculas
174
b. Todos los caracteres en minúsculas
174
c. Primera letra en mayúscula
175
8. Invertir las letras
175
9. Comparación de cadenas
176
a. Función StrComp
176
b. Función Like
176
10. Los caracteres ASCII
177
a. La instrucción Asc
177
b. La instrucción Chr
178
C. Leer un archivo de texto
178
www.ediciones-eni.com
© Ediciones ENI
13/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
1. Abrir el archivo de texto
179
a. La ruta o el nombre del archivo
179
b. El tipo de acceso
179
c. Número de archivo
179
2. Leer una línea
180
3. La instrucción EOF
180
4. Cerrar un archivo
180
D. Crear un archivo de texto
181
1. Crear un archivo
181
2. Escribir una línea
181
3. Declarar variables
181
4. Ejemplo de aplicación
182
5. Ejercicios de aplicaciones
183
a. Nueva herramienta : Power Query
183
b. Ejercicio: Extraer los datos de un archivo de texto
184
c. Corte según un carácter de separación
190
Capítulo 12: Administración de las fechas y las horas
A. Introducción
198
www.ediciones-eni.com
© Ediciones ENI
14/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
B. Introducción a las fechas
198
1. Configurar las fechas
199
2. ¿Mi celda contiene una fecha?
200
3. Dar formato a una fecha
202
C. Las funciones básicas
203
D. Las funciones de extracción
204
1. Extracción de las fechas
204
2. Extracción de las horas
204
E. La instrucción DateSerial
205
1. Convertir un número en fecha
205
2. Realizar operaciones con las fechas
206
3. Manipulación de las fechas
206
4. Meses en letras
207
F. Calcular la diferencia entre dos fechas
209
1. La función SIFECHA en Excel
209
2. La función DATEDIFF en VBA
210
3. Integración de la función SIFECHA de Excel en VBA
211
G. Funciones de semanas
www.ediciones-eni.com
© Ediciones ENI
15/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
211
1. ¿Qué día de la semana?
211
2. Número de días laborables en la semana
211
3. Número de semana
212
4. Días festivos
213
Capítulo 13: Trabajar en un libro Excel
A. Introducción
216
B. Manipulación de los libros
216
1. Diferencia entre Workbooks y ActiveWorkbook
216
2. Abrir un libro
217
3. Cerrar un libro
217
4. Guardar un libro
218
5. Guardar un libro con un nombre nuevo
218
C. Las propiedades de un libro
218
D. Interactuar con la aplicación Excel
220
E. El objeto Application
221
1. ScreenUpdating
221
www.ediciones-eni.com
© Ediciones ENI
16/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
2. DisplayAlerts
221
3. StatusBar/DisplayStatusBar
222
4. Llamada a funciones de cálculo de Excel
223
a. Cómo usar las funciones de cálculo de Excel
223
b. La función Match
223
c. La función Index
224
5. Añadir un tiempo de latencia
225
6. El cuadro de diálogo Abrir
226
7. El cuadro de diálogo Guardar como
226
8. Suspender la comunicación con la impresora
227
9. Modo copiar-pegar suspendido
227
10. Llamada a una macro externa
227
11. Hacer que el ordenador hable
228
Capítulo 14: Trabajar con los archivos
A. Introducción
230
B. Operación con archivos
230
1. Copiar un archivo
230
2. Cambiar el nombre de un archivo
230
3. Mover un archivo
www.ediciones-eni.com
© Ediciones ENI
17/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
231
4. Eliminar un archivo
231
5. Recuperar la hora y la fecha de un archivo
232
6. Averiguar el tamaño de un archivo
232
7. Encontrar un archivo en un directorio
233
C. Operaciones con los directorios
234
1. Definir un directorio de trabajo
234
2. Crear un directorio
235
3. Eliminar un directorio
235
4. Test para saber si un directorio existe
235
D. "Barrer" un directorio
236
1. Bucles con los archivos
236
2. Bucles con los directorios
236
3. Barrer todos los subdirectorios
238
E. Recuperar los datos sin abrir un libro
240
F. Seleccionar un directorioI
241
G. Seleccionar un archivo
242
www.ediciones-eni.com
© Ediciones ENI
18/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
Capítulo 15: Optimización
A. Introducción
244
B. Instrucciones de búsqueda
244
1. El método FIND
244
2. Resultado de una búsqueda
245
3. Búsqueda del elemento siguiente
246
4. Opciones de búsqueda
247
5. Encontrar el número de la fila
248
C. Las tablas en memoria
249
1. Utilidad de trabajar con tablas en memoria
249
2. Tablas de una o dos dimensiones
249
a. Tabla de una dimensión
249
b. Tabla de dos dimensiones
251
3. Insertar datos en una tabla en memoria
252
4. Borrar una tabla
255
5. Cambiar el tamaño de una tabla
256
6. Tamaño de una tabla
257
7. Buscar en una tabla
258
a. Transferir el contenido de una tabla a un rango de datos
260
www.ediciones-eni.com
© Ediciones ENI
19/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
D. Las celdas con nombre y las tablas
261
1. Presentación
261
2. Función dentro de un programa
262
3. Coordenadas de las celdas con nombre
263
4. Uso de las tablas
264
a. El objeto ListObject
264
b. Propiedades específicas de las tablas
265
c. Problemas vinculados con la tabla
266
E. Una API para los milisegundos
268
F. El entorno de 64 bits
269
1. La instrucción PtrSafe
269
2. Las variables de 64 bits
269
3. Coexistencia de plataformas de 32 bits/64 bits
270
Capítulo 16: Llamada de aplicaciones externas
A. Introducción
272
B. Eliminar las dll que faltan
272
C. La instrucción CreateObject
www.ediciones-eni.com
© Ediciones ENI
20/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
274
D. Envío de e-mails Outlook
275
1. Programa para enviar un correo electrónico
275
2. Explicación del código
276
3. Bucles en sus contactos recogidos en una columna
276
E. Creación de un archivo PDF
277
1. Función para la generación de un archivo PDF
277
2. Exportar un libro entero
278
3. Exportar una hoja de cálculo en PDF
279
F. Conectar con una base de datos Access
280
1. Presentación
280
2. Puesta en marcha
281
3. Insertar nuevos registros en Access
283
4. Actualizar una base Access desde Excel
285
Capítulo 17: Iniciar un programa de varias maneras
A. Repaso del inicio por Visual Basic Editor
288
B. Combinación de teclas A 8
288
www.ediciones-eni.com
© Ediciones ENI
21/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
C. Inicio mediante un botón u otro objeto
289
1. Los botones
289
2. Los botones de opción (o botones radio)
291
3. Los menús desplegables
294
4. Ubicación de los objetos
298
D. Procedimiento Auto_Open/Auto_Close
300
E. Evento en una hoja de cálculo
301
1. Principio de los eventos
301
2. Lista de eventos
301
3. El evento Change
303
4. El parámetro Target
303
5. Controlar la selección
304
6. El evento SelectionChange
304
7. El evento doble clic
305
Capítulo 18: Los cuadros de diálogo personalizados
A. Introducción
308
B. Crear un cuadro de diálogo
www.ediciones-eni.com
© Ediciones ENI
22/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
308
1. Insertar un nuevo UserForm
308
2. Escribir un código en un UserForm
310
3. Hacer referencia a un UserForm
311
C. Los eventos
312
D. Los controles
313
E. Ubicación de los controles
314
F. Orden de tabulación
319
Capítulo 19: Los controles
A. Introducción
322
B. Las etiquetas (Labels o títulos)
322
C. Los cuadros de texto (o TextBox)
324
D. Los botones (o CommandButton)
325
1. Agregar un botón
326
2. El botón Cancelar
326
3. El botón Aceptar
www.ediciones-eni.com
© Ediciones ENI
23/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
326
E. Las casillas de verificación (CheckBox)
327
F. Los botones de opción (OptionButton o botones radio)
329
G. Los cuadros de lista (o ListBox)
331
1. Presentación
331
2. Manipular los datos de la lista
332
3. Alimentar una lista en el programa
335
H. Los cuadros combinados (ComboBox o menús desplegables)
337
I. Síntesis
339
Capítulo 20: Gestión de errores
A. Introducción
342
B. Las instrucciones para la gestión de errores
342
1. On Error
342
2. La instrucción Resume
342
3. La instrucción Resume Next
342
4. La instrucción Err
343
www.ediciones-eni.com
© Ediciones ENI
24/25
Macros y lenguaje VBA
Aprender a programar con Excel (3ª edición)
5. GoTo
343
6. GoTo 0
343
C. Redirección de errores
343
1. Ejemplo 1
343
2. Ejemplo 2
346
3. Ejemplo 3
346
Anexos
A. Tipos de variables
350
B. Colección de objetos
351
C. Lista de constantes
352
D. Lista de códigos de error transmitidos por Visual Basic
355
E. Lista de caracteres no imprimibles
357
índice
359
Lista de instrucciones, operadores y funciones
367
www.ediciones-eni.com
© Ediciones ENI
25/25
Descargar