SlideShare una empresa de Scribd logo
1 de 145
Descargar para leer sin conexión
MANUAL 400 Macros para Excel
por Elsa Matilde Meyer
(para versiones Excel del 2000 al 2007 inclusive)
Copyright © 2.005-2.010 Elsa M.Meyer (Elsamatilde)
El presente manual intenta guiar al usuario a potenciar el uso de
las planillas Excel, mediante programación.
Especialmente indicado para usuarios que ya han
experimentado con sus primeras rutinas.
Cada capítulo presenta rutinas para determinados temas. Así se
pueden encontrar temas como Trabajando con Directorios, con
Libros, con Hojas, con Objetos, Filtros, Impresión, otras
aplicaciones y más.
Además un capítulo con el desarrollo paso a paso de 20
'funciones personales'
En esta VERSIÓN DEMO, solo se encuentran disponibles los
temas que aparecen en el índice con Mayúsculas.
Versión Plus
VERSIÓN DEMO
Tabla de Contenidos
0
Cap. I 1 - Introducción 15
................................................................................................................................... 15
1 BIENVENID@S
................................................................................................................................... 17
2 BREVE INTRODUCCIÓN AL EDITOR
................................................................................................................................... 18
3 Cómo crear una macro
................................................................................................................................... 18
4 Dónde colocar las macros
................................................................................................................................... 18
5 Cómo ejecutar una macro
................................................................................................................................... 18
6 Acerca de las macros Auto-Open
................................................................................................................................... 19
7 Acerca de las macros Auto-Close
................................................................................................................................... 19
8 Cómo proteger un proyecto
................................................................................................................................... 19
9 Evitar que las macros se vean desde el menú
................................................................................................................................... 19
10 Otras consideraciones: ¿Cómo...?
Cap. II 2 - Eventos, Metodos y Propiedades 21
................................................................................................................................... 21
1 EVENTOS - LISTADO
................................................................................................................................... 22
2 Especial: Eventos de Hojas
.......................................................................................................................................................... 22
Cambios y Selección en Hoja
................................................................................................................................... 22
3 Metodos
................................................................................................................................... 23
4 Propiedades
Cap. III 3 - Tratamiento de Variables 25
................................................................................................................................... 25
1 Tipo de Variables
................................................................................................................................... 25
2 DURACIÓN DE LAS VARIABLES
................................................................................................................................... 26
3 Determinar el tipo de variable
................................................................................................................................... 26
4 Convirtiendo variables
................................................................................................................................... 26
5 Limpiando variables
Cap. IV 4 - Trabajando con Cadenas 28
................................................................................................................................... 28
1 EXTRAER PARTES DE UNA CADENA
................................................................................................................................... 29
2 Armando cadenas
................................................................................................................................... 29
3 Obtener el largo de una cadena
................................................................................................................................... 29
4 Introducir caracteres especiales
................................................................................................................................... 29
5 Detectar o encontrar texto en una cadena
................................................................................................................................... 29
6 Creando cadenas de largo fijo
................................................................................................................................... 29
7 Obtener la parte numerica de una cadena
Cap. V 5 - Trabajando con Directorios y Archivos 31
Manual 400 Macros Plus
I
© <2005=2010> Elsa M.Meyer (Elsamatilde)
................................................................................................................................... 31
1 Creando un nuevo directorio
................................................................................................................................... 31
2 ESTABLECER LA RUTA DE ACCESO PREDETERMINADA
................................................................................................................................... 31
3 Establecer si un directorio existe
................................................................................................................................... 31
4 Establecer si un archivo existe en un directorio
................................................................................................................................... 32
5 Eliminar un archivo de un directorio
................................................................................................................................... 32
6 Establecer nueva unidad de disco
................................................................................................................................... 32
7 Establecer nuevo directorio o carpeta
................................................................................................................................... 32
8 Crear lista de archivos de una carpeta
................................................................................................................................... 32
9 Copiar todos los libros de una carpeta en otra
................................................................................................................................... 32
10 Obtener propiedad fecha y hora de archivos
................................................................................................................................... 32
11 Obtener tamaño de archivos
Cap. VI 6 - Trabajando con Libros 34
................................................................................................................................... 34
1 Principales Metodos y Propiedades de Libros
................................................................................................................................... 34
2 Abriendo Libros
.......................................................................................................................................................... 34
Abrir un segundo libro
.......................................................................................................................................................... 34
Abrir un libro con clave
.......................................................................................................................................................... 34
Abrir libro buscando la carpeta que lo contiene
.......................................................................................................................................................... 34
Ejecutar macro al abrir un libro
.......................................................................................................................................................... 34
Inhabilitar el mensaje de actualizar vínculos al abrir un libro
.......................................................................................................................................................... 34
Inhabilitar la opción de actualizar vínculos al abrir otros libros
.......................................................................................................................................................... 35
Al abrir libro incrementar un contador
.......................................................................................................................................................... 35
Al abrir libro ocultarlo (minimizarlo) y mostrar un Userform
.......................................................................................................................................................... 35
Impedir que un libro se abra si la fecha caducó
................................................................................................................................... 35
3 Seleccionar un libro
................................................................................................................................... 35
4 Obtener el nombre de un libro
................................................................................................................................... 35
5 Obtener la ruta de un libro
................................................................................................................................... 35
6 Activar otro libro distinto al actual
................................................................................................................................... 36
7 Impedir que se abran otros libros mientras esté nuestro libro abierto
................................................................................................................................... 36
8 CARGAR TODO EL LIBRO EN MAYÚSCULAS
................................................................................................................................... 37
9 Modificar la forma de cálculo del libro o de una hoja
................................................................................................................................... 37
10 Eliminar vinculos externos
................................................................................................................................... 37
11 Eliminar vinculos internos
................................................................................................................................... 37
12 Saber si uno o más libros existen en una carpeta
................................................................................................................................... 37
13 Crear libro como copia de cierta hoja
................................................................................................................................... 37
14 Copiar un libro sin abrirlo
................................................................................................................................... 38
15 Cambiar el nombre de un libro sin abrirlo
................................................................................................................................... 38
16 Eliminar Nombres de Rangos en libro
................................................................................................................................... 38
17 Armar un indice vinculado a cada hoja del libro
................................................................................................................................... 38
18 Guardando Libros
.......................................................................................................................................................... 38
Guardar el libro activo
.......................................................................................................................................................... 38
Guardar un libro con otro nombre
.......................................................................................................................................................... 38
Guardar un libro con otro formato (txt)
II
Contents
II
© <2005=2010> Elsa M.Meyer (Elsamatilde)
.......................................................................................................................................................... 38
Guardar un libro con clave
.......................................................................................................................................................... 39
Guardar un libro cuyo nombre será el valor de una variable
.......................................................................................................................................................... 39
Guardar un libro cuyo nombre serán datos concatenados
.......................................................................................................................................................... 39
Guardar libro sin módulos
.......................................................................................................................................................... 39
Guardar libro sin código o macros
................................................................................................................................... 39
19 Cerrando Libros
.......................................................................................................................................................... 39
Cerrar todos los libros en uso
.......................................................................................................................................................... 39
Cerrar un solo libro
.......................................................................................................................................................... 39
Cerrar un libro SIN guardar los cambios
.......................................................................................................................................................... 40
Cerrar un libro guardando los cambios
.......................................................................................................................................................... 40
Impedir el uso del botón Cerrar del libro
.......................................................................................................................................................... 40
Controlar errores antes de cerrar un libro
Cap. VII 7 - Trabajando con Hojas 42
................................................................................................................................... 42
1 MÉTODOS PARA HOJAS
................................................................................................................................... 44
2 Propiedades de las Hojas
................................................................................................................................... 44
3 Activar o seleccionar otras hojas distintas a la actual
................................................................................................................................... 44
4 Seleccionar la hoja anterior o posterior a la activa
................................................................................................................................... 44
5 Seleccionar todas las hojas de un libro
................................................................................................................................... 44
6 Devolver el nombre de la hoja en una variable
................................................................................................................................... 44
7 Formas de mostrar el nombre de hojas
................................................................................................................................... 44
8 Devolver el número de hoja en una variable
................................................................................................................................... 45
9 Proteger una hoja
................................................................................................................................... 45
10 Desproteger una hoja
................................................................................................................................... 45
11 Vista previa de la hoja activa y de otras hojas
................................................................................................................................... 45
12 Imprimir hojas
................................................................................................................................... 45
13 Insertar hojas
................................................................................................................................... 45
14 Eliminar hojas
................................................................................................................................... 45
15 Copiar hojas
................................................................................................................................... 46
16 Crear hoja/libro con un gráfico
................................................................................................................................... 46
17 Ocultar hojas
................................................................................................................................... 46
18 Mostrar hoja oculta
................................................................................................................................... 46
19 Mostrar todas las hojas ocultas de un libro
................................................................................................................................... 46
20 Impedir que se vean datos al entrar a hoja
................................................................................................................................... 46
21 Cambiar nombre a pestaña o Etiqueta de hojas
................................................................................................................................... 46
22 Cambiar color de pestaña o Etiqueta de Hojas
................................................................................................................................... 47
23 Mover o cambiar una hoja de lugar
................................................................................................................................... 47
24 Insertar imagen en una hoja
................................................................................................................................... 47
25 Ordenar las hojas alfabéticamente
................................................................................................................................... 47
26 Armar una lista con el nombre de las hojas
................................................................................................................................... 47
27 Modificar todos los hipervínculos de la hoja
................................................................................................................................... 47
28 Establecer filas y columnas a mostrar al abrir hoja
................................................................................................................................... 47
29 Establecer area visible de una hoja
Manual 400 Macros Plus
III
© <2005=2010> Elsa M.Meyer (Elsamatilde)
................................................................................................................................... 48
30 Restablecer área visible en hoja
................................................................................................................................... 48
31 Crear hojas según valores en una lista
................................................................................................................................... 48
32 Aplicar Zoom a un rango u hoja
................................................................................................................................... 48
33 Obtener el valor del Zoom aplicado a la hoja
................................................................................................................................... 48
34 Ejecutar rutina en todas las hojas del libro
................................................................................................................................... 48
35 Hojas de Diálogo: cómo ocultarlas
................................................................................................................................... 48
36 Eliminar todos los comentarios de la hoja
................................................................................................................................... 49
37 Activar hoja cada tanto tiempo
Cap. VIII 8 - Trabajando con Celdas y Rangos 51
................................................................................................................................... 51
1 Principales Méotodos para Rangos
................................................................................................................................... 51
2 PRINCIPALES PROPIEDADES DE RANGOS
................................................................................................................................... 52
3 Selección de Celdas o Rangos
................................................................................................................................... 52
4 Selección de rango utilizando variables
................................................................................................................................... 52
5 Seleccionar celdas a cierta distancia de la celda activa
................................................................................................................................... 53
6 Ampliar un rango seleccionado
................................................................................................................................... 53
7 SELECCIONAR LA REGIÓN DE LA CELDA ACTIVA
................................................................................................................................... 53
8 Seleccionar hasta la última celda vacía -Fin de rango
................................................................................................................................... 53
9 Devolver la direccion de un rango o celda
................................................................................................................................... 54
10 Encontrar última celda con datos
................................................................................................................................... 54
11 Ubicarnos en primer celda libre de una columna
................................................................................................................................... 54
12 Guardar el numero de la primer fila libre
................................................................................................................................... 54
13 Obtener ultima columna con datos
................................................................................................................................... 54
14 Obtener el número de columnas de un rango
................................................................................................................................... 54
15 Obtener el número de filas de un rango
................................................................................................................................... 54
16 Contar la cantidad de objetos de un rango
................................................................................................................................... 55
17 Acumular lo que se carga en 1 celda
................................................................................................................................... 55
18 Combinar/Descombinar celdas seleccionadas
................................................................................................................................... 55
19 Borrar o Limpiar celdas o rangos
................................................................................................................................... 55
20 Borrar celdas con cierto contenido
................................................................................................................................... 55
21 Eliminar celdas o rangos
................................................................................................................................... 55
22 Eliminar filas en blanco
................................................................................................................................... 55
23 Eliminar varias filas segun condicion
................................................................................................................................... 56
24 Insertar Filas
................................................................................................................................... 56
25 Eliminar Filas
................................................................................................................................... 56
26 Ocultar filas
................................................................................................................................... 56
27 Mostrar filas
................................................................................................................................... 56
28 Insertar Columnas
................................................................................................................................... 56
29 Eliminar columnas
................................................................................................................................... 56
30 Ocultar columnas
IV
Contents
IV
© <2005=2010> Elsa M.Meyer (Elsamatilde)
................................................................................................................................... 57
31 Mostrar Columnas
................................................................................................................................... 57
32 Insertar comentarios
................................................................................................................................... 57
33 Formatos a Celdas
................................................................................................................................... 57
34 Formato a Columnas
................................................................................................................................... 57
35 Autoajustar columnas
................................................................................................................................... 57
36 Cambiar minúsculas por mayúsculas
................................................................................................................................... 57
37 Cambiar mayúsculas por minúsculas
................................................................................................................................... 58
38 Capturar fecha y hora de carga de datos
................................................................................................................................... 58
39 Insertar Nombre de rango
................................................................................................................................... 58
40 Insertar Hipervínculos
................................................................................................................................... 58
41 Transponer una fila
................................................................................................................................... 58
42 Ordenar un rango
................................................................................................................................... 58
43 Detectar si la celda contiene formula
................................................................................................................................... 58
44 Ejemplo de fórmula con rango variable
................................................................................................................................... 59
45 Cómo conocer el color de una celda
................................................................................................................................... 59
46 Colorear celdas con mas de 3 condiciones
................................................................................................................................... 59
47 Resaltar la fila activa (1)
................................................................................................................................... 59
48 Resaltar la fila activa (2)
................................................................................................................................... 59
49 Resaltar la celda activa
................................................................................................................................... 59
50 Cambiar color de fuente a celdas con datos
................................................................................................................................... 59
51 Separar cada caracter de una cadena en distintas col
................................................................................................................................... 60
52 Quitar espacios en celdas
................................................................................................................................... 60
53 Proteger rangos o celdas
................................................................................................................................... 60
54 Recorrer celdas protegidas
Cap. IX 9 - Bucles: Instrucciones o Comandos
Especiales 62
................................................................................................................................... 62
1 Qué es un bucle?
................................................................................................................................... 62
2 FOR EACH.....NEXT
................................................................................................................................... 63
3 For ...... Next
................................................................................................................................... 63
4 While .... Wend
................................................................................................................................... 63
5 If.... ElseIf....Else....
................................................................................................................................... 63
6 Do While .... Loop
................................................................................................................................... 63
7 Do Until.... Loop
................................................................................................................................... 64
8 Uso de SET
................................................................................................................................... 64
9 With....End With
................................................................................................................................... 64
10 Uso de Select Case
Cap. X 10- Trabajando con fórmulas 66
................................................................................................................................... 66
1 Trabajando con fórmulas
Manual 400 Macros Plus
V
© <2005=2010> Elsa M.Meyer (Elsamatilde)
................................................................................................................................... 66
2 INTRODUCIR FÓRMULAS EN CELDAS
................................................................................................................................... 67
3 Armar fórmula con datos variables
................................................................................................................................... 67
4 Modificar fórmula de celda
................................................................................................................................... 67
5 Colocar resultado de fórmula en celdas
Cap. XI 11- Trabajando con Objetos Insertados en
Hoja 69
................................................................................................................................... 69
1 Algunas consideraciones previas
................................................................................................................................... 69
2 ListBox, Combobox y Textbox
.......................................................................................................................................................... 69
COMENTARIOS GENERALES
.......................................................................................................................................................... 70
Mostrar un Combobox al seleccionar hoja
.......................................................................................................................................................... 70
Ocultar un Combobox luego de seleccionar opcion
.......................................................................................................................................................... 70
Asignar rango a un Combobox
.......................................................................................................................................................... 70
Enviar texto a las columnas de un Combobox
.......................................................................................................................................................... 70
Enviar valor de un Combo a una celda
.......................................................................................................................................................... 71
Seleccionar celda cuyo valor es el ingresado en Combobox
.......................................................................................................................................................... 71
Enviar valores de Combo de 4 columnas a celdas
.......................................................................................................................................................... 71
Limpiar un combo
.......................................................................................................................................................... 71
Crear controles por macro
.......................................................................................................................................................... 71
Eliminar todos los controles de una hoja
.......................................................................................................................................................... 71
Asignar ancho de columnas en Listbox
.......................................................................................................................................................... 71
Activar hoja según valor en Lista Desplegable
.......................................................................................................................................................... 72
Buscar valor del Combo en base Devolver otros datos en textbox
.......................................................................................................................................................... 72
Mostrar valores al clic en control
.......................................................................................................................................................... 72
Llenar un control Combobox con nombres de hojas
................................................................................................................................... 72
3 Cuadros de Texto
.......................................................................................................................................................... 72
Insertar cuadro de texto y asignar algunas propiedades
.......................................................................................................................................................... 72
Funciones de comprobacion
................................................................................................................................... 72
4 Imágenes
.......................................................................................................................................................... 72
Cargar una imagen cuyo nombre se encuentra en una celda
.......................................................................................................................................................... 72
Segun valor de celda, mostrar una imagen
.......................................................................................................................................................... 73
Buscar una imagen e insertarla
.......................................................................................................................................................... 73
Insertar imagenes sobre celdas (1)
.......................................................................................................................................................... 73
Insertar imagenes sobre ciertas celdas (2)
.......................................................................................................................................................... 73
Insertar imagenes de tamaño fijo
Cap. XII 12- Controlando Teclas y Mensajes de Excel 75
................................................................................................................................... 75
1 Consideraciones generales
................................................................................................................................... 75
2 Impedir que se cancele una macro con ESC
................................................................................................................................... 75
3 Controlar la tecla ESC- Cancelar a criterio
................................................................................................................................... 75
4 No mostrar el cursor o la celda activa
................................................................................................................................... 75
5 Controlar las teclas Enter y Flechas Abajo_Arriba
................................................................................................................................... 75
6 Controlar otras teclas mediante código
................................................................................................................................... 75
7 Asignar una macro a una tecla especial
................................................................................................................................... 76
8 Ejecutar una macro al presionar Enter
................................................................................................................................... 76
9 Ejecutar una macro con Doble click
VI
Contents
VI
© <2005=2010> Elsa M.Meyer (Elsamatilde)
................................................................................................................................... 76
10 Asignar mismo atajo de teclado a varias macros
................................................................................................................................... 76
11 NO MOSTRAR AVISOS DE ALERTA
................................................................................................................................... 77
12 No mostrar aviso, al guardar un archivo, de que el archivo ya existe:
................................................................................................................................... 77
13 No mostrar la ejecución de la macro o el movimiento de hojas:
................................................................................................................................... 77
14 Inhabilitar eventos
................................................................................................................................... 77
15 Crear atajos de teclado desde una macro
Cap. XIII 13- Controlando Errores 79
................................................................................................................................... 79
1 ON ERROR RESUME NEXT
................................................................................................................................... 79
2 On Error GoTo ....
................................................................................................................................... 79
3 On Error GoTo 0
................................................................................................................................... 79
4 Err
Cap. XIV 14- Trabajando con Barras, Menues y
Pestañas 81
................................................................................................................................... 81
1 Consideraciones generales para Barras y otros
................................................................................................................................... 81
2 OCULTAR LAS PESTAÑAS DE LAS HOJAS
................................................................................................................................... 81
3 Ocultar las barras de desplazamiento
................................................................................................................................... 81
4 Ocultar los encabezados de filas y columnas
................................................................................................................................... 81
5 Ocultar barras de herramientas
................................................................................................................................... 81
6 Ocultar la barra principal de Excel
................................................................................................................................... 82
7 Ocultar elementos de la barra principal
................................................................................................................................... 82
8 Conocer número de barras y controles
................................................................................................................................... 82
9 Ocultar opciones de Impresion y Otras
................................................................................................................................... 82
10 Ocultar opciones Cortar y Copiar
................................................................................................................................... 82
11 Crear una barra personal con macro
................................................................................................................................... 82
12 Mostrar una barra de herramientas personal
................................................................................................................................... 82
13 Quitar una barra personal al salir
................................................................................................................................... 83
14 Impedir el uso del clic derecho
................................................................................................................................... 83
15 Ejecutar macro al clic derecho
................................................................................................................................... 83
16 Mostrar mensaje en Barra de Estado
................................................................................................................................... 83
17 Mostrar cajas de diálogo de Excel
................................................................................................................................... 83
18 Eliminar menu contextual de Objetos
Cap. XV 15- Uso de Cuadros de Mensaje 85
................................................................................................................................... 85
1 Construcción de MsgBox
................................................................................................................................... 85
2 MsgBox como PopUp
Cap. XVI 16- Uso de InputBox 87
................................................................................................................................... 87
1 CONSTRUCCIÓN DE INPUTBOX
................................................................................................................................... 88
2 Controlar que se ha ingresado un valor
Manual 400 Macros Plus
VII
© <2005=2010> Elsa M.Meyer (Elsamatilde)
................................................................................................................................... 88
3 Establecer un valor predeterminado en un InputBox
................................................................................................................................... 88
4 Controlar que lo ingresado a un InputBox sea referencia válida
................................................................................................................................... 88
5 Ingresar y seleccionar un rango con InputBox
................................................................................................................................... 88
6 Seleccionar datos en un rango
................................................................................................................................... 88
7 Controlar que el dato ingresado sea fecha
Cap. XVII 17- Buscando Datos 90
................................................................................................................................... 90
1 Buscar una hoja en cierto libro
................................................................................................................................... 90
2 Devolver en una celda el resultado de una búsqueda
................................................................................................................................... 90
3 Devolver todos los resultados de una búsqueda
................................................................................................................................... 90
4 Buscar un dato. Copiar la fila de todos los registros encontrados
................................................................................................................................... 90
5 Buscar un dato en un rango, posicionarse y seguir buscando
................................................................................................................................... 90
6 Controlar si un valor resultado se encuentra en la base
................................................................................................................................... 90
7 Función BuscarV devolviendo valores a la izquierda
................................................................................................................................... 91
8 Buscar cierto dato en un rango. Si se encuentra borrar la fila que lo contiene
................................................................................................................................... 91
9 BUSCAR DATOS DE 1 COLUMNA EN OTRA Y BORRAR LOS REPETIDOS
................................................................................................................................... 92
10 Evitar duplicados al cargar una base
................................................................................................................................... 92
11 Buscar un dato. Devolver en Textbox toda la fila
................................................................................................................................... 92
12 Obtener el valor de la ultima celda de una fila
Cap. XVIII 18- Evaluando y Comparando Datos 94
................................................................................................................................... 94
1 Comparando cadenas
................................................................................................................................... 94
2 Evaluar si una celda guarda fechas
................................................................................................................................... 94
3 Evaluar si un dato es numérico o no
................................................................................................................................... 94
4 EVALUAR SI UNA CELDA PRESENTA ERROR
................................................................................................................................... 94
5 Eliminar filas si las celdas de cierta columna están vacías
................................................................................................................................... 95
6 Eliminar fila si varios datos del registro cumplen una condición
................................................................................................................................... 95
7 Rellenar celdas vacías de un rango con cierto valor
................................................................................................................................... 95
8 Evaluar el color de celda
................................................................................................................................... 95
9 Eliminar filas vacías
................................................................................................................................... 95
10 Contar celdas con igual color de fuente
................................................................................................................................... 95
11 Ordenar - Controlar - borrar repetidos
................................................................................................................................... 95
12 Comparar cadenas que pueden estar en mayúsculas o minúsculas
................................................................................................................................... 96
13 Extraer la parte numérica de una cadena
................................................................................................................................... 96
14 Armar tabla con valores no duplicados
................................................................................................................................... 96
15 Armar Listas validadas, sin duplicados
................................................................................................................................... 96
16 Comparar 2 columnas. Copiar en otra las filas que coinciden
................................................................................................................................... 96
17 Comparar 2 columnas. Copiar las que NO coinciden
................................................................................................................................... 96
18 Bloquear celdas según fecha
................................................................................................................................... 96
19 Evaluando si celdas contienen #N/A-Copiar en otro destino
VIII
Contents
VIII
© <2005=2010> Elsa M.Meyer (Elsamatilde)
Cap. XIX 19- Copiando Datos 98
................................................................................................................................... 98
1 Copiar rango de datos de una hoja a la siguiente
................................................................................................................................... 98
2 Copiar solo filas impares
................................................................................................................................... 98
3 COPIAR SOLO VALORES - PEGADO ESPECIAL
................................................................................................................................... 98
4 Copiar formato - Pegado Especial
................................................................................................................................... 98
5 Pegado Especial sin seleccionar
................................................................................................................................... 99
6 Quitar fórmulas en celdas de color
................................................................................................................................... 99
7 Copiar una fórmula en la celda siguiente
................................................................................................................................... 99
8 Copiar cierta fila en otro libro. Conocer última fila con datos
................................................................................................................................... 99
9 Copiar un rango de filas en otro libro Resumen
................................................................................................................................... 99
10 Duplicar una hoja- La copia tendrá los valores, no las fórmulas
................................................................................................................................... 99
11 Copiar varios libros en uno solo
................................................................................................................................... 99
12 Copiar cabecera o columna de títulos
................................................................................................................................... 100
13 Copiar celdas de color en otro destino- Eliminar fila
Cap. XX 20- Uso de Temporizador 102
................................................................................................................................... 102
1 CARACTERÍSTICAS DEL MÉTODO ONTIME
................................................................................................................................... 102
2 Guardar el libro cada minuto
................................................................................................................................... 103
3 Mostrar un Userform durante un tiempo y ocultarlo
................................................................................................................................... 103
4 Lllamar a un Userform por unos segundos
................................................................................................................................... 103
5 Activar otra hoja cada tantos minutos
Cap. XXI 21- Trabajando con Filtros 105
................................................................................................................................... 105
1 Establecer criterio para filtro
................................................................................................................................... 105
2 Filtro en hoja protegida
................................................................................................................................... 105
3 Autofiltros con campos fecha
................................................................................................................................... 105
4 Establecer AutoFiltro con criterios en otra hoja
................................................................................................................................... 105
5 APLICAR FILTRO AVANZADO Y COPIAR RESULTADO
................................................................................................................................... 106
6 Copiar solo las filas de un Filtro avanzado en otra hoja
................................................................................................................................... 106
7 Copiar celdas filtradas sin los títulos
................................................................................................................................... 106
8 Obtener la primer fila de un filtro
................................................................................................................................... 107
9 Obtener el total de celdas filtradas
................................................................................................................................... 107
10 Seleccionar en un rango filtrado, la celda que tiene el valor de un ComboBox
................................................................................................................................... 107
11 Sumar una columna de datos en un rango filtrado
................................................................................................................................... 107
12 Quitar autofiltros solo a ciertas columnas
Cap. XXII 22- Trabajando con Gráficos 109
................................................................................................................................... 109
1 Seleccionar un gráfico ignorando su nombre
................................................................................................................................... 109
2 Cortar un gráfico de una hoja y pegarlo en otra
................................................................................................................................... 109
3 Asignar los datos de origen de un gráfico
Manual 400 Macros Plus
IX
© <2005=2010> Elsa M.Meyer (Elsamatilde)
................................................................................................................................... 109
4 Crear un gráfico en hoja nueva y guardar el libro
................................................................................................................................... 109
5 Crear gráfico con datos de hoja variable
................................................................................................................................... 109
6 Imprimir gráfico y tabla que lo alimenta
................................................................................................................................... 110
7 MODIFICANDO DIMENSIONES DE TODOS LOS GRAFICOS
................................................................................................................................... 110
8 Copiar todos los graficos en otra hoja
................................................................................................................................... 110
9 Eliminar todos los graficos de una hoja
................................................................................................................................... 110
10 Colorear series por macro
................................................................................................................................... 110
11 Ubicando un gráfico por macro
................................................................................................................................... 111
12 Recorrer todos los gráficos del libro
................................................................................................................................... 111
13 Reconocer el área del gráfico seleccionado
Cap. XXIII 23- Trabajando con Userforms 113
................................................................................................................................... 113
1 Generalidades - Crear un Userform
................................................................................................................................... 113
2 Mostrar un Userform
................................................................................................................................... 113
3 MOSTRAR UN USERFORM EN EL TOPE DE LA VENTANA
................................................................................................................................... 113
4 Ocultar un Userform
................................................................................................................................... 114
5 Cerrar un Userform
................................................................................................................................... 114
6 Desactivar el botón 'Cerrar' de un Userform
................................................................................................................................... 114
7 Inmovilizar un Userform
................................................................................................................................... 114
8 Cargar valores de inicio
................................................................................................................................... 114
9 Volcar datos de un Userform a una hoja
................................................................................................................................... 114
10 Actualizar base con datos del Userform
................................................................................................................................... 114
11 Seleccionar datos desde un Userform-RefEdit
................................................................................................................................... 115
12 Seleccionar rango para eliminar duplicados
................................................................................................................................... 115
13 Agrandar un Frame a medida que se ingresan datos
................................................................................................................................... 115
14 Validar campos numéricos en Textbox
................................................................................................................................... 115
15 Validar campos fecha en Textbox
................................................................................................................................... 115
16 Establecer separadores en campos fecha en textbox
................................................................................................................................... 115
17 Ingresar fechas sin formato en Textbox
................................................................................................................................... 115
18 Asignar formato moneda a un TextBox
................................................................................................................................... 116
19 Asignar formato Password a un textbox
................................................................................................................................... 116
20 Limpiar todos los textbox de un Userform
................................................................................................................................... 116
21 Guardar un dato del Userform antes de cerrarlo
................................................................................................................................... 116
22 Agregar un Grafico en un Userform
................................................................................................................................... 116
23 Trabajando con controles Listbox y Combobox
................................................................................................................................... 116
24 Llenar un control ListBox con nombres de hojas
................................................................................................................................... 116
25 Ejecutar una macro según valor seleccionado en Combobox
Cap. XXIV 24- Trabajando con Tablas Dinámicas 118
................................................................................................................................... 118
1 Comentarios sobre Tablas Dinámicas
X
Contents
X
© <2005=2010> Elsa M.Meyer (Elsamatilde)
................................................................................................................................... 118
2 Evitar la actualización automática de TD
................................................................................................................................... 118
3 OBTENER EL TOTAL DE UNA TABLA DINÁMICA
................................................................................................................................... 119
4 Convetir un campo en un campo de filas
................................................................................................................................... 119
5 Eliminar todas las Tablas Dinamicas de una hoja
................................................................................................................................... 119
6 Uso de variables en TD
Cap. XXV 25- Impresión 121
................................................................................................................................... 121
1 Imprimir hojas
................................................................................................................................... 121
2 Vista previa
................................................................................................................................... 121
3 Establecer área de impresión:
................................................................................................................................... 121
4 IMPEDIR LA IMPRESIÓN
................................................................................................................................... 121
5 Enviar información al Encabezado y Pié
................................................................................................................................... 121
6 Instrucciones para configurar la página
................................................................................................................................... 122
7 Llamar al cuadro de opciones para Imprimir
................................................................................................................................... 122
8 Elegir impresora por medio de código
Cap. XXVI 26- Trabajando con el entorno Excel 124
................................................................................................................................... 124
1 Ocultar Excel
................................................................................................................................... 124
2 Ocultar Excel por cierto tiempo
................................................................................................................................... 124
3 Quitar la lista de archivos abiertos del menú Archivo
................................................................................................................................... 124
4 Importar datos de otro libro Excel
................................................................................................................................... 124
5 Obtener la lista de archivos Excel de una carpeta
................................................................................................................................... 124
6 Ocultar botones de Minimizar y Maximizar
................................................................................................................................... 124
7 Inhabilitar el botón de Cerrar de Excel
................................................................................................................................... 125
8 Evitar el cierre accidental de Excel
................................................................................................................................... 125
9 Ejecutar rutinas o funciones de otros libros
................................................................................................................................... 125
10 OBTENER LISTADO DE RUTINAS DE UN LIBRO
................................................................................................................................... 126
11 Exportar módulos
................................................................................................................................... 126
12 Importar módulos guardados como txt
................................................................................................................................... 126
13 Eliminar código
................................................................................................................................... 126
14 Eliminar codigo de cierto objeto o modulo
................................................................................................................................... 126
15 Saber si un archivo existe en un directorio
................................................................................................................................... 127
16 Eliminar un archivo del directorio
................................................................................................................................... 127
17 Iniciar una nueva sesión de Excel
................................................................................................................................... 127
18 Quitar colores a la lista de la herramienta Relleno
................................................................................................................................... 127
19 Restablecer la paleta de colores
................................................................................................................................... 127
20 Determinar el tiempo que demora una rutina
................................................................................................................................... 127
21 Fijar las mayusculas para todo el libro
................................................................................................................................... 127
22 Habilitar o no la tecla BLOQNUM
................................................................................................................................... 128
23 Llamar a un archivo HELP
Manual 400 Macros Plus
XI
© <2005=2010> Elsa M.Meyer (Elsamatilde)
Cap. XXVII 27- Trabajando con otras aplicaciones 130
................................................................................................................................... 130
1 COPIAR CELDAS EXCEL A UN DOC WORD
................................................................................................................................... 130
2 Abrir un archivo de texto (CSV)
................................................................................................................................... 131
3 Imprimir un documento Word desde Excel
................................................................................................................................... 131
4 Importar Datos de Outlook
................................................................................................................................... 131
5 Enviar un libro por Mail
................................................................................................................................... 131
6 Enviar un mail
................................................................................................................................... 131
7 Enviar cuerpo de correo con saltos de línea
................................................................................................................................... 131
8 Importar datos de Access
................................................................................................................................... 131
9 Llamar a la Calculadora
................................................................................................................................... 132
10 Llamar a la aplicación WinZip
................................................................................................................................... 132
11 Ejecutar archivo de sonido al cambio en celda
Cap. XXVIII 28- Creando Complementos 134
................................................................................................................................... 134
1 Cómo crear un Complemento
................................................................................................................................... 134
2 Habilitar complementos
Cap. XXIX 29- Funciones definidas por Usuario (UDF) 136
................................................................................................................................... 136
1 CREAR FUNCIONES PERSONALES
................................................................................................................................... 136
2 Sintaxis de funciones
................................................................................................................................... 136
3 Funcion Numeros a Letras
................................................................................................................................... 137
4 Funcion Calculo del NIF (Identificador en España)
................................................................................................................................... 137
5 Funcion Digito Verificador (RUT)
................................................................................................................................... 137
6 Funcion BuscarV en varias hojas
................................................................................................................................... 137
7 Funcion Buscar el enésimo elemento
................................................................................................................................... 137
8 Funcion Encontrar ultimo dato
................................................................................................................................... 137
9 Funcion Sumar rango con error
................................................................................................................................... 137
10 Función Contar celdas de cierto color
................................................................................................................................... 138
11 Funcion Sumar celdas de cierto color
................................................................................................................................... 138
12 Funcion Extraer números a la derecha de una cadena
................................................................................................................................... 138
13 Función Contar número de vocales en una cadena
................................................................................................................................... 138
14 Función Contar número de consonantes en una cadena
................................................................................................................................... 138
15 Funcion Contar numeros pares
................................................................................................................................... 138
16 Funcion Contar numeros impares
................................................................................................................................... 138
17 Funcion Fecha creación del libro
................................................................................................................................... 139
18 Funcion Fecha ultima modificacion del libro
................................................................................................................................... 139
19 Funcion Binario (para > 500)
................................................................................................................................... 139
20 Funcion Reconocer numeros Primos
................................................................................................................................... 139
21 Funcion Nombre Dia
XII
Contents
XII
© <2005=2010> Elsa M.Meyer (Elsamatilde)
................................................................................................................................... 139
22 Funcion Nombre Mes
Cap. XXX 30- Otras Rutinas Interesantes 141
................................................................................................................................... 141
1 MOSTRAR VALORES EN COMBO SEGÚN SELECCIÓN EN OTRO
................................................................................................................................... 142
2 Ejecutar macro según valor en celda
................................................................................................................................... 142
3 Colorear celdas por condicion
................................................................................................................................... 142
4 Convertir Monedas
................................................................................................................................... 142
5 Indicar equipos disponibles en un Ciber:
................................................................................................................................... 142
6 Lotería: Ubicar valores ingresados
................................................................................................................................... 142
7 Ordenar una tabla por valores tipo Indice
................................................................................................................................... 142
8 Aplicar parpadeo continuo a celdas
................................................................................................................................... 143
9 Crear libros por cada hoja
................................................................................................................................... 143
10 Restringir uso de hojas
................................................................................................................................... 143
11 Mantener imagen fija en pantalla
................................................................................................................................... 143
12 Estado de progreso de una rutina
Manual 400 Macros Plus
XIII
© <2005=2010> Elsa M.Meyer (Elsamatilde)
Capítulo
I
Manual 400 Macros Plus
15
© <2005=2010> Elsa M.Meyer (Elsamatilde)
1 1 - Introducción
1.1 BIENVENID@S
VERSIÓN DEMO
Manual: 400 MACROS Plus
+ 20 Funciones
(v.3.0) - para versiones Excel 2000 al 2007 inclusive
La intención de este Manual es guiar al usuario de Excel a potenciar las planillas de cálculo con
programación.
NOTA: En esta versión DEMO se podrá acceder a un tema por capítulo. El mismo se
encuentra en mayúsculas en el índice.
No solo los usuarios 'programadores' sacarán provecho de este libro. Los que nunca han
trabajado con algún lenguaje de programación verán que muy fácilmente podrán 'personalizar'
sus libros adaptando o creando rutinas con código VBA (Visual Basic para Aplicaciones)
En el primer capítulo un par de temas con imágenes para familiarizarnos con el entorno Editor
de Macros.
A continuación un par de capítulos detallando conceptos que serán utilizados a lo largo del
manual: Eventos, Métodos, Variables, Cadenas y otros.
Luego siguen capítulos ordenados por objetos: Libros-Hojas-Celdas o rangos-Barras-Objetos
dibujados , etc. donde partiendo de las principales instrucciones básicas (ej: Abrir o Guardar
libros), llegaremos hasta códigos para manipular otras aplicaciones (tanto Word, Access o el
mismo entorno Windows), crear Complementos, código para controlar Barras, Teclas, Objetos,
Filtros y mucho más.
Así hasta llegar al último capítulo con 'Rutinas Interesantes' que pueden serte de utilidad o de
modelo para otras tareas, como: Colorear celdas por condición, Crear Libros por cada hoja y
muchas más.
Cada línea, cada comando se encuentra explicado en español para que puedan ser adaptados a
las necesidades y configuración de cada libro.
Contiene además imágenes que guiarán y mostrarán los resultados obtenidos una vez ejecutada
la macro.
Una característica a resaltar de este Manual es su formato y su potente buscador. Al solicitar
un tema nos devolverá la lista de entradas que aparecen en todo el libro, como en la imagen
donde se ingresó la palabra 'find' apareciendo 11 entradas (para la primer coincidencia) lo que
nos permite abarcar de manera completa el tema buscado.
1 - Introducción 16
© <2005=2010> Elsa M.Meyer (Elsamatilde)
Otra característica a resaltar de este formato, es su posibilidad de agregar comentarios en
cada tema. Podrás agregar tus propias observaciones, ejemplos u otros datos de interés.
Desde el menú Edición, Anotar encontrarás una ventana para escribir.
Cada vez que accedas a este tema, encontrarás en el margen superior un clip recordándote
que el tema tiene agregados. Haciendo clic en él, aparecerán tus notas personales.
Manual 400 Macros Plus
17
© <2005=2010> Elsa M.Meyer (Elsamatilde)
Las rutinas contenidas en este manual, fueron desarrolladas y probadas en las siguientes versiones:
Windows98/Windows XP con Office 2000, Office XP (2002) , Office 2003 y Excel 2007
En caso de dificultad para adaptar alguna rutina a tu libro, envíame tus comentarios a:
cibersoft_arg@yahoo.com.ar
1.2 BREVE INTRODUCCIÓN AL EDITOR
Qué es una macro:
Una macro es un conjunto de instrucciones en lenguaje de programación, que en el caso de
Excel se conoce como VBA (Visual Basic for Applications), que nos permite realizar ciertas tareas,
que por ser repetitivas nos valemos de una rutina para automatizarlas.
Estas instrucciones se guardan en el Editor de Macros.
Por ejemplo: al ingresar datos en una columna que nos complete el resto del registro con los
datos de otra hoja, que cada vez que ingresamos valores con cierto criterio, nos coloque un color
de fuente o fondo, etc.
El Editor de Macros:
Desde el menú Herramientas, Macros, Editor de Macros tenemos acceso a una ventana donde se
colocarán ya sea simples instrucciones, pequeñas rutinas y códigos completos de aplicaciones
como Facturación, Control de Gestión, etc.
En versión Excel 2007 se accede desde la ficha Programador, Visual Basic (primer opción)
Veamos qué encontramos en la ventana del Editor:
1 - Introducción 18
© <2005=2010> Elsa M.Meyer (Elsamatilde)
1.3 Cómo crear una macro
El tema no se encuentra disponible en esta versión DEMO
1.4 Dónde colocar las macros
El tema no se encuentra disponible en esta versión DEMO
1.5 Cómo ejecutar una macro
El tema no se encuentra disponible en esta versión DEMO
1.6 Acerca de las macros Auto-Open
El tema no se encuentra disponible en esta versión DEMO
Manual 400 Macros Plus
19
© <2005=2010> Elsa M.Meyer (Elsamatilde)
1.7 Acerca de las macros Auto-Close
El tema no se encuentra disponible en esta versión DEMO
1.8 Cómo proteger un proyecto
El tema no se encuentra disponible en esta versión DEMO
1.9 Evitar que las macros se vean desde el menú
El tema no se encuentra disponible en esta versión DEMO
1.10 Otras consideraciones: ¿Cómo...?
El tema no se encuentra disponible en esta versión DEMO
Capítulo
II
Manual 400 Macros Plus
21
© <2005=2010> Elsa M.Meyer (Elsamatilde)
2 2 - Eventos, Metodos y Propiedades
2.1 EVENTOS - LISTADO
Hemos visto en el capítulo Introducción, Cómo ejecutar una macro, que éstas pueden
ejecutarse ante un evento del libro u hoja.
¿Pero qué es un evento? es una acción que el usuario ejecuta, y tiene que ver con los objetos
Libro y Hojas, siendo los más comunes: abrir, guardar, imprimir o cerrar libros, activar o
desactivar hojas. Estas rutinas no pueden ser ejecutadas manualmente, como las que colocamos
en módulos, sino que se ejecutan al producirse el evento.
Si volvemos a la imagen que se encuentra en el capítulo Introducción, Breve introducción al
Editor, veremos los 2 cuadros desplegables: Objetos y Eventos.
Debemos seleccionar un objeto y luego optar por un evento. A continuación la primera y última
instrucción de la macro se escribirán.
Ejemplos:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'instrucciones que se ejecutarán antes de guardar el libro
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'instrucciones que se ejecutarán cada vez que se seleccione una celda
End Sub
A continuación los Eventos de Libros:
Activate: se activa el libro
AddInstall: ocurre al instalar el libro como complemento
AddUninstall: ocurre al desinstalar el libro como complemento
BeforeClose: antes de cerrar el libro
BeforePrint: antes de imprimir
BeforeSave: antes de guardar el libro
Deactivate: al desactivar el libro
NewSheet: al insertar nueva hoja
Open: al abrir el libro
SheetActivate: al activar una hoja
SheetCalculate: al efectuar cálculos en hoja
SheetChange: al efectuar cambios en hoja
SheetDeactivate: al desactivar hoja
SheetFollowHyperlink: al clic en un hipervínculo
SheetPivotTableUpdate: ocurre después de actualizar la hoja del informe de tabla dinámica
SheetSelectionChange: se produce cuando la selección cambia en una hoja
WindowActivate: cuando se activa cualquier ventana del libro
WindowDeactivate: cuando se desactiva cualquier ventana del libro
WindowResize: cuando se cambia de tamaño cualquier ventana del libro
PivotTableCloseConnection: Ocurre después de que un informe de tabla dinámica cierra la
conexión con su origen de datos.
2 - Eventos, Metodos y Propiedades 22
© <2005=2010> Elsa M.Meyer (Elsamatilde)
PivotTableOpenConnection: Ocurre después de que un informe de tabla dinámica abre la
conexión con su origen de datos
SheetBeforeDoubleClick: Ocurre al hacer doble clic en una hoja de cálculo, antes de la acción
predeterminada para el doble clic
SheetBeforeRightClick: Ocurre al hacer clic con el botón secundario del mouse (ratón) en
una hoja de cálculo, antes de la acción predeterminada.
Las rutinas colocadas en los eventos del libro (Private Sub Workbook) que hacen mención a
hojas (Sheet....) se ejecutan para todas las hojas del libro.
Principales Eventos de Hojas:
A diferencia de los últimos eventos de la lista anterior, un evento de Hoja solo se ejecuta para
el objeto Hoja donde se encuentre.
Es decir, si seleccionamos el objeto Hoja2 (Barras_Inicio) la macro de Evento que escribamos
solo se ejecutará para esta hoja 2.
Los eventos de Hojas son:
Activate: al activar esta hoja
BeforeDoubleClic: al presionar doble clic
BeforeRightClick: al clic derecho en la hoja
Calculate: al realizar cálculos en esta hoja
Change: al introducir cambios en esta hoja
Deactivate: al desactivar la hoja
FollowHyperlink: al presionar un hipervínculo
PivotTableUpdate: al actualizar una tabla dinámica en la hoja
SelectionChange: al seleccionar y pasar de celda.
Atención: también los controles colocados en un Userform tienen su lista de eventos, como
SetFocus (al recibir el enfoque), LostFocus (al perder el enfoque) y muchos más que
encontrarán en los ejemplos del capítulo Userforms
2.2 Especial: Eventos de Hojas
2.2.1 Cambios y Selección en Hoja
El tema no se encuentra disponible en esta versión DEMO
2.3 Metodos
El tema no se encuentra disponible en esta versión DEMO
Manual 400 Macros Plus
23
© <2005=2010> Elsa M.Meyer (Elsamatilde)
2.4 Propiedades
El tema no se encuentra disponible en esta versión DEMO
Capítulo
III
Manual 400 Macros Plus
25
© <2005=2010> Elsa M.Meyer (Elsamatilde)
3 3 - Tratamiento de Variables
3.1 Tipo de Variables
El tema no se encuentra disponible en esta versión DEMO
3.2 DURACIÓN DE LAS VARIABLES
Las variables pueden ser: Locales o Públicas
Variables Locales:
Las variables Locales son las que se declaran dentro de un procedimiento y sus valores sólo
pueden ser utilizados en éste. Para declararlas se utiliza la sentencia Dim, generalmente al inicio
del procedimiento, aunque también pueden ser declaradas en otros puntos del mismo.
Ejemplo:
Sub Macro1()
Dim valor1 as Integer, valor2 as Integer
Dim cadena1 as String
'otras instrucciones
End Sub
Variables Públicas:
Son las que estarán disponibles para todos los procesos, sus valores pueden ser utilizados en
cualquier módulo.
Se declaran como Public. Recomiendo utilizar un módulo especialmente destinado a la
declaración de estas variables lo que facilitará su ubicación.
Si se declararán en un módulo utilizado para otro procedimiento deberán ser las primeras
instrucciones
Ejemplo:
Option Explicit
Public minro as Byte
Sub Macro2()
'instrucciones
End Sub
Constantes:
A diferencia de las variables que modifican sus valores durante la ejecución de un proceso, las
Constantes mantienen su valor. También pueden ser Locales o Públicas
Ejemplo:
Const dia as Integer
Public Const cadena1 as String
3 - Tratamiento de Variables 26
© <2005=2010> Elsa M.Meyer (Elsamatilde)
3.3 Determinar el tipo de variable
El tema no se encuentra disponible en esta versión DEMO
3.4 Convirtiendo variables
El tema no se encuentra disponible en esta versión DEMO
3.5 Limpiando variables
El tema no se encuentra disponible en esta versión DEMO
Capítulo
IV
4 - Trabajando con Cadenas 28
© <2005=2010> Elsa M.Meyer (Elsamatilde)
4 4 - Trabajando con Cadenas
4.1 EXTRAER PARTES DE UNA CADENA
Para extraer partes de una cadena, ya sea el contenido de una celda, una variable o el
resultado de un InputBox, contamos con las siguientes funciones:
Left: devuelve el contenido de una cadena comenzando desde la izquierda a partir de la
posición indicada en el segundo argumento.
Right: devuelve lo que se encuentra a la derecha de la cadena
Len: devuelve el largo de una cadena
Mid: devuelve lo que se encuentra a partir de cierta posición y del largo establecido
InStr: devuelve la posición inicial de una cadena en otra
Ejemplos: si la celda A1 contiene el valor 'ABC567DEF'
Left(Range("A1").Value, 3) devuelve 'ABC'
Mid(Range("A1").Value, 3) devuelve 'C567DEF'
Mid(Range("A1").Value, 4, 2) devuelve "56"
Si el resultado obtenido queda como String, convertirlo a número utilizar la función Val
(*ver más sobre Conversión de variables en el capítulo: Tratamiento de Variables)
Right(Range("A1").Value, 2) devuelve 'EF'
También podemos utilizar la función InStr conjuntamente con Mid para obtener una cadena a
partir de cierto caracter.
En el ejemplo se trata de obtener el apellido sabiendo que se ubica después del caracter 'espacio'
Sub variables()
Dim esp As integer
Dim apellido As String
Dim cadena As String
cadena = "Juan Perez"
'se obtiene la ubicación del espacio
esp = InStr("Juan Perez", " ")
'se obtiene la cadena a partir de la posición del espacio
apellido = Mid(cadena, esp)
'se muestra el resultado
MsgBox apellido
End Sub
Manual 400 Macros Plus
29
© <2005=2010> Elsa M.Meyer (Elsamatilde)
4.2 Armando cadenas
El tema no se encuentra disponible en esta versión DEMO
4.3 Obtener el largo de una cadena
El tema no se encuentra disponible en esta versión DEMO
4.4 Introducir caracteres especiales
El tema no se encuentra disponible en esta versión DEMO
4.5 Detectar o encontrar texto en una cadena
El tema no se encuentra disponible en esta versión DEMO
4.6 Creando cadenas de largo fijo
El tema no se encuentra disponible en esta versión DEMO
4.7 Obtener la parte numerica de una cadena
El tema no se encuentra disponible en esta versión DEMO
Capítulo
V
Manual 400 Macros Plus
31
© <2005=2010> Elsa M.Meyer (Elsamatilde)
5 5 - Trabajando con Directorios y Archivos
5.1 Creando un nuevo directorio
El tema no se encuentra disponible en esta versión DEMO
5.2 ESTABLECER LA RUTA DE ACCESO PREDETERMINADA
En el tema anterior hemos visto que la función MkDir crea una carpeta en el directorio
predeterminado de archivos Excel, si no especificamos otra ruta.
Para conocer desde una macro esa ruta (la que se establece desde el menú Herramientas,
Opciones, General del libro Excel) utilizaremos la función CurDir.
En versión Excel2007, la ruta predeterminada se encuentra desde el botón Office,
Opciones de Excel, Guardar, Guardar Libro.
Sub ConoceDir()
Dim miRuta
'obtenemos la ruta de acceso predeterminado
miRuta = CurDir()
'mostramos el resultado en un mensaje
MsgBox miRuta
'otras instrucciones
End Sub
5.3 Establecer si un directorio existe
El tema no se encuentra disponible en esta versión DEMO
5.4 Establecer si un archivo existe en un directorio
El tema no se encuentra disponible en esta versión DEMO
5 - Trabajando con Directorios y Archivos 32
© <2005=2010> Elsa M.Meyer (Elsamatilde)
5.5 Eliminar un archivo de un directorio
El tema no se encuentra disponible en esta versión DEMO
5.6 Establecer nueva unidad de disco
El tema no se encuentra disponible en esta versión DEMO
5.7 Establecer nuevo directorio o carpeta
El tema no se encuentra disponible en esta versión DEMO
5.8 Crear lista de archivos de una carpeta
El tema no se encuentra disponible en esta versión DEMO
5.9 Copiar todos los libros de una carpeta en otra
El tema no se encuentra disponible en esta versión DEMO
5.10 Obtener propiedad fecha y hora de archivos
El tema no se encuentra disponible en esta versión DEMO
5.11 Obtener tamaño de archivos
El tema no se encuentra disponible en esta versión DEMO
Capítulo
VI
6 - Trabajando con Libros 34
© <2005=2010> Elsa M.Meyer (Elsamatilde)
6 6 - Trabajando con Libros
6.1 Principales Metodos y Propiedades de Libros
El tema no se encuentra disponible en esta versión DEMO
6.2 Abriendo Libros
6.2.1 Abrir un segundo libro
El tema no se encuentra disponible en esta versión DEMO
6.2.2 Abrir un libro con clave
El tema no se encuentra disponible en esta versión DEMO
6.2.3 Abrir libro buscando la carpeta que lo contiene
El tema no se encuentra disponible en esta versión DEMO
6.2.4 Ejecutar macro al abrir un libro
El tema no se encuentra disponible en esta versión DEMO
6.2.5 Inhabilitar el mensaje de actualizar vínculos al abrir un libro
El tema no se encuentra disponible en esta versión DEMO
6.2.6 Inhabilitar la opción de actualizar vínculos al abrir otros libros
El tema no se encuentra disponible en esta versión DEMO
Manual 400 Macros Plus
35
© <2005=2010> Elsa M.Meyer (Elsamatilde)
6.2.7 Al abrir libro incrementar un contador
El tema no se encuentra disponible en esta versión DEMO
6.2.8 Al abrir libro ocultarlo (minimizarlo) y mostrar un Userform
El tema no se encuentra disponible en esta versión DEMO
6.2.9 Impedir que un libro se abra si la fecha caducó
El tema no se encuentra disponible en esta versión DEMO
6.3 Seleccionar un libro
El tema no se encuentra disponible en esta versión DEMO
6.4 Obtener el nombre de un libro
El tema no se encuentra disponible en esta versión DEMO
6.5 Obtener la ruta de un libro
El tema no se encuentra disponible en esta versión DEMO
6.6 Activar otro libro distinto al actual
El tema no se encuentra disponible en esta versión DEMO
6 - Trabajando con Libros 36
© <2005=2010> Elsa M.Meyer (Elsamatilde)
6.7 Impedir que se abran otros libros mientras esté nuestro libro
abierto
El tema no se encuentra disponible en esta versión DEMO
6.8 CARGAR TODO EL LIBRO EN MAYÚSCULAS
Se puede forzar a que todo el libro sea cargado en mayúsculas con la expresión Ucase (o
minúsculas con Lcase), que al ser colocada en el objeto ThisWorkbook será de aplicación para
todas las hojas
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next
'controla si el contenido de la celda active es texto
If Application.WorksheetFunction.IsText(Target.Value) Then
'convierte el contenido de la celda active (Target) en mayúsculas (Ucase)
Target.Value = UCase(Target.Value)
End If
End Sub
Atención: si una celda tiene una fórmula que devuelve texto, al ser convertida en maýusculas
pierde su condición de fórmula quedando solo el texto como valor.
Para evitar esto podemos realizar la consulta con esta instrucción en lugar de la línea en verde
en la rutina anterior :
If Not ActiveCell.HasFormula and Application.WorksheetFunction.IsText(Target.Value)
Then
Para ser utilizada en una sola hoja, no en todas, en lugar de colocar la rutina en el objeto
ThisWorkbook, colocarla en la hoja deseada, seleccionándola entre los objetos que se
encuentran en la ventana del margen izquierdo, por ejemplo: Hoja1 (Hoja1)
La rutina entonces será:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
'controla si el contenido de la celda active es texto
If Application.WorksheetFunction.IsText(Target.Value) Then
'convierte el contenido de la celda active (Target) en mayúsculas (Ucase)
Target.Value = UCase(Target.Value)
End If
End Sub
Manual 400 Macros Plus
37
© <2005=2010> Elsa M.Meyer (Elsamatilde)
Nota: de la misma manera se puede forzar al uso de minúsculas reemplazando Ucase con
Lcase
Atención: ver otra rutina para convertir mayúsculas o minúsculas en el capítulo 12:
Controlando Teclas....., Ejecutar macro al presionar Enter
6.9 Modificar la forma de cálculo del libro o de una hoja
El tema no se encuentra disponible en esta versión DEMO
6.10 Eliminar vinculos externos
El tema no se encuentra disponible en esta versión DEMO
6.11 Eliminar vinculos internos
El tema no se encuentra disponible en esta versión DEMO
6.12 Saber si uno o más libros existen en una carpeta
El tema no se encuentra disponible en esta versión DEMO
6.13 Crear libro como copia de cierta hoja
El tema no se encuentra disponible en esta versión DEMO
6.14 Copiar un libro sin abrirlo
El tema no se encuentra disponible en esta versión DEMO
6 - Trabajando con Libros 38
© <2005=2010> Elsa M.Meyer (Elsamatilde)
6.15 Cambiar el nombre de un libro sin abrirlo
El tema no se encuentra disponible en esta versión DEMO
6.16 Eliminar Nombres de Rangos en libro
El tema no se encuentra disponible en esta versión DEMO
6.17 Armar un indice vinculado a cada hoja del libro
El tema no se encuentra disponible en esta versión DEMO
6.18 Guardando Libros
6.18.1 Guardar el libro activo
El tema no se encuentra disponible en esta versión DEMO
6.18.2 Guardar un libro con otro nombre
El tema no se encuentra disponible en esta versión DEMO
6.18.3 Guardar un libro con otro formato (txt)
El tema no se encuentra disponible en esta versión DEMO
6.18.4 Guardar un libro con clave
El tema no se encuentra disponible en esta versión DEMO
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf
MANUAL_400_Macros_para_Excel.pdf

Más contenido relacionado

La actualidad más candente

Industria metalmecanica informe
Industria metalmecanica   informeIndustria metalmecanica   informe
Industria metalmecanica informeelmuniola
 
Conceptos básicos de solid works piezas y ensamblajes
Conceptos básicos de solid works piezas y ensamblajesConceptos básicos de solid works piezas y ensamblajes
Conceptos básicos de solid works piezas y ensamblajesVick White
 
Acabados superficiales, rugosidad, rectificacion
Acabados superficiales, rugosidad, rectificacionAcabados superficiales, rugosidad, rectificacion
Acabados superficiales, rugosidad, rectificacionJorge Zambonino
 
02 definiciones y simbolos
02 definiciones y simbolos02 definiciones y simbolos
02 definiciones y simbolosmetalurgico8387
 
Pseint ejercicios 2016
Pseint ejercicios 2016Pseint ejercicios 2016
Pseint ejercicios 2016Don Augusto
 
Tipos de taladros
Tipos de taladrosTipos de taladros
Tipos de taladrosjmariomunoz
 
Engranajes rectos
Engranajes rectosEngranajes rectos
Engranajes rectosRONNYB21
 
Fresado fuerza, potencia, cabezal divisor (4)
Fresado fuerza, potencia, cabezal divisor (4)Fresado fuerza, potencia, cabezal divisor (4)
Fresado fuerza, potencia, cabezal divisor (4)carloslosa
 
268523199 manual-simbolos-soldadura-ensayos-procesos-soldaduras-tecsup
268523199 manual-simbolos-soldadura-ensayos-procesos-soldaduras-tecsup268523199 manual-simbolos-soldadura-ensayos-procesos-soldaduras-tecsup
268523199 manual-simbolos-soldadura-ensayos-procesos-soldaduras-tecsupZathex Kaliz
 
Trazado y desarrollo en lámina y tubería
Trazado y  desarrollo  en  lámina  y tuberíaTrazado y  desarrollo  en  lámina  y tubería
Trazado y desarrollo en lámina y tuberíaPANGAELJAGUAR
 

La actualidad más candente (20)

Sinterización
SinterizaciónSinterización
Sinterización
 
Diseño de Experimentos
Diseño de Experimentos Diseño de Experimentos
Diseño de Experimentos
 
Industria metalmecanica informe
Industria metalmecanica   informeIndustria metalmecanica   informe
Industria metalmecanica informe
 
Hoja de procesos_polea
Hoja de procesos_poleaHoja de procesos_polea
Hoja de procesos_polea
 
Conceptos básicos de solid works piezas y ensamblajes
Conceptos básicos de solid works piezas y ensamblajesConceptos básicos de solid works piezas y ensamblajes
Conceptos básicos de solid works piezas y ensamblajes
 
Acabados superficiales, rugosidad, rectificacion
Acabados superficiales, rugosidad, rectificacionAcabados superficiales, rugosidad, rectificacion
Acabados superficiales, rugosidad, rectificacion
 
Diagrama de flujo
Diagrama de flujoDiagrama de flujo
Diagrama de flujo
 
02 definiciones y simbolos
02 definiciones y simbolos02 definiciones y simbolos
02 definiciones y simbolos
 
Pseint ejercicios 2016
Pseint ejercicios 2016Pseint ejercicios 2016
Pseint ejercicios 2016
 
Tipos de taladros
Tipos de taladrosTipos de taladros
Tipos de taladros
 
Engranajes rectos
Engranajes rectosEngranajes rectos
Engranajes rectos
 
Fresado y Torno CNC
Fresado y Torno CNCFresado y Torno CNC
Fresado y Torno CNC
 
Fresado fuerza, potencia, cabezal divisor (4)
Fresado fuerza, potencia, cabezal divisor (4)Fresado fuerza, potencia, cabezal divisor (4)
Fresado fuerza, potencia, cabezal divisor (4)
 
268523199 manual-simbolos-soldadura-ensayos-procesos-soldaduras-tecsup
268523199 manual-simbolos-soldadura-ensayos-procesos-soldaduras-tecsup268523199 manual-simbolos-soldadura-ensayos-procesos-soldaduras-tecsup
268523199 manual-simbolos-soldadura-ensayos-procesos-soldaduras-tecsup
 
Trazado y desarrollo en lámina y tubería
Trazado y  desarrollo  en  lámina  y tuberíaTrazado y  desarrollo  en  lámina  y tubería
Trazado y desarrollo en lámina y tubería
 
Ejemplos fresadora cnc
Ejemplos fresadora cncEjemplos fresadora cnc
Ejemplos fresadora cnc
 
Simbologia soldaduras une
Simbologia soldaduras uneSimbologia soldaduras une
Simbologia soldaduras une
 
Elaboracion de engranajes en el cenaculo
Elaboracion de engranajes en el cenaculoElaboracion de engranajes en el cenaculo
Elaboracion de engranajes en el cenaculo
 
Roscado
RoscadoRoscado
Roscado
 
Roscas
RoscasRoscas
Roscas
 

Similar a MANUAL_400_Macros_para_Excel.pdf

Ejercicios Excel 2010
Ejercicios Excel 2010Ejercicios Excel 2010
Ejercicios Excel 2010Ismael Fanlo
 
Manual de usuario joomla
Manual de usuario joomlaManual de usuario joomla
Manual de usuario joomlaMerovingios
 
Aprenda excel 2000 como si estuviera en primero
Aprenda excel 2000 como si estuviera en primeroAprenda excel 2000 como si estuviera en primero
Aprenda excel 2000 como si estuviera en primeroalexglezt
 
Aprenda excel 2000 como si estuviera en primero
Aprenda excel 2000 como si estuviera en primeroAprenda excel 2000 como si estuviera en primero
Aprenda excel 2000 como si estuviera en primeroAnali Ilana
 
Manual microsoft office excel 2010
Manual microsoft office excel 2010Manual microsoft office excel 2010
Manual microsoft office excel 2010ANDRES SALAZAR
 
Manual microsoft office excel 2010
Manual microsoft office excel 2010Manual microsoft office excel 2010
Manual microsoft office excel 2010proneulsa
 
Manual microsoft office excel 2010
Manual microsoft office excel 2010Manual microsoft office excel 2010
Manual microsoft office excel 2010KOKO253
 
Apuntes sobre PowerPoint 2007
Apuntes sobre PowerPoint 2007Apuntes sobre PowerPoint 2007
Apuntes sobre PowerPoint 2007tallerdenovatos
 
Cartilla de Excel gaulier
Cartilla  de Excel gaulierCartilla  de Excel gaulier
Cartilla de Excel gauliergaulier
 
manual cpd 61763 Epson SureColor T5770DM
manual cpd 61763 Epson SureColor T5770DMmanual cpd 61763 Epson SureColor T5770DM
manual cpd 61763 Epson SureColor T5770DMmistests20
 
Libre office manual usuario calc
Libre office   manual usuario calcLibre office   manual usuario calc
Libre office manual usuario calctecnologiasiguala
 

Similar a MANUAL_400_Macros_para_Excel.pdf (20)

Demo 400 macros
Demo 400 macrosDemo 400 macros
Demo 400 macros
 
macros
 macros macros
macros
 
Dm 400 macros
Dm 400 macrosDm 400 macros
Dm 400 macros
 
Ejercicios Excel 2010
Ejercicios Excel 2010Ejercicios Excel 2010
Ejercicios Excel 2010
 
Tutorial microsoft
Tutorial microsoftTutorial microsoft
Tutorial microsoft
 
Manual de usuario joomla
Manual de usuario joomlaManual de usuario joomla
Manual de usuario joomla
 
Aprenda excel 2000 como si estuviera en primero
Aprenda excel 2000 como si estuviera en primeroAprenda excel 2000 como si estuviera en primero
Aprenda excel 2000 como si estuviera en primero
 
Excel2000
Excel2000Excel2000
Excel2000
 
Aprenda excel 2000 como si estuviera en primero
Aprenda excel 2000 como si estuviera en primeroAprenda excel 2000 como si estuviera en primero
Aprenda excel 2000 como si estuviera en primero
 
Manual microsoft office excel 2010
Manual microsoft office excel 2010Manual microsoft office excel 2010
Manual microsoft office excel 2010
 
Manual microsoft office excel 2010
Manual microsoft office excel 2010Manual microsoft office excel 2010
Manual microsoft office excel 2010
 
Manual microsoft office excel 2010
Manual microsoft office excel 2010Manual microsoft office excel 2010
Manual microsoft office excel 2010
 
Manual microsoft office excel 2010
Manual microsoft office excel 2010Manual microsoft office excel 2010
Manual microsoft office excel 2010
 
Apuntes sobre PowerPoint 2007
Apuntes sobre PowerPoint 2007Apuntes sobre PowerPoint 2007
Apuntes sobre PowerPoint 2007
 
Cartilla de Excel gaulier
Cartilla  de Excel gaulierCartilla  de Excel gaulier
Cartilla de Excel gaulier
 
Memòria
MemòriaMemòria
Memòria
 
9no writter
9no writter9no writter
9no writter
 
Excel avanzado 2010
Excel avanzado 2010Excel avanzado 2010
Excel avanzado 2010
 
manual cpd 61763 Epson SureColor T5770DM
manual cpd 61763 Epson SureColor T5770DMmanual cpd 61763 Epson SureColor T5770DM
manual cpd 61763 Epson SureColor T5770DM
 
Libre office manual usuario calc
Libre office   manual usuario calcLibre office   manual usuario calc
Libre office manual usuario calc
 

Último

CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 

Último (13)

CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 

MANUAL_400_Macros_para_Excel.pdf

  • 1. MANUAL 400 Macros para Excel por Elsa Matilde Meyer (para versiones Excel del 2000 al 2007 inclusive) Copyright © 2.005-2.010 Elsa M.Meyer (Elsamatilde) El presente manual intenta guiar al usuario a potenciar el uso de las planillas Excel, mediante programación. Especialmente indicado para usuarios que ya han experimentado con sus primeras rutinas. Cada capítulo presenta rutinas para determinados temas. Así se pueden encontrar temas como Trabajando con Directorios, con Libros, con Hojas, con Objetos, Filtros, Impresión, otras aplicaciones y más. Además un capítulo con el desarrollo paso a paso de 20 'funciones personales' En esta VERSIÓN DEMO, solo se encuentran disponibles los temas que aparecen en el índice con Mayúsculas. Versión Plus VERSIÓN DEMO
  • 2. Tabla de Contenidos 0 Cap. I 1 - Introducción 15 ................................................................................................................................... 15 1 BIENVENID@S ................................................................................................................................... 17 2 BREVE INTRODUCCIÓN AL EDITOR ................................................................................................................................... 18 3 Cómo crear una macro ................................................................................................................................... 18 4 Dónde colocar las macros ................................................................................................................................... 18 5 Cómo ejecutar una macro ................................................................................................................................... 18 6 Acerca de las macros Auto-Open ................................................................................................................................... 19 7 Acerca de las macros Auto-Close ................................................................................................................................... 19 8 Cómo proteger un proyecto ................................................................................................................................... 19 9 Evitar que las macros se vean desde el menú ................................................................................................................................... 19 10 Otras consideraciones: ¿Cómo...? Cap. II 2 - Eventos, Metodos y Propiedades 21 ................................................................................................................................... 21 1 EVENTOS - LISTADO ................................................................................................................................... 22 2 Especial: Eventos de Hojas .......................................................................................................................................................... 22 Cambios y Selección en Hoja ................................................................................................................................... 22 3 Metodos ................................................................................................................................... 23 4 Propiedades Cap. III 3 - Tratamiento de Variables 25 ................................................................................................................................... 25 1 Tipo de Variables ................................................................................................................................... 25 2 DURACIÓN DE LAS VARIABLES ................................................................................................................................... 26 3 Determinar el tipo de variable ................................................................................................................................... 26 4 Convirtiendo variables ................................................................................................................................... 26 5 Limpiando variables Cap. IV 4 - Trabajando con Cadenas 28 ................................................................................................................................... 28 1 EXTRAER PARTES DE UNA CADENA ................................................................................................................................... 29 2 Armando cadenas ................................................................................................................................... 29 3 Obtener el largo de una cadena ................................................................................................................................... 29 4 Introducir caracteres especiales ................................................................................................................................... 29 5 Detectar o encontrar texto en una cadena ................................................................................................................................... 29 6 Creando cadenas de largo fijo ................................................................................................................................... 29 7 Obtener la parte numerica de una cadena Cap. V 5 - Trabajando con Directorios y Archivos 31 Manual 400 Macros Plus I © <2005=2010> Elsa M.Meyer (Elsamatilde)
  • 3. ................................................................................................................................... 31 1 Creando un nuevo directorio ................................................................................................................................... 31 2 ESTABLECER LA RUTA DE ACCESO PREDETERMINADA ................................................................................................................................... 31 3 Establecer si un directorio existe ................................................................................................................................... 31 4 Establecer si un archivo existe en un directorio ................................................................................................................................... 32 5 Eliminar un archivo de un directorio ................................................................................................................................... 32 6 Establecer nueva unidad de disco ................................................................................................................................... 32 7 Establecer nuevo directorio o carpeta ................................................................................................................................... 32 8 Crear lista de archivos de una carpeta ................................................................................................................................... 32 9 Copiar todos los libros de una carpeta en otra ................................................................................................................................... 32 10 Obtener propiedad fecha y hora de archivos ................................................................................................................................... 32 11 Obtener tamaño de archivos Cap. VI 6 - Trabajando con Libros 34 ................................................................................................................................... 34 1 Principales Metodos y Propiedades de Libros ................................................................................................................................... 34 2 Abriendo Libros .......................................................................................................................................................... 34 Abrir un segundo libro .......................................................................................................................................................... 34 Abrir un libro con clave .......................................................................................................................................................... 34 Abrir libro buscando la carpeta que lo contiene .......................................................................................................................................................... 34 Ejecutar macro al abrir un libro .......................................................................................................................................................... 34 Inhabilitar el mensaje de actualizar vínculos al abrir un libro .......................................................................................................................................................... 34 Inhabilitar la opción de actualizar vínculos al abrir otros libros .......................................................................................................................................................... 35 Al abrir libro incrementar un contador .......................................................................................................................................................... 35 Al abrir libro ocultarlo (minimizarlo) y mostrar un Userform .......................................................................................................................................................... 35 Impedir que un libro se abra si la fecha caducó ................................................................................................................................... 35 3 Seleccionar un libro ................................................................................................................................... 35 4 Obtener el nombre de un libro ................................................................................................................................... 35 5 Obtener la ruta de un libro ................................................................................................................................... 35 6 Activar otro libro distinto al actual ................................................................................................................................... 36 7 Impedir que se abran otros libros mientras esté nuestro libro abierto ................................................................................................................................... 36 8 CARGAR TODO EL LIBRO EN MAYÚSCULAS ................................................................................................................................... 37 9 Modificar la forma de cálculo del libro o de una hoja ................................................................................................................................... 37 10 Eliminar vinculos externos ................................................................................................................................... 37 11 Eliminar vinculos internos ................................................................................................................................... 37 12 Saber si uno o más libros existen en una carpeta ................................................................................................................................... 37 13 Crear libro como copia de cierta hoja ................................................................................................................................... 37 14 Copiar un libro sin abrirlo ................................................................................................................................... 38 15 Cambiar el nombre de un libro sin abrirlo ................................................................................................................................... 38 16 Eliminar Nombres de Rangos en libro ................................................................................................................................... 38 17 Armar un indice vinculado a cada hoja del libro ................................................................................................................................... 38 18 Guardando Libros .......................................................................................................................................................... 38 Guardar el libro activo .......................................................................................................................................................... 38 Guardar un libro con otro nombre .......................................................................................................................................................... 38 Guardar un libro con otro formato (txt) II Contents II © <2005=2010> Elsa M.Meyer (Elsamatilde)
  • 4. .......................................................................................................................................................... 38 Guardar un libro con clave .......................................................................................................................................................... 39 Guardar un libro cuyo nombre será el valor de una variable .......................................................................................................................................................... 39 Guardar un libro cuyo nombre serán datos concatenados .......................................................................................................................................................... 39 Guardar libro sin módulos .......................................................................................................................................................... 39 Guardar libro sin código o macros ................................................................................................................................... 39 19 Cerrando Libros .......................................................................................................................................................... 39 Cerrar todos los libros en uso .......................................................................................................................................................... 39 Cerrar un solo libro .......................................................................................................................................................... 39 Cerrar un libro SIN guardar los cambios .......................................................................................................................................................... 40 Cerrar un libro guardando los cambios .......................................................................................................................................................... 40 Impedir el uso del botón Cerrar del libro .......................................................................................................................................................... 40 Controlar errores antes de cerrar un libro Cap. VII 7 - Trabajando con Hojas 42 ................................................................................................................................... 42 1 MÉTODOS PARA HOJAS ................................................................................................................................... 44 2 Propiedades de las Hojas ................................................................................................................................... 44 3 Activar o seleccionar otras hojas distintas a la actual ................................................................................................................................... 44 4 Seleccionar la hoja anterior o posterior a la activa ................................................................................................................................... 44 5 Seleccionar todas las hojas de un libro ................................................................................................................................... 44 6 Devolver el nombre de la hoja en una variable ................................................................................................................................... 44 7 Formas de mostrar el nombre de hojas ................................................................................................................................... 44 8 Devolver el número de hoja en una variable ................................................................................................................................... 45 9 Proteger una hoja ................................................................................................................................... 45 10 Desproteger una hoja ................................................................................................................................... 45 11 Vista previa de la hoja activa y de otras hojas ................................................................................................................................... 45 12 Imprimir hojas ................................................................................................................................... 45 13 Insertar hojas ................................................................................................................................... 45 14 Eliminar hojas ................................................................................................................................... 45 15 Copiar hojas ................................................................................................................................... 46 16 Crear hoja/libro con un gráfico ................................................................................................................................... 46 17 Ocultar hojas ................................................................................................................................... 46 18 Mostrar hoja oculta ................................................................................................................................... 46 19 Mostrar todas las hojas ocultas de un libro ................................................................................................................................... 46 20 Impedir que se vean datos al entrar a hoja ................................................................................................................................... 46 21 Cambiar nombre a pestaña o Etiqueta de hojas ................................................................................................................................... 46 22 Cambiar color de pestaña o Etiqueta de Hojas ................................................................................................................................... 47 23 Mover o cambiar una hoja de lugar ................................................................................................................................... 47 24 Insertar imagen en una hoja ................................................................................................................................... 47 25 Ordenar las hojas alfabéticamente ................................................................................................................................... 47 26 Armar una lista con el nombre de las hojas ................................................................................................................................... 47 27 Modificar todos los hipervínculos de la hoja ................................................................................................................................... 47 28 Establecer filas y columnas a mostrar al abrir hoja ................................................................................................................................... 47 29 Establecer area visible de una hoja Manual 400 Macros Plus III © <2005=2010> Elsa M.Meyer (Elsamatilde)
  • 5. ................................................................................................................................... 48 30 Restablecer área visible en hoja ................................................................................................................................... 48 31 Crear hojas según valores en una lista ................................................................................................................................... 48 32 Aplicar Zoom a un rango u hoja ................................................................................................................................... 48 33 Obtener el valor del Zoom aplicado a la hoja ................................................................................................................................... 48 34 Ejecutar rutina en todas las hojas del libro ................................................................................................................................... 48 35 Hojas de Diálogo: cómo ocultarlas ................................................................................................................................... 48 36 Eliminar todos los comentarios de la hoja ................................................................................................................................... 49 37 Activar hoja cada tanto tiempo Cap. VIII 8 - Trabajando con Celdas y Rangos 51 ................................................................................................................................... 51 1 Principales Méotodos para Rangos ................................................................................................................................... 51 2 PRINCIPALES PROPIEDADES DE RANGOS ................................................................................................................................... 52 3 Selección de Celdas o Rangos ................................................................................................................................... 52 4 Selección de rango utilizando variables ................................................................................................................................... 52 5 Seleccionar celdas a cierta distancia de la celda activa ................................................................................................................................... 53 6 Ampliar un rango seleccionado ................................................................................................................................... 53 7 SELECCIONAR LA REGIÓN DE LA CELDA ACTIVA ................................................................................................................................... 53 8 Seleccionar hasta la última celda vacía -Fin de rango ................................................................................................................................... 53 9 Devolver la direccion de un rango o celda ................................................................................................................................... 54 10 Encontrar última celda con datos ................................................................................................................................... 54 11 Ubicarnos en primer celda libre de una columna ................................................................................................................................... 54 12 Guardar el numero de la primer fila libre ................................................................................................................................... 54 13 Obtener ultima columna con datos ................................................................................................................................... 54 14 Obtener el número de columnas de un rango ................................................................................................................................... 54 15 Obtener el número de filas de un rango ................................................................................................................................... 54 16 Contar la cantidad de objetos de un rango ................................................................................................................................... 55 17 Acumular lo que se carga en 1 celda ................................................................................................................................... 55 18 Combinar/Descombinar celdas seleccionadas ................................................................................................................................... 55 19 Borrar o Limpiar celdas o rangos ................................................................................................................................... 55 20 Borrar celdas con cierto contenido ................................................................................................................................... 55 21 Eliminar celdas o rangos ................................................................................................................................... 55 22 Eliminar filas en blanco ................................................................................................................................... 55 23 Eliminar varias filas segun condicion ................................................................................................................................... 56 24 Insertar Filas ................................................................................................................................... 56 25 Eliminar Filas ................................................................................................................................... 56 26 Ocultar filas ................................................................................................................................... 56 27 Mostrar filas ................................................................................................................................... 56 28 Insertar Columnas ................................................................................................................................... 56 29 Eliminar columnas ................................................................................................................................... 56 30 Ocultar columnas IV Contents IV © <2005=2010> Elsa M.Meyer (Elsamatilde)
  • 6. ................................................................................................................................... 57 31 Mostrar Columnas ................................................................................................................................... 57 32 Insertar comentarios ................................................................................................................................... 57 33 Formatos a Celdas ................................................................................................................................... 57 34 Formato a Columnas ................................................................................................................................... 57 35 Autoajustar columnas ................................................................................................................................... 57 36 Cambiar minúsculas por mayúsculas ................................................................................................................................... 57 37 Cambiar mayúsculas por minúsculas ................................................................................................................................... 58 38 Capturar fecha y hora de carga de datos ................................................................................................................................... 58 39 Insertar Nombre de rango ................................................................................................................................... 58 40 Insertar Hipervínculos ................................................................................................................................... 58 41 Transponer una fila ................................................................................................................................... 58 42 Ordenar un rango ................................................................................................................................... 58 43 Detectar si la celda contiene formula ................................................................................................................................... 58 44 Ejemplo de fórmula con rango variable ................................................................................................................................... 59 45 Cómo conocer el color de una celda ................................................................................................................................... 59 46 Colorear celdas con mas de 3 condiciones ................................................................................................................................... 59 47 Resaltar la fila activa (1) ................................................................................................................................... 59 48 Resaltar la fila activa (2) ................................................................................................................................... 59 49 Resaltar la celda activa ................................................................................................................................... 59 50 Cambiar color de fuente a celdas con datos ................................................................................................................................... 59 51 Separar cada caracter de una cadena en distintas col ................................................................................................................................... 60 52 Quitar espacios en celdas ................................................................................................................................... 60 53 Proteger rangos o celdas ................................................................................................................................... 60 54 Recorrer celdas protegidas Cap. IX 9 - Bucles: Instrucciones o Comandos Especiales 62 ................................................................................................................................... 62 1 Qué es un bucle? ................................................................................................................................... 62 2 FOR EACH.....NEXT ................................................................................................................................... 63 3 For ...... Next ................................................................................................................................... 63 4 While .... Wend ................................................................................................................................... 63 5 If.... ElseIf....Else.... ................................................................................................................................... 63 6 Do While .... Loop ................................................................................................................................... 63 7 Do Until.... Loop ................................................................................................................................... 64 8 Uso de SET ................................................................................................................................... 64 9 With....End With ................................................................................................................................... 64 10 Uso de Select Case Cap. X 10- Trabajando con fórmulas 66 ................................................................................................................................... 66 1 Trabajando con fórmulas Manual 400 Macros Plus V © <2005=2010> Elsa M.Meyer (Elsamatilde)
  • 7. ................................................................................................................................... 66 2 INTRODUCIR FÓRMULAS EN CELDAS ................................................................................................................................... 67 3 Armar fórmula con datos variables ................................................................................................................................... 67 4 Modificar fórmula de celda ................................................................................................................................... 67 5 Colocar resultado de fórmula en celdas Cap. XI 11- Trabajando con Objetos Insertados en Hoja 69 ................................................................................................................................... 69 1 Algunas consideraciones previas ................................................................................................................................... 69 2 ListBox, Combobox y Textbox .......................................................................................................................................................... 69 COMENTARIOS GENERALES .......................................................................................................................................................... 70 Mostrar un Combobox al seleccionar hoja .......................................................................................................................................................... 70 Ocultar un Combobox luego de seleccionar opcion .......................................................................................................................................................... 70 Asignar rango a un Combobox .......................................................................................................................................................... 70 Enviar texto a las columnas de un Combobox .......................................................................................................................................................... 70 Enviar valor de un Combo a una celda .......................................................................................................................................................... 71 Seleccionar celda cuyo valor es el ingresado en Combobox .......................................................................................................................................................... 71 Enviar valores de Combo de 4 columnas a celdas .......................................................................................................................................................... 71 Limpiar un combo .......................................................................................................................................................... 71 Crear controles por macro .......................................................................................................................................................... 71 Eliminar todos los controles de una hoja .......................................................................................................................................................... 71 Asignar ancho de columnas en Listbox .......................................................................................................................................................... 71 Activar hoja según valor en Lista Desplegable .......................................................................................................................................................... 72 Buscar valor del Combo en base Devolver otros datos en textbox .......................................................................................................................................................... 72 Mostrar valores al clic en control .......................................................................................................................................................... 72 Llenar un control Combobox con nombres de hojas ................................................................................................................................... 72 3 Cuadros de Texto .......................................................................................................................................................... 72 Insertar cuadro de texto y asignar algunas propiedades .......................................................................................................................................................... 72 Funciones de comprobacion ................................................................................................................................... 72 4 Imágenes .......................................................................................................................................................... 72 Cargar una imagen cuyo nombre se encuentra en una celda .......................................................................................................................................................... 72 Segun valor de celda, mostrar una imagen .......................................................................................................................................................... 73 Buscar una imagen e insertarla .......................................................................................................................................................... 73 Insertar imagenes sobre celdas (1) .......................................................................................................................................................... 73 Insertar imagenes sobre ciertas celdas (2) .......................................................................................................................................................... 73 Insertar imagenes de tamaño fijo Cap. XII 12- Controlando Teclas y Mensajes de Excel 75 ................................................................................................................................... 75 1 Consideraciones generales ................................................................................................................................... 75 2 Impedir que se cancele una macro con ESC ................................................................................................................................... 75 3 Controlar la tecla ESC- Cancelar a criterio ................................................................................................................................... 75 4 No mostrar el cursor o la celda activa ................................................................................................................................... 75 5 Controlar las teclas Enter y Flechas Abajo_Arriba ................................................................................................................................... 75 6 Controlar otras teclas mediante código ................................................................................................................................... 75 7 Asignar una macro a una tecla especial ................................................................................................................................... 76 8 Ejecutar una macro al presionar Enter ................................................................................................................................... 76 9 Ejecutar una macro con Doble click VI Contents VI © <2005=2010> Elsa M.Meyer (Elsamatilde)
  • 8. ................................................................................................................................... 76 10 Asignar mismo atajo de teclado a varias macros ................................................................................................................................... 76 11 NO MOSTRAR AVISOS DE ALERTA ................................................................................................................................... 77 12 No mostrar aviso, al guardar un archivo, de que el archivo ya existe: ................................................................................................................................... 77 13 No mostrar la ejecución de la macro o el movimiento de hojas: ................................................................................................................................... 77 14 Inhabilitar eventos ................................................................................................................................... 77 15 Crear atajos de teclado desde una macro Cap. XIII 13- Controlando Errores 79 ................................................................................................................................... 79 1 ON ERROR RESUME NEXT ................................................................................................................................... 79 2 On Error GoTo .... ................................................................................................................................... 79 3 On Error GoTo 0 ................................................................................................................................... 79 4 Err Cap. XIV 14- Trabajando con Barras, Menues y Pestañas 81 ................................................................................................................................... 81 1 Consideraciones generales para Barras y otros ................................................................................................................................... 81 2 OCULTAR LAS PESTAÑAS DE LAS HOJAS ................................................................................................................................... 81 3 Ocultar las barras de desplazamiento ................................................................................................................................... 81 4 Ocultar los encabezados de filas y columnas ................................................................................................................................... 81 5 Ocultar barras de herramientas ................................................................................................................................... 81 6 Ocultar la barra principal de Excel ................................................................................................................................... 82 7 Ocultar elementos de la barra principal ................................................................................................................................... 82 8 Conocer número de barras y controles ................................................................................................................................... 82 9 Ocultar opciones de Impresion y Otras ................................................................................................................................... 82 10 Ocultar opciones Cortar y Copiar ................................................................................................................................... 82 11 Crear una barra personal con macro ................................................................................................................................... 82 12 Mostrar una barra de herramientas personal ................................................................................................................................... 82 13 Quitar una barra personal al salir ................................................................................................................................... 83 14 Impedir el uso del clic derecho ................................................................................................................................... 83 15 Ejecutar macro al clic derecho ................................................................................................................................... 83 16 Mostrar mensaje en Barra de Estado ................................................................................................................................... 83 17 Mostrar cajas de diálogo de Excel ................................................................................................................................... 83 18 Eliminar menu contextual de Objetos Cap. XV 15- Uso de Cuadros de Mensaje 85 ................................................................................................................................... 85 1 Construcción de MsgBox ................................................................................................................................... 85 2 MsgBox como PopUp Cap. XVI 16- Uso de InputBox 87 ................................................................................................................................... 87 1 CONSTRUCCIÓN DE INPUTBOX ................................................................................................................................... 88 2 Controlar que se ha ingresado un valor Manual 400 Macros Plus VII © <2005=2010> Elsa M.Meyer (Elsamatilde)
  • 9. ................................................................................................................................... 88 3 Establecer un valor predeterminado en un InputBox ................................................................................................................................... 88 4 Controlar que lo ingresado a un InputBox sea referencia válida ................................................................................................................................... 88 5 Ingresar y seleccionar un rango con InputBox ................................................................................................................................... 88 6 Seleccionar datos en un rango ................................................................................................................................... 88 7 Controlar que el dato ingresado sea fecha Cap. XVII 17- Buscando Datos 90 ................................................................................................................................... 90 1 Buscar una hoja en cierto libro ................................................................................................................................... 90 2 Devolver en una celda el resultado de una búsqueda ................................................................................................................................... 90 3 Devolver todos los resultados de una búsqueda ................................................................................................................................... 90 4 Buscar un dato. Copiar la fila de todos los registros encontrados ................................................................................................................................... 90 5 Buscar un dato en un rango, posicionarse y seguir buscando ................................................................................................................................... 90 6 Controlar si un valor resultado se encuentra en la base ................................................................................................................................... 90 7 Función BuscarV devolviendo valores a la izquierda ................................................................................................................................... 91 8 Buscar cierto dato en un rango. Si se encuentra borrar la fila que lo contiene ................................................................................................................................... 91 9 BUSCAR DATOS DE 1 COLUMNA EN OTRA Y BORRAR LOS REPETIDOS ................................................................................................................................... 92 10 Evitar duplicados al cargar una base ................................................................................................................................... 92 11 Buscar un dato. Devolver en Textbox toda la fila ................................................................................................................................... 92 12 Obtener el valor de la ultima celda de una fila Cap. XVIII 18- Evaluando y Comparando Datos 94 ................................................................................................................................... 94 1 Comparando cadenas ................................................................................................................................... 94 2 Evaluar si una celda guarda fechas ................................................................................................................................... 94 3 Evaluar si un dato es numérico o no ................................................................................................................................... 94 4 EVALUAR SI UNA CELDA PRESENTA ERROR ................................................................................................................................... 94 5 Eliminar filas si las celdas de cierta columna están vacías ................................................................................................................................... 95 6 Eliminar fila si varios datos del registro cumplen una condición ................................................................................................................................... 95 7 Rellenar celdas vacías de un rango con cierto valor ................................................................................................................................... 95 8 Evaluar el color de celda ................................................................................................................................... 95 9 Eliminar filas vacías ................................................................................................................................... 95 10 Contar celdas con igual color de fuente ................................................................................................................................... 95 11 Ordenar - Controlar - borrar repetidos ................................................................................................................................... 95 12 Comparar cadenas que pueden estar en mayúsculas o minúsculas ................................................................................................................................... 96 13 Extraer la parte numérica de una cadena ................................................................................................................................... 96 14 Armar tabla con valores no duplicados ................................................................................................................................... 96 15 Armar Listas validadas, sin duplicados ................................................................................................................................... 96 16 Comparar 2 columnas. Copiar en otra las filas que coinciden ................................................................................................................................... 96 17 Comparar 2 columnas. Copiar las que NO coinciden ................................................................................................................................... 96 18 Bloquear celdas según fecha ................................................................................................................................... 96 19 Evaluando si celdas contienen #N/A-Copiar en otro destino VIII Contents VIII © <2005=2010> Elsa M.Meyer (Elsamatilde)
  • 10. Cap. XIX 19- Copiando Datos 98 ................................................................................................................................... 98 1 Copiar rango de datos de una hoja a la siguiente ................................................................................................................................... 98 2 Copiar solo filas impares ................................................................................................................................... 98 3 COPIAR SOLO VALORES - PEGADO ESPECIAL ................................................................................................................................... 98 4 Copiar formato - Pegado Especial ................................................................................................................................... 98 5 Pegado Especial sin seleccionar ................................................................................................................................... 99 6 Quitar fórmulas en celdas de color ................................................................................................................................... 99 7 Copiar una fórmula en la celda siguiente ................................................................................................................................... 99 8 Copiar cierta fila en otro libro. Conocer última fila con datos ................................................................................................................................... 99 9 Copiar un rango de filas en otro libro Resumen ................................................................................................................................... 99 10 Duplicar una hoja- La copia tendrá los valores, no las fórmulas ................................................................................................................................... 99 11 Copiar varios libros en uno solo ................................................................................................................................... 99 12 Copiar cabecera o columna de títulos ................................................................................................................................... 100 13 Copiar celdas de color en otro destino- Eliminar fila Cap. XX 20- Uso de Temporizador 102 ................................................................................................................................... 102 1 CARACTERÍSTICAS DEL MÉTODO ONTIME ................................................................................................................................... 102 2 Guardar el libro cada minuto ................................................................................................................................... 103 3 Mostrar un Userform durante un tiempo y ocultarlo ................................................................................................................................... 103 4 Lllamar a un Userform por unos segundos ................................................................................................................................... 103 5 Activar otra hoja cada tantos minutos Cap. XXI 21- Trabajando con Filtros 105 ................................................................................................................................... 105 1 Establecer criterio para filtro ................................................................................................................................... 105 2 Filtro en hoja protegida ................................................................................................................................... 105 3 Autofiltros con campos fecha ................................................................................................................................... 105 4 Establecer AutoFiltro con criterios en otra hoja ................................................................................................................................... 105 5 APLICAR FILTRO AVANZADO Y COPIAR RESULTADO ................................................................................................................................... 106 6 Copiar solo las filas de un Filtro avanzado en otra hoja ................................................................................................................................... 106 7 Copiar celdas filtradas sin los títulos ................................................................................................................................... 106 8 Obtener la primer fila de un filtro ................................................................................................................................... 107 9 Obtener el total de celdas filtradas ................................................................................................................................... 107 10 Seleccionar en un rango filtrado, la celda que tiene el valor de un ComboBox ................................................................................................................................... 107 11 Sumar una columna de datos en un rango filtrado ................................................................................................................................... 107 12 Quitar autofiltros solo a ciertas columnas Cap. XXII 22- Trabajando con Gráficos 109 ................................................................................................................................... 109 1 Seleccionar un gráfico ignorando su nombre ................................................................................................................................... 109 2 Cortar un gráfico de una hoja y pegarlo en otra ................................................................................................................................... 109 3 Asignar los datos de origen de un gráfico Manual 400 Macros Plus IX © <2005=2010> Elsa M.Meyer (Elsamatilde)
  • 11. ................................................................................................................................... 109 4 Crear un gráfico en hoja nueva y guardar el libro ................................................................................................................................... 109 5 Crear gráfico con datos de hoja variable ................................................................................................................................... 109 6 Imprimir gráfico y tabla que lo alimenta ................................................................................................................................... 110 7 MODIFICANDO DIMENSIONES DE TODOS LOS GRAFICOS ................................................................................................................................... 110 8 Copiar todos los graficos en otra hoja ................................................................................................................................... 110 9 Eliminar todos los graficos de una hoja ................................................................................................................................... 110 10 Colorear series por macro ................................................................................................................................... 110 11 Ubicando un gráfico por macro ................................................................................................................................... 111 12 Recorrer todos los gráficos del libro ................................................................................................................................... 111 13 Reconocer el área del gráfico seleccionado Cap. XXIII 23- Trabajando con Userforms 113 ................................................................................................................................... 113 1 Generalidades - Crear un Userform ................................................................................................................................... 113 2 Mostrar un Userform ................................................................................................................................... 113 3 MOSTRAR UN USERFORM EN EL TOPE DE LA VENTANA ................................................................................................................................... 113 4 Ocultar un Userform ................................................................................................................................... 114 5 Cerrar un Userform ................................................................................................................................... 114 6 Desactivar el botón 'Cerrar' de un Userform ................................................................................................................................... 114 7 Inmovilizar un Userform ................................................................................................................................... 114 8 Cargar valores de inicio ................................................................................................................................... 114 9 Volcar datos de un Userform a una hoja ................................................................................................................................... 114 10 Actualizar base con datos del Userform ................................................................................................................................... 114 11 Seleccionar datos desde un Userform-RefEdit ................................................................................................................................... 115 12 Seleccionar rango para eliminar duplicados ................................................................................................................................... 115 13 Agrandar un Frame a medida que se ingresan datos ................................................................................................................................... 115 14 Validar campos numéricos en Textbox ................................................................................................................................... 115 15 Validar campos fecha en Textbox ................................................................................................................................... 115 16 Establecer separadores en campos fecha en textbox ................................................................................................................................... 115 17 Ingresar fechas sin formato en Textbox ................................................................................................................................... 115 18 Asignar formato moneda a un TextBox ................................................................................................................................... 116 19 Asignar formato Password a un textbox ................................................................................................................................... 116 20 Limpiar todos los textbox de un Userform ................................................................................................................................... 116 21 Guardar un dato del Userform antes de cerrarlo ................................................................................................................................... 116 22 Agregar un Grafico en un Userform ................................................................................................................................... 116 23 Trabajando con controles Listbox y Combobox ................................................................................................................................... 116 24 Llenar un control ListBox con nombres de hojas ................................................................................................................................... 116 25 Ejecutar una macro según valor seleccionado en Combobox Cap. XXIV 24- Trabajando con Tablas Dinámicas 118 ................................................................................................................................... 118 1 Comentarios sobre Tablas Dinámicas X Contents X © <2005=2010> Elsa M.Meyer (Elsamatilde)
  • 12. ................................................................................................................................... 118 2 Evitar la actualización automática de TD ................................................................................................................................... 118 3 OBTENER EL TOTAL DE UNA TABLA DINÁMICA ................................................................................................................................... 119 4 Convetir un campo en un campo de filas ................................................................................................................................... 119 5 Eliminar todas las Tablas Dinamicas de una hoja ................................................................................................................................... 119 6 Uso de variables en TD Cap. XXV 25- Impresión 121 ................................................................................................................................... 121 1 Imprimir hojas ................................................................................................................................... 121 2 Vista previa ................................................................................................................................... 121 3 Establecer área de impresión: ................................................................................................................................... 121 4 IMPEDIR LA IMPRESIÓN ................................................................................................................................... 121 5 Enviar información al Encabezado y Pié ................................................................................................................................... 121 6 Instrucciones para configurar la página ................................................................................................................................... 122 7 Llamar al cuadro de opciones para Imprimir ................................................................................................................................... 122 8 Elegir impresora por medio de código Cap. XXVI 26- Trabajando con el entorno Excel 124 ................................................................................................................................... 124 1 Ocultar Excel ................................................................................................................................... 124 2 Ocultar Excel por cierto tiempo ................................................................................................................................... 124 3 Quitar la lista de archivos abiertos del menú Archivo ................................................................................................................................... 124 4 Importar datos de otro libro Excel ................................................................................................................................... 124 5 Obtener la lista de archivos Excel de una carpeta ................................................................................................................................... 124 6 Ocultar botones de Minimizar y Maximizar ................................................................................................................................... 124 7 Inhabilitar el botón de Cerrar de Excel ................................................................................................................................... 125 8 Evitar el cierre accidental de Excel ................................................................................................................................... 125 9 Ejecutar rutinas o funciones de otros libros ................................................................................................................................... 125 10 OBTENER LISTADO DE RUTINAS DE UN LIBRO ................................................................................................................................... 126 11 Exportar módulos ................................................................................................................................... 126 12 Importar módulos guardados como txt ................................................................................................................................... 126 13 Eliminar código ................................................................................................................................... 126 14 Eliminar codigo de cierto objeto o modulo ................................................................................................................................... 126 15 Saber si un archivo existe en un directorio ................................................................................................................................... 127 16 Eliminar un archivo del directorio ................................................................................................................................... 127 17 Iniciar una nueva sesión de Excel ................................................................................................................................... 127 18 Quitar colores a la lista de la herramienta Relleno ................................................................................................................................... 127 19 Restablecer la paleta de colores ................................................................................................................................... 127 20 Determinar el tiempo que demora una rutina ................................................................................................................................... 127 21 Fijar las mayusculas para todo el libro ................................................................................................................................... 127 22 Habilitar o no la tecla BLOQNUM ................................................................................................................................... 128 23 Llamar a un archivo HELP Manual 400 Macros Plus XI © <2005=2010> Elsa M.Meyer (Elsamatilde)
  • 13. Cap. XXVII 27- Trabajando con otras aplicaciones 130 ................................................................................................................................... 130 1 COPIAR CELDAS EXCEL A UN DOC WORD ................................................................................................................................... 130 2 Abrir un archivo de texto (CSV) ................................................................................................................................... 131 3 Imprimir un documento Word desde Excel ................................................................................................................................... 131 4 Importar Datos de Outlook ................................................................................................................................... 131 5 Enviar un libro por Mail ................................................................................................................................... 131 6 Enviar un mail ................................................................................................................................... 131 7 Enviar cuerpo de correo con saltos de línea ................................................................................................................................... 131 8 Importar datos de Access ................................................................................................................................... 131 9 Llamar a la Calculadora ................................................................................................................................... 132 10 Llamar a la aplicación WinZip ................................................................................................................................... 132 11 Ejecutar archivo de sonido al cambio en celda Cap. XXVIII 28- Creando Complementos 134 ................................................................................................................................... 134 1 Cómo crear un Complemento ................................................................................................................................... 134 2 Habilitar complementos Cap. XXIX 29- Funciones definidas por Usuario (UDF) 136 ................................................................................................................................... 136 1 CREAR FUNCIONES PERSONALES ................................................................................................................................... 136 2 Sintaxis de funciones ................................................................................................................................... 136 3 Funcion Numeros a Letras ................................................................................................................................... 137 4 Funcion Calculo del NIF (Identificador en España) ................................................................................................................................... 137 5 Funcion Digito Verificador (RUT) ................................................................................................................................... 137 6 Funcion BuscarV en varias hojas ................................................................................................................................... 137 7 Funcion Buscar el enésimo elemento ................................................................................................................................... 137 8 Funcion Encontrar ultimo dato ................................................................................................................................... 137 9 Funcion Sumar rango con error ................................................................................................................................... 137 10 Función Contar celdas de cierto color ................................................................................................................................... 138 11 Funcion Sumar celdas de cierto color ................................................................................................................................... 138 12 Funcion Extraer números a la derecha de una cadena ................................................................................................................................... 138 13 Función Contar número de vocales en una cadena ................................................................................................................................... 138 14 Función Contar número de consonantes en una cadena ................................................................................................................................... 138 15 Funcion Contar numeros pares ................................................................................................................................... 138 16 Funcion Contar numeros impares ................................................................................................................................... 138 17 Funcion Fecha creación del libro ................................................................................................................................... 139 18 Funcion Fecha ultima modificacion del libro ................................................................................................................................... 139 19 Funcion Binario (para > 500) ................................................................................................................................... 139 20 Funcion Reconocer numeros Primos ................................................................................................................................... 139 21 Funcion Nombre Dia XII Contents XII © <2005=2010> Elsa M.Meyer (Elsamatilde)
  • 14. ................................................................................................................................... 139 22 Funcion Nombre Mes Cap. XXX 30- Otras Rutinas Interesantes 141 ................................................................................................................................... 141 1 MOSTRAR VALORES EN COMBO SEGÚN SELECCIÓN EN OTRO ................................................................................................................................... 142 2 Ejecutar macro según valor en celda ................................................................................................................................... 142 3 Colorear celdas por condicion ................................................................................................................................... 142 4 Convertir Monedas ................................................................................................................................... 142 5 Indicar equipos disponibles en un Ciber: ................................................................................................................................... 142 6 Lotería: Ubicar valores ingresados ................................................................................................................................... 142 7 Ordenar una tabla por valores tipo Indice ................................................................................................................................... 142 8 Aplicar parpadeo continuo a celdas ................................................................................................................................... 143 9 Crear libros por cada hoja ................................................................................................................................... 143 10 Restringir uso de hojas ................................................................................................................................... 143 11 Mantener imagen fija en pantalla ................................................................................................................................... 143 12 Estado de progreso de una rutina Manual 400 Macros Plus XIII © <2005=2010> Elsa M.Meyer (Elsamatilde)
  • 16. Manual 400 Macros Plus 15 © <2005=2010> Elsa M.Meyer (Elsamatilde) 1 1 - Introducción 1.1 BIENVENID@S VERSIÓN DEMO Manual: 400 MACROS Plus + 20 Funciones (v.3.0) - para versiones Excel 2000 al 2007 inclusive La intención de este Manual es guiar al usuario de Excel a potenciar las planillas de cálculo con programación. NOTA: En esta versión DEMO se podrá acceder a un tema por capítulo. El mismo se encuentra en mayúsculas en el índice. No solo los usuarios 'programadores' sacarán provecho de este libro. Los que nunca han trabajado con algún lenguaje de programación verán que muy fácilmente podrán 'personalizar' sus libros adaptando o creando rutinas con código VBA (Visual Basic para Aplicaciones) En el primer capítulo un par de temas con imágenes para familiarizarnos con el entorno Editor de Macros. A continuación un par de capítulos detallando conceptos que serán utilizados a lo largo del manual: Eventos, Métodos, Variables, Cadenas y otros. Luego siguen capítulos ordenados por objetos: Libros-Hojas-Celdas o rangos-Barras-Objetos dibujados , etc. donde partiendo de las principales instrucciones básicas (ej: Abrir o Guardar libros), llegaremos hasta códigos para manipular otras aplicaciones (tanto Word, Access o el mismo entorno Windows), crear Complementos, código para controlar Barras, Teclas, Objetos, Filtros y mucho más. Así hasta llegar al último capítulo con 'Rutinas Interesantes' que pueden serte de utilidad o de modelo para otras tareas, como: Colorear celdas por condición, Crear Libros por cada hoja y muchas más. Cada línea, cada comando se encuentra explicado en español para que puedan ser adaptados a las necesidades y configuración de cada libro. Contiene además imágenes que guiarán y mostrarán los resultados obtenidos una vez ejecutada la macro. Una característica a resaltar de este Manual es su formato y su potente buscador. Al solicitar un tema nos devolverá la lista de entradas que aparecen en todo el libro, como en la imagen donde se ingresó la palabra 'find' apareciendo 11 entradas (para la primer coincidencia) lo que nos permite abarcar de manera completa el tema buscado.
  • 17. 1 - Introducción 16 © <2005=2010> Elsa M.Meyer (Elsamatilde) Otra característica a resaltar de este formato, es su posibilidad de agregar comentarios en cada tema. Podrás agregar tus propias observaciones, ejemplos u otros datos de interés. Desde el menú Edición, Anotar encontrarás una ventana para escribir. Cada vez que accedas a este tema, encontrarás en el margen superior un clip recordándote que el tema tiene agregados. Haciendo clic en él, aparecerán tus notas personales.
  • 18. Manual 400 Macros Plus 17 © <2005=2010> Elsa M.Meyer (Elsamatilde) Las rutinas contenidas en este manual, fueron desarrolladas y probadas en las siguientes versiones: Windows98/Windows XP con Office 2000, Office XP (2002) , Office 2003 y Excel 2007 En caso de dificultad para adaptar alguna rutina a tu libro, envíame tus comentarios a: cibersoft_arg@yahoo.com.ar 1.2 BREVE INTRODUCCIÓN AL EDITOR Qué es una macro: Una macro es un conjunto de instrucciones en lenguaje de programación, que en el caso de Excel se conoce como VBA (Visual Basic for Applications), que nos permite realizar ciertas tareas, que por ser repetitivas nos valemos de una rutina para automatizarlas. Estas instrucciones se guardan en el Editor de Macros. Por ejemplo: al ingresar datos en una columna que nos complete el resto del registro con los datos de otra hoja, que cada vez que ingresamos valores con cierto criterio, nos coloque un color de fuente o fondo, etc. El Editor de Macros: Desde el menú Herramientas, Macros, Editor de Macros tenemos acceso a una ventana donde se colocarán ya sea simples instrucciones, pequeñas rutinas y códigos completos de aplicaciones como Facturación, Control de Gestión, etc. En versión Excel 2007 se accede desde la ficha Programador, Visual Basic (primer opción) Veamos qué encontramos en la ventana del Editor:
  • 19. 1 - Introducción 18 © <2005=2010> Elsa M.Meyer (Elsamatilde) 1.3 Cómo crear una macro El tema no se encuentra disponible en esta versión DEMO 1.4 Dónde colocar las macros El tema no se encuentra disponible en esta versión DEMO 1.5 Cómo ejecutar una macro El tema no se encuentra disponible en esta versión DEMO 1.6 Acerca de las macros Auto-Open El tema no se encuentra disponible en esta versión DEMO
  • 20. Manual 400 Macros Plus 19 © <2005=2010> Elsa M.Meyer (Elsamatilde) 1.7 Acerca de las macros Auto-Close El tema no se encuentra disponible en esta versión DEMO 1.8 Cómo proteger un proyecto El tema no se encuentra disponible en esta versión DEMO 1.9 Evitar que las macros se vean desde el menú El tema no se encuentra disponible en esta versión DEMO 1.10 Otras consideraciones: ¿Cómo...? El tema no se encuentra disponible en esta versión DEMO
  • 22. Manual 400 Macros Plus 21 © <2005=2010> Elsa M.Meyer (Elsamatilde) 2 2 - Eventos, Metodos y Propiedades 2.1 EVENTOS - LISTADO Hemos visto en el capítulo Introducción, Cómo ejecutar una macro, que éstas pueden ejecutarse ante un evento del libro u hoja. ¿Pero qué es un evento? es una acción que el usuario ejecuta, y tiene que ver con los objetos Libro y Hojas, siendo los más comunes: abrir, guardar, imprimir o cerrar libros, activar o desactivar hojas. Estas rutinas no pueden ser ejecutadas manualmente, como las que colocamos en módulos, sino que se ejecutan al producirse el evento. Si volvemos a la imagen que se encuentra en el capítulo Introducción, Breve introducción al Editor, veremos los 2 cuadros desplegables: Objetos y Eventos. Debemos seleccionar un objeto y luego optar por un evento. A continuación la primera y última instrucción de la macro se escribirán. Ejemplos: Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) 'instrucciones que se ejecutarán antes de guardar el libro End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'instrucciones que se ejecutarán cada vez que se seleccione una celda End Sub A continuación los Eventos de Libros: Activate: se activa el libro AddInstall: ocurre al instalar el libro como complemento AddUninstall: ocurre al desinstalar el libro como complemento BeforeClose: antes de cerrar el libro BeforePrint: antes de imprimir BeforeSave: antes de guardar el libro Deactivate: al desactivar el libro NewSheet: al insertar nueva hoja Open: al abrir el libro SheetActivate: al activar una hoja SheetCalculate: al efectuar cálculos en hoja SheetChange: al efectuar cambios en hoja SheetDeactivate: al desactivar hoja SheetFollowHyperlink: al clic en un hipervínculo SheetPivotTableUpdate: ocurre después de actualizar la hoja del informe de tabla dinámica SheetSelectionChange: se produce cuando la selección cambia en una hoja WindowActivate: cuando se activa cualquier ventana del libro WindowDeactivate: cuando se desactiva cualquier ventana del libro WindowResize: cuando se cambia de tamaño cualquier ventana del libro PivotTableCloseConnection: Ocurre después de que un informe de tabla dinámica cierra la conexión con su origen de datos.
  • 23. 2 - Eventos, Metodos y Propiedades 22 © <2005=2010> Elsa M.Meyer (Elsamatilde) PivotTableOpenConnection: Ocurre después de que un informe de tabla dinámica abre la conexión con su origen de datos SheetBeforeDoubleClick: Ocurre al hacer doble clic en una hoja de cálculo, antes de la acción predeterminada para el doble clic SheetBeforeRightClick: Ocurre al hacer clic con el botón secundario del mouse (ratón) en una hoja de cálculo, antes de la acción predeterminada. Las rutinas colocadas en los eventos del libro (Private Sub Workbook) que hacen mención a hojas (Sheet....) se ejecutan para todas las hojas del libro. Principales Eventos de Hojas: A diferencia de los últimos eventos de la lista anterior, un evento de Hoja solo se ejecuta para el objeto Hoja donde se encuentre. Es decir, si seleccionamos el objeto Hoja2 (Barras_Inicio) la macro de Evento que escribamos solo se ejecutará para esta hoja 2. Los eventos de Hojas son: Activate: al activar esta hoja BeforeDoubleClic: al presionar doble clic BeforeRightClick: al clic derecho en la hoja Calculate: al realizar cálculos en esta hoja Change: al introducir cambios en esta hoja Deactivate: al desactivar la hoja FollowHyperlink: al presionar un hipervínculo PivotTableUpdate: al actualizar una tabla dinámica en la hoja SelectionChange: al seleccionar y pasar de celda. Atención: también los controles colocados en un Userform tienen su lista de eventos, como SetFocus (al recibir el enfoque), LostFocus (al perder el enfoque) y muchos más que encontrarán en los ejemplos del capítulo Userforms 2.2 Especial: Eventos de Hojas 2.2.1 Cambios y Selección en Hoja El tema no se encuentra disponible en esta versión DEMO 2.3 Metodos El tema no se encuentra disponible en esta versión DEMO
  • 24. Manual 400 Macros Plus 23 © <2005=2010> Elsa M.Meyer (Elsamatilde) 2.4 Propiedades El tema no se encuentra disponible en esta versión DEMO
  • 26. Manual 400 Macros Plus 25 © <2005=2010> Elsa M.Meyer (Elsamatilde) 3 3 - Tratamiento de Variables 3.1 Tipo de Variables El tema no se encuentra disponible en esta versión DEMO 3.2 DURACIÓN DE LAS VARIABLES Las variables pueden ser: Locales o Públicas Variables Locales: Las variables Locales son las que se declaran dentro de un procedimiento y sus valores sólo pueden ser utilizados en éste. Para declararlas se utiliza la sentencia Dim, generalmente al inicio del procedimiento, aunque también pueden ser declaradas en otros puntos del mismo. Ejemplo: Sub Macro1() Dim valor1 as Integer, valor2 as Integer Dim cadena1 as String 'otras instrucciones End Sub Variables Públicas: Son las que estarán disponibles para todos los procesos, sus valores pueden ser utilizados en cualquier módulo. Se declaran como Public. Recomiendo utilizar un módulo especialmente destinado a la declaración de estas variables lo que facilitará su ubicación. Si se declararán en un módulo utilizado para otro procedimiento deberán ser las primeras instrucciones Ejemplo: Option Explicit Public minro as Byte Sub Macro2() 'instrucciones End Sub Constantes: A diferencia de las variables que modifican sus valores durante la ejecución de un proceso, las Constantes mantienen su valor. También pueden ser Locales o Públicas Ejemplo: Const dia as Integer Public Const cadena1 as String
  • 27. 3 - Tratamiento de Variables 26 © <2005=2010> Elsa M.Meyer (Elsamatilde) 3.3 Determinar el tipo de variable El tema no se encuentra disponible en esta versión DEMO 3.4 Convirtiendo variables El tema no se encuentra disponible en esta versión DEMO 3.5 Limpiando variables El tema no se encuentra disponible en esta versión DEMO
  • 29. 4 - Trabajando con Cadenas 28 © <2005=2010> Elsa M.Meyer (Elsamatilde) 4 4 - Trabajando con Cadenas 4.1 EXTRAER PARTES DE UNA CADENA Para extraer partes de una cadena, ya sea el contenido de una celda, una variable o el resultado de un InputBox, contamos con las siguientes funciones: Left: devuelve el contenido de una cadena comenzando desde la izquierda a partir de la posición indicada en el segundo argumento. Right: devuelve lo que se encuentra a la derecha de la cadena Len: devuelve el largo de una cadena Mid: devuelve lo que se encuentra a partir de cierta posición y del largo establecido InStr: devuelve la posición inicial de una cadena en otra Ejemplos: si la celda A1 contiene el valor 'ABC567DEF' Left(Range("A1").Value, 3) devuelve 'ABC' Mid(Range("A1").Value, 3) devuelve 'C567DEF' Mid(Range("A1").Value, 4, 2) devuelve "56" Si el resultado obtenido queda como String, convertirlo a número utilizar la función Val (*ver más sobre Conversión de variables en el capítulo: Tratamiento de Variables) Right(Range("A1").Value, 2) devuelve 'EF' También podemos utilizar la función InStr conjuntamente con Mid para obtener una cadena a partir de cierto caracter. En el ejemplo se trata de obtener el apellido sabiendo que se ubica después del caracter 'espacio' Sub variables() Dim esp As integer Dim apellido As String Dim cadena As String cadena = "Juan Perez" 'se obtiene la ubicación del espacio esp = InStr("Juan Perez", " ") 'se obtiene la cadena a partir de la posición del espacio apellido = Mid(cadena, esp) 'se muestra el resultado MsgBox apellido End Sub
  • 30. Manual 400 Macros Plus 29 © <2005=2010> Elsa M.Meyer (Elsamatilde) 4.2 Armando cadenas El tema no se encuentra disponible en esta versión DEMO 4.3 Obtener el largo de una cadena El tema no se encuentra disponible en esta versión DEMO 4.4 Introducir caracteres especiales El tema no se encuentra disponible en esta versión DEMO 4.5 Detectar o encontrar texto en una cadena El tema no se encuentra disponible en esta versión DEMO 4.6 Creando cadenas de largo fijo El tema no se encuentra disponible en esta versión DEMO 4.7 Obtener la parte numerica de una cadena El tema no se encuentra disponible en esta versión DEMO
  • 32. Manual 400 Macros Plus 31 © <2005=2010> Elsa M.Meyer (Elsamatilde) 5 5 - Trabajando con Directorios y Archivos 5.1 Creando un nuevo directorio El tema no se encuentra disponible en esta versión DEMO 5.2 ESTABLECER LA RUTA DE ACCESO PREDETERMINADA En el tema anterior hemos visto que la función MkDir crea una carpeta en el directorio predeterminado de archivos Excel, si no especificamos otra ruta. Para conocer desde una macro esa ruta (la que se establece desde el menú Herramientas, Opciones, General del libro Excel) utilizaremos la función CurDir. En versión Excel2007, la ruta predeterminada se encuentra desde el botón Office, Opciones de Excel, Guardar, Guardar Libro. Sub ConoceDir() Dim miRuta 'obtenemos la ruta de acceso predeterminado miRuta = CurDir() 'mostramos el resultado en un mensaje MsgBox miRuta 'otras instrucciones End Sub 5.3 Establecer si un directorio existe El tema no se encuentra disponible en esta versión DEMO 5.4 Establecer si un archivo existe en un directorio El tema no se encuentra disponible en esta versión DEMO
  • 33. 5 - Trabajando con Directorios y Archivos 32 © <2005=2010> Elsa M.Meyer (Elsamatilde) 5.5 Eliminar un archivo de un directorio El tema no se encuentra disponible en esta versión DEMO 5.6 Establecer nueva unidad de disco El tema no se encuentra disponible en esta versión DEMO 5.7 Establecer nuevo directorio o carpeta El tema no se encuentra disponible en esta versión DEMO 5.8 Crear lista de archivos de una carpeta El tema no se encuentra disponible en esta versión DEMO 5.9 Copiar todos los libros de una carpeta en otra El tema no se encuentra disponible en esta versión DEMO 5.10 Obtener propiedad fecha y hora de archivos El tema no se encuentra disponible en esta versión DEMO 5.11 Obtener tamaño de archivos El tema no se encuentra disponible en esta versión DEMO
  • 35. 6 - Trabajando con Libros 34 © <2005=2010> Elsa M.Meyer (Elsamatilde) 6 6 - Trabajando con Libros 6.1 Principales Metodos y Propiedades de Libros El tema no se encuentra disponible en esta versión DEMO 6.2 Abriendo Libros 6.2.1 Abrir un segundo libro El tema no se encuentra disponible en esta versión DEMO 6.2.2 Abrir un libro con clave El tema no se encuentra disponible en esta versión DEMO 6.2.3 Abrir libro buscando la carpeta que lo contiene El tema no se encuentra disponible en esta versión DEMO 6.2.4 Ejecutar macro al abrir un libro El tema no se encuentra disponible en esta versión DEMO 6.2.5 Inhabilitar el mensaje de actualizar vínculos al abrir un libro El tema no se encuentra disponible en esta versión DEMO 6.2.6 Inhabilitar la opción de actualizar vínculos al abrir otros libros El tema no se encuentra disponible en esta versión DEMO
  • 36. Manual 400 Macros Plus 35 © <2005=2010> Elsa M.Meyer (Elsamatilde) 6.2.7 Al abrir libro incrementar un contador El tema no se encuentra disponible en esta versión DEMO 6.2.8 Al abrir libro ocultarlo (minimizarlo) y mostrar un Userform El tema no se encuentra disponible en esta versión DEMO 6.2.9 Impedir que un libro se abra si la fecha caducó El tema no se encuentra disponible en esta versión DEMO 6.3 Seleccionar un libro El tema no se encuentra disponible en esta versión DEMO 6.4 Obtener el nombre de un libro El tema no se encuentra disponible en esta versión DEMO 6.5 Obtener la ruta de un libro El tema no se encuentra disponible en esta versión DEMO 6.6 Activar otro libro distinto al actual El tema no se encuentra disponible en esta versión DEMO
  • 37. 6 - Trabajando con Libros 36 © <2005=2010> Elsa M.Meyer (Elsamatilde) 6.7 Impedir que se abran otros libros mientras esté nuestro libro abierto El tema no se encuentra disponible en esta versión DEMO 6.8 CARGAR TODO EL LIBRO EN MAYÚSCULAS Se puede forzar a que todo el libro sea cargado en mayúsculas con la expresión Ucase (o minúsculas con Lcase), que al ser colocada en el objeto ThisWorkbook será de aplicación para todas las hojas Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) On Error Resume Next 'controla si el contenido de la celda active es texto If Application.WorksheetFunction.IsText(Target.Value) Then 'convierte el contenido de la celda active (Target) en mayúsculas (Ucase) Target.Value = UCase(Target.Value) End If End Sub Atención: si una celda tiene una fórmula que devuelve texto, al ser convertida en maýusculas pierde su condición de fórmula quedando solo el texto como valor. Para evitar esto podemos realizar la consulta con esta instrucción en lugar de la línea en verde en la rutina anterior : If Not ActiveCell.HasFormula and Application.WorksheetFunction.IsText(Target.Value) Then Para ser utilizada en una sola hoja, no en todas, en lugar de colocar la rutina en el objeto ThisWorkbook, colocarla en la hoja deseada, seleccionándola entre los objetos que se encuentran en la ventana del margen izquierdo, por ejemplo: Hoja1 (Hoja1) La rutina entonces será: Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next 'controla si el contenido de la celda active es texto If Application.WorksheetFunction.IsText(Target.Value) Then 'convierte el contenido de la celda active (Target) en mayúsculas (Ucase) Target.Value = UCase(Target.Value) End If End Sub
  • 38. Manual 400 Macros Plus 37 © <2005=2010> Elsa M.Meyer (Elsamatilde) Nota: de la misma manera se puede forzar al uso de minúsculas reemplazando Ucase con Lcase Atención: ver otra rutina para convertir mayúsculas o minúsculas en el capítulo 12: Controlando Teclas....., Ejecutar macro al presionar Enter 6.9 Modificar la forma de cálculo del libro o de una hoja El tema no se encuentra disponible en esta versión DEMO 6.10 Eliminar vinculos externos El tema no se encuentra disponible en esta versión DEMO 6.11 Eliminar vinculos internos El tema no se encuentra disponible en esta versión DEMO 6.12 Saber si uno o más libros existen en una carpeta El tema no se encuentra disponible en esta versión DEMO 6.13 Crear libro como copia de cierta hoja El tema no se encuentra disponible en esta versión DEMO 6.14 Copiar un libro sin abrirlo El tema no se encuentra disponible en esta versión DEMO
  • 39. 6 - Trabajando con Libros 38 © <2005=2010> Elsa M.Meyer (Elsamatilde) 6.15 Cambiar el nombre de un libro sin abrirlo El tema no se encuentra disponible en esta versión DEMO 6.16 Eliminar Nombres de Rangos en libro El tema no se encuentra disponible en esta versión DEMO 6.17 Armar un indice vinculado a cada hoja del libro El tema no se encuentra disponible en esta versión DEMO 6.18 Guardando Libros 6.18.1 Guardar el libro activo El tema no se encuentra disponible en esta versión DEMO 6.18.2 Guardar un libro con otro nombre El tema no se encuentra disponible en esta versión DEMO 6.18.3 Guardar un libro con otro formato (txt) El tema no se encuentra disponible en esta versión DEMO 6.18.4 Guardar un libro con clave El tema no se encuentra disponible en esta versión DEMO