Você está na página 1de 59

/ 2

uía ráctica

VERSION 98
Instituto Nacional de
Estadística e Informática

PUBLICACIONES
ë Guía Práctica de Autoaprendizaje de Word Perfect
ë Computadoras, Comodidad y Seguridad
ë Guía Práctica de Autoaprendizaje de Microsoft Word
ë Las Computadoras en la Sociedad
ë Mis Primeros Pasos en Informática
ë Guía Práctica de Autoaprendizaje de Astound
ë Guía Práctica de Autoaprendizaje de Microsoft Excel
ë Navegando en Internet
ë El Mundo del Software
ë Guía Práctica de Autoaprendizaje de Qpro
ë Guía Práctica de PowerPoint
ë Guía Práctica de Autoaprendizaje - Microsoft Exchange
ë Guía Práctica de Microsoft Netscape
ë Guía Práctica de Visual Fox Pro
ë Guía Práctica de Autoaprendizaje - Diseño de Páginas Web
ë Guía Práctica de Autoaprendizaje de FrontPage
ë Guía Práctica de Power Builder
ë Guía Práctica de Windows 95
ë Guía Práctica de Autoaprendizaje - PageMaker
ë Guía Práctica de Autoaprendizaje - Photoshop
ë Guía Práctica de Autoaprendizaje - CorelDraw
ë Guía Práctica de Autoaprendizaje - Word (Versión 97)
ë Guía Práctica - Visual Basic
ë Guía Práctica - Project 98
ë Guía Práctica - Cómo Automatizar las Tareas Rutinarias con
Excel Macros

G UIA P RACTICA - C OMO A UTOMATIZAR LAS T AREAS R UTINARIAS CON E XCEL M ACROS
- PUBLICACION Nº36 - EDICION ‘99

Elaborado por: SUB-JEFATURA DE INFORMATICA - Dirección Técnica de Desarrollo Informático -


Colección Informática Fácil.

Teléfono : 433-4223 - Anexos 314 - 315


TeleFax : 433-5568
E-Mail : INFOINEI@INEI.GOB.PE
W.E.B. : Http:\\ WWW.INEI.GOB.PE

Impreso en los Talleres de la Oficina de Impresiones de la Oficina Técnica de Difusión Estadística y


Tecnología Informática del Instituto Nacional de Estadística e Informática (INEI)

Edición : 500 Ejemplares


Domicilio, Redacción y Talleres : Av. Gral. Garzón Nº 658 - Jesús María
Orden : Nº 362- 0I - OTDETI - INEI
2 resentación

El Instituto Nacional de Estadística e Informática como


ente rector del Sistema Nacional de Informática, presenta el
Trigésimo Sexto Número de la Colección Informática Fácil
Fácil,
titulado «Guía Práctica - Cómo Automatizar Tareas Rutinarias
con Excel Macros».

Excel Macros es una guía que está diseñado para ayudar a los
usuarios a mejorar su eficacia en el trabajo rutinario, automa-
tizando las tareas, constituyendo asi una herramienta de uso
importante. Una macro es una serie de comandos que realizan
las tareas rutinarias automáticamente. Registrando sus propias
macros, puede resolver sus propias necesidades y trabajar más
eficientemente. Por ejemplo, si utilizó la misma disposición de
paginación para cada informe generado, a fin de evitar hacer
los mismos pasos de progresión en cada documento, se crea
una macro modificada para requisitos particulares, ordenar e
instalar la paginación con sólo presionar unas teclas y ejecu-
tarlas.

En la presente publicación se explica cómo crear, grabar,


ejecutar una macro, ejemplos de macros, entre otros.

El Instituto Nacional de Estadística e Informática, pone a


disposición la presente Guía Práctica de Informática Fácil, con
el propósito de contribuir al conocimiento y desarrollo de la
cultura informática en el país.

Econ. Félix Murillo Alfaro


Jefe
INSTITUTO NACIONAL DE
ESTADISTICA E INFORMATICA
+ ontenido

Capítulo 1 - Conceptos Generales

C¿Qué es Automatizar una Tarea Rutinaria? ........................... 9


CPara Empezar a Desarrollar su Propia Macro,
puede Hacer estos cinco Pasos .................................... 10
C¿Cómo Crear una Macro? ......................................... 11
C¿Cómo Ejecutar una Macro? ....................................... 12

Capítulo 2 - Macros

CIntroducción a Visual Basic para Excel .............................. 15


CComandos Visual Basic para Excel .................................. 17
CBarra de Herramientas de Visual Basic para Excel .................... 18
CQué son Módulos ................................................. 20
CEjecutar una Macro ............................................... 24
CGrabar una Macro ................................................ 24
CCopiar una Macro ................................................ 26
CCajas de Diálogo ................................................. 27
CManejo de Funciones y Comandos Automáticos ...................... 30
CAlgunas Funciones de Visual Basic .................................. 32
CProgramando Macros ............................................. 34
GAñadir Bordes Gruesos ........................................ 34
GCentrar ..................................................... 35
GCambiar a Negritas .......................................... 35
GEscribir Días de la Semana .................................... 36
GEstablecer la Función Suma ................................... 36
GCambiar Fórmulas a Valores ................................... 37
GControlar Mayúsculas/Minúsculas ............................... 37
GEliminar Espacios en Celdas ................................... 38
GCerrar Todos los Libros ....................................... 38
CEjemplos de Aplicación ............................................ 39
Capítulo 3 - Macros y los Virus

CVirus y Macros de Libro ........................................... 47


C¿Cómo Remover Macros que no son Virus .......................... 48
CMacrosVirus Irremovibles ........................................... 49
CExaminar los Libros en Busca de Macros que puedan Contener Virus ... 50
CPalabras Claves de Visual Basic para Excel .......................... 51

Glosario Visual
1 ntroducción

Las macros de Excel permiten automatizar tareas que normal-


mente se realizan repetidas veces. Una macro consiste en una serie
de comandos e instrucciones de Excel que se agrupan en un solo
comando de forma que la tarea pueda realizarse automáticamente.
En lugar de perder el tiempo realizando una serie de acciones
repetitivas en Excel, puede crear y ejecutar una macro, es decir,
un comando personalizado, que ejecute la tarea por usted.

A continuación se indican algunos usos típicos de las macros:

MAcelerar las tareas rutinarias de modificaciones y formatos.


MCombinar varios comandos.
MHacer que una opción de un cuadro de diálogo sea más
accesible.
MAutomatizar series de tareas complejas.

Excel incluye dos métodos para crear macros: La grabadora


de macros y el Editor de Visual Basic. La grabadora de macros
puede ayudarle a obtener los conocimientos fundamentales para
la creación de macros. Excel graba la macro como una serie de
comandos de Excel utilizando el lenguaje de programación de
Visual Basic para aplicaciones. Las macros grabadas se pueden
abrir en el Editor de Visual Basic para modificar las instrucciones.
El Editor de Visual Basic también puede crear macros flexibles y
eficaces con instrucciones de Visual Basic que no se pueden
grabar. Para obtener más información acerca de la utilización de
Visual Basic en Word, consulte «Referencia de Visual Basic para
Microsoft Excel» en la ficha Contenido de la Ayuda.
1 C ONCEPTOS G ENERALES

¿QUE ES AUTOMATIZAR UNA


TAREA RUTINARIA?

“¡Esto es tan frustrante!. Cada semana tengo que hacer


este trabajo de modo que mi compañero pueda obtener
su reporte. ¡Y toma demasiado de mi tiempo! ¡Debe haber
una mejor manera!”.

Si alguna vez se ha encontrado en esta situación, ya existe una solución


para usted: la creación de una macro para aplicaciones con Microsoft

S
Visual Basic. Para crear una macro no necesita saber programación
programación, ya
que es muy sencillo. De hecho, la mayoría de las macros pueden
i ejecuta fre- crearse siguiendo unos simples pasos, similares a los que realiza para
cuentemente una ta- imprimir los reportes semanales. Microsoft Excel descifra los detalles
rea en Microsoft Excel, (como el nombre del filtro a usarse) y crea el código Visual Basic
puede automatizarla necesario. Incluso es posible vincular la macro a un botón de la barra
mediante una macro. de herramientas, de forma que los complicados reportes semanales se
conviertan en una actividad tan sencilla como imprimir o hacer click
Una macro consiste en
en un botón.
una serie de coman-
dos y funciones que
se almacenan en un
“Lo que estoy haciendo ahora puede no ser muy eficien-
módulo de Visual
te, pero no deseo usar mucho tiempo aprendiendo cómo
Basic y que puede eje-
escribir Visual Basic. Sólo deseo ver mi trabajo termina-
cutarse siempre que
do”.
sea necesario ejecutar
la tarea. Una macro se Una macro, según la definición encontrada en los manuales de Excel,
graba igual que se es una secuencia de instrucciones que le indican a Excel qué debe
graba música en un hacer, y éste las ejecuta automáticamente. Por medio de las macros
cassette. A continua-
podemos automatizar tareas repetitivas y aquellas en las que se requiere
ción, se ejecuta la
una cantidad considerable de pasos complejos. Y, aunque se requiere
macro para que repi-
de un poco de conocimientos de programación, se puede realizar una
ta los comandos.
gran cantidad de tareas usando instrucciones sencillas, y todo sin saber
programar. Así que, ¿por qué no aprender un poco acerca de ellas?

Guía Práctica - Cómo Automatizar Tareas con Excel Macros '


PARA EMPEZAR A DESARROLLAR SU PROPIA
MACRO, PUEDE HACER ESTOS CINCO PASOS

1.Del menú Herramientas seleccionar


en la opción Macro
Macro, luego hacer
un click en la sub-opción Grabar
Nuevo Macro
Macro.

2.Introduzca un nombre para la macro


o use el nombre proveído.

3.En la caja de almacenamiento macro,


hacer un click en el lugar en donde
desea almacenar la macro. Si elige
guardarla como archivo global, la

R
macro estará disponible siempre
que use Microsoft Excel, y no sólo

ecuerde que cuando use la hoja de cálculo

para desarrollar una específica donde la creó.


macro es sencillo y
no necesita de saber 4.Hacer un click en el botón Acep-
programación; por tar y entonces escribir las accio-
supuesto hay otras nes que desea grabar. Recuerde
operaciones más que todo lo que usted escribe se
complejas que pue- guarda, incluyendo errores y cualquier
den realizarse con cosa hecha para corregirlos.
macros y Visual
Basic, pero en esta 5.Cuando haya finalizado sus ta-
guía se explicará la reas, seleccione la opción Macro
de forma básica para en el menú de herramientas y
crear, eliminar. hacer un click en la opción de-
Lo que se necesita tener grabación
grabación.
saber para ahorrar
mucho tiempo.
¿Es usted un usuario de Excel, versión 5.0 ó 7.0 para
Windows 95? Si su respuesta es afirmativa, me gusta-
ría hacerle una pregunta más: ¿cómo se considera us-
ted respecto a esta herramienta: experto, principiante,
o un usuario moderado? La razón de la segunda pre-
gunta se debe a que, por lo general, pasamos por alto
una capacidad específica de esta poderosa hoja de cál-
culo. Todos los usuarios conocen la mayor parte de
las funciones y tareas que se pueden realizar con esta
herramienta, pero ignoran una de las más poderosas
características de la misma: Las macros.

 Guía Práctica - Cómo Automatizar Tareas con Excel Macros


¿COMO CREAR UNA MACRO?

El emplear un poco de tiempo para aprender COMO CREAR UNA


MACRO, es una actividad que le traerá múltiples beneficios en el futuro.
De hecho, porque grabar una macro no requiere del conocimiento de
Visual Basic, no necesita aprender este lenguaje. Visual Basic es
necesario, sólo, si usted decide modificar una macro en lugar de
regrabarla o desea crearla de la nada.

Consideremos el problema original: cada semana necesita imprimir un


reporte. El reporte tiene una vista particular, un filtro definido, es
tipificado en una manera particular, y es impreso. Generar este reporte
requiere demasiados pasos cada semana, sin mencionar que es, más
bien, tedioso. Una macro que permita crear un reporte así, puede ser

M
muy sencilla. Veamos el código de Visual Basic que hace de la macro
algo tan simple.

acros
Para crear una macro desde el principio, hacer los pasos siguientes:

1.En el menú Herramientas


Herramientas, seleccionar la opción Macro. Introducir una escri-
2.A continuación se muestra una caja de diálogo, en el cuadro Nombre tura y editar una
de la macro
macro, escriba el nombre correspondiente. macro:
3.En la lista descendente Macros en seleccionar una de las opciones
La grabadora de
plantilla o el documento donde desea guardar la macro.
macros crea obser-
4.Hacer un click en Crear para abrir el Editor de Visual Basic.
vando lo que usted
En el editor codificar en lenguaje Visual Basic.
realiza, convirtiendo
Nota.- Si asigna a una nueva macro el mismo nombre de otra macro
estas acciones en un
integrada en Word, las acciones de la primera reemplazarán a las
código en Visual Basic,
existentes. Por ejemplo, el comando Cerrar del menú Archivo tiene una
y almacenando el có-
macro adjunta denominada ArchivoCerrar. Si graba una nueva macro
digo en un módulo de
y le asigna el nombre ArchivoCerrar, se adjuntará al comando Cerrar.
Visual Basic en un li-
Al seleccionar el comando Cerrar, Word realizará las nuevas acciones bro de trabajo. Sin
que haya grabado. embargo, a menudo
es necesario persona-
lizar una macro gra-
Español bada o crear una nue-
Macro Visual Basic va, debido a que la
Inglés
Grabadora no siempre
graba exactamente lo
Secuencia de órdenes
que usted desea.

Guía Práctica - Cómo Automatizar Tareas con Excel Macros 


¿COMO EJECUTAR UNA MACRO?

Para ejecutar una macro, hacer los pasos siguientes:

12345
12345
12345
12345
12345

1.Del menú Herramientas


Herramientas, selec-
cionar la opción Macro y hacer
un click en la subopción Macros
Macros.

12345
12345 12345
12345 12345
12345
12345 12345
12345

+ ada código de-


vuelve el número de 12345
12345
12345
2.En el cuadro Nombre de la
12345
código del primer 1234
1234
12345 macro, hacer un click en el
1234
1234
caracter del texto. nombre de la macro que
desee ejecutar.
El código devuelto co-
rresponde al conjunto 3.Hacer un click en el botón
de caracteres utilizado Ejecutar
Ejecutar.
por su equipo.
Por ejemplo, se desea ejeuctar
la macro para añadir bordes
Ejemplo:
a un determinado número
CODIGO("A") es igual a
de celdas.
65
En la ventana de Macros se seleccionó de la lista Nombre de la macro
«Bordes»,
CODIGO("Alfabeto") es
Luego se hizo un click en el botón Ejecutar.
igual a 65

CARACTER(65) es igual 123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789


123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
a "A" 123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
PORQUE ES IMPORTANTE HACER UNA MACRO
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
CARACTER(33) es igual 123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
Imaginemos que diariamente tenemos que arreglar una ta-
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
a "!" 123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
bla de datos poniéndole colorines, formato, bordes, etc., para
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
posteriormente imprimirla, el tiempo que se demoraría en
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
hacer este trabajo. Al hacer una macro que es una com-
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
binación de instrucciones que pueden ser ejecutadas
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
automáticamente con una simple pulsación de teclas.
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789

 Guía Práctica - Cómo Automatizar Tareas con Excel Macros


2 M ACROS

Una macro es una combinación de instrucciones que pueden ser


ejecutadas automáticamente con una simple pulsación de teclas.
La palabra macro es una abreviatura de la palabra macroinstrucción
que es lo mismo que hemos definido. En ocasiones, nos vemos en
la necesidad de realizar una serie de tareas repetitivas de forma
rutinaria. Podemos crear una macro que nos evite ese trabajo. Una
macro en sí, es un pequeño programa en código Visual Basic que
se graba con un nombre y que podemos invocar en cualquier
momento.

Español
Macro Visual Basic
Inglés

Secuencia de órdenes

I
Macro es una secuencia de órdenes que se realizan con el Visual
Basic, que puede ser en Español o Inglés.

magina una ta-


rea rutinaria de 200 Por lo tanto las definiciones de macros:

pasos. Para ello, po- •Secuencias de órdenes bajo una orden determinada
demos crear una •Otro nombre Seudo-Programación
macro que realice el •Desarrollo lineal.
t r a b a j o •Programa toma de decisiones.
automáticamente.
Evidentemente, los Grabadora Programación
Excel lineal
pasos de la macro Posee

deben ser los co-


rrectos, evitando Niveles
abrir y cerrar 1.Grabadora
Grabadora. Indicar a Excel hacer el programa.
Grabadora
menúes y opciones •Rutina (Objeto, Botón).
innecesariamente, •Módulo.
por lo que la macro .Programación Visual Basic
2.Programación Basic. Maneja herramientas para el
tardaría más en eje- entorno operativo de Windows.
cutarse. Desarrollo de Funciones
3.Desarrollo Funciones. Funciones de usuarios (MACRO.FUNCION)
* Suma, promedio, máximo, etc.
* También se puede crear muestras propias, funciones(por
ejemplo I.G.V., en contabilidad.

Visual Basic

FO RTRAN BASIC VISUAL BASIC


Antes Hoy

Guía Práctica - Cómo Automatizar Tareas con Excel Macros !


Para entender el concepto de programación, supóngase que declaramos
un objeto llamado Suma. Este objeto requiere dos parámetros (o
datos) como mensaje para operar. En la programación tradicional
tendríamos que definir el tipo de datos que le enviamos, como por
ejemplo dos números enteros, dos números reales, etc. Entonces
podríamos tener los siguientes curiosos resultados al enviar a Suma
dos datos:
Suma( 2, 4) => 6
Suma( ‘Alberto’, ‘Cortez’) => Alberto Cortez
Suma( %Música1, %Música2) => se escuchan simultáneamente
las dos melodías
El polimorfismo implica que el objeto será capaz de operar correctamente

P
con cada tipo de dato y generar un resultado predecible.

En Visual Basic presentan tres aspectos que considerar: las propiedades,


ROGRAMA-
los métodos y los eventos.
CION: Definida por el
Con el fin de facilitar la comprensión de estos aspectos, nos
diccionario como la
referiremos a una analogía con algún objeto de la vida diaria: una
información necesaria
televisión conectada a una videograbadora. Las propiedades representan
para que un sistema
los ajustes bajo los cuales opera el equipo: el volumen, el brillo de
de información lleve a
cabo una tarea, las la imagen, la saturación de color, el tamaño vertical y horizontal de

órdenes se traducen la imagen. Los eventos son las acciones o comandos que puedo
a un lenguaje sim- ejecutar sobre el aparato: presionar el botón de encendido, presionar
bólico o código que el botón de avance de cinta, presionar el control para el cambio
es capaz de ser en- de hora, mover el control de volumen. En el caso de VB el programa
tendido por un responde a los eventos por medio de procedimientos que se programan
compilador y éste a en forma tradicional. La principal dificultad consiste en seleccionar
su vez lo traduce las el evento correcto para la acción deseada (en ocasiones inadvertidamente
instrucciones a len- se puede provocar una cascada de eventos: dentro del proceso de
guaje de máquina. un evento se activa otro evento que a su vez activa al primer evento
que activa al segundo evento… etc.).
Y, por último, los métodos son los procesos internos que ocurren en
el aparato (procedimientos) en respuesta a un comando: al presionar
el botón de avance de la cinta, se activa un motor, se activa el
contador, se “lee” y transmite la imagen de la cinta a la televisión,
etc. El programador de VB no tiene acceso a la codificación de los
métodos, sólo los usa. En VB tenemos como ejemplo el método
FindFirst (parámetro) que al aplicarse a un objeto de base de datos
localiza la primera ocurrencia del dato especificado en el parámetro.

Modo de Programar
•Enfocar el problema en modo Lógico (Módulo)

•Aplicar el lenguaje Escribir línea * línea el programa

Algoritmo Listado
(Lenguaje)

" Guía Práctica - Cómo Automatizar Tareas con Excel Macros


INTRODUCCION A
VISUAL BASIC PARA EXCEL
Tipos de estructuras de programación

Se define como estructura de un programa, la forma establecida como


fluyen las órdenes o comandos en el momento de su ejecución.

Las estructuras pueden ser: Lineales, condicionales y repetitivas.

E
1. Estructura lineal
Cuando la ejecución del programa sigue una secuencia simple de
arriba hacia abajo, de la primera a la última línea de órdenes, sin STILOS DE
ninguna desviación.
PROGRAMACION

Cada programador tie-


Por ejemplo: Entrar a la bodega
ne su propio estilo para
Pedir 1 Kg. Azúcar blanca
escribir. Un buen esti-
Pagar el importe
lo para programar de-
Salir de la Bodega.
berá tener una estruc-
tura de código fácil de
2. Estructura repetitiva
entender, no sólo para
Cuando se plantea la repetición de un conjunto de órdenes, hasta otra gente sino tam-
que deje de cumplirse cierta condición o afirmación. bién para si mismo.
Aquí hay varios crite-
Por ejemplo: Entrar a la bodega rios para un buen es-
Hasta completar lista tilo:
hacer pedido 1. Nombres significa-
Bucle (repetir) tivos para variables,
Pagar el importe de todo lo solicitado controles, y procedi-
Salir de la Bodega. mientos.
2.Identación (sangrías)
y espacios apropiados
ESTRUCTURAS DE LOS en el código.
3.documentar el códi-
PROGRAMAS go (poner comentarios
para aclarar).
Tipos de estructurad de los programas: 4.Módulos adaptables.
•Lineal
•Lineal.- Una tras otra línea en forma secuencial. 5.Minimizar el acopla-
•Bifurcación
•Bifurcación.- Un camino se abre en dos, Función SI miento.
•Simple
•Simple.- Un camino se abre en “dos” posibilidades 6.Minimizar alcance de
•Múltiple
•Múltiple.- Un camino se abre en “N” posibilidades los datos hasta donde
•Repetitivas
•Repetitivas.- Controla que determinados procesos sea posible.
se efectúen adecuadamente.

Guía Práctica - Cómo Automatizar Tareas con Excel Macros #


Definición de Algunos Comandos
Declaración
Palabras Claves o
(Enunciados) Definición Al escribir las líneas •Azul (palabra clave).
del programa,
tener en cuenta
•Verde (comentario).
* No es INICIALIZACION
lo siguiente: •Rojo (error).
Ejemplo: Public. Sueldo (de uso global)

Las instrucciones condicionales.- Evalúan si una condición es True o


False y a continuación especifican las instrucciones a ejecutar en
función del resultado. Normalmente, una condición es una expresión
que utiliza un operador de comparación para comparar un valor
o variable con otro.

U
9If...Then...Else:
If...Then...Else: Salto a una instrucción cuando una condición es
True o False
na variable o 9Select
Select Case: Selección de la instrucción a ejecutar en función de
constante definida
un conjunto de condiciones.
desde dentro de un
procedimiento no es Bifurcación
visible fuera de ese IF.............THEN FOR.....TO.....
.............
procedimiento. Sólo
.........
............. .........
......... N Rutinas
............. Rutinas
el procedimiento que .............
.........

contiene la declara- ENDIF


NEXT

ción de la variable MULTIPLE


SIMPLE
puede usarlos. En el
siguiente ejemplo, el Utilizar bucles para repetir código
código.- Es posible ejecutar un grupo de
primer procedimien- instrucciones de forma repetida. Algunos bucles repiten las instrucciones
to presenta un cuadro hasta que una condición es False, otros las repiten hasta que la
de mensaje que con- condición es True. Hay también bucles que repiten un conjunto de
tiene una cadena de instrucciones un número determinado de veces o una vez para cada
texto. El segundo objeto de una colección.
procedimiento pre-
9Do...Loop:
Do...Loop: Seguir en el bucle mientras o hasta una condición sea
senta un cuadro de
True
mensaje en blanco ya
9For...Next:
For...Next: Utilizar un contador para ejecutar las instrucciones un
que la variable
strMensaje es local DO CASE......... DO WHILE.....
CASO 1..... N Rutinas
para el primer proce- CASO 2 ..... N Rutinas
CASO 3 ..... N Rutinas
.........
.........
N Rutinas
.........
dimiento.
CASO N .....N Rutinas
.........

END CASE
Sub VariableLocal() LOOP
Dim strMensaje As MULTIPLE REPETITIVA
String
Visual Basic
strMensaje = "Esta
variable no se pue- Visual Basic. Gira alrededor
en lo que es objeto con
•Libro
•Hoja
elementos cambiantes •Celda (rango)
de usar fuera de este
•Enunciados (objeto)
procedimiento." Visual Basic. Se basa en
categorías
•Propiedades
•Métodos (acciones)

MsgBox strMensaje
•Valor

•Método. Seleccionar la celda


End Sub Ejemplo:
con gramática de Excel.

Sub FueraAlcance()
Secuencia
o Objeto •Propiedad=Valor (ancho de
Esquema celda)
MsgBox strMensaje •No tiene el mismo valor.
•Asigna

End Sub
•XL Medium
•XL Thick

$ Guía Práctica - Cómo Automatizar Tareas con Excel Macros


COMANDOS VISUAL BASIC
PARA EXCEL

El lenguaje de programación Visual Basic difiere de todos los anteriores


en varios aspectos.
El primer punto de diferenciación.- Es la existencia de categorías de
comandos (niveles). Así tenemos:

L
¨ Funciones,
¨ Enunciados,
¨ Objetos, a
¨ Métodos, automatización (an-
¨ Propiedades, tes llamada
Se agrupan todas las palabras clave u órdenes que reconoce el automatización OLE)
lenguaje. Ver listado de comandos usuales. es una de las carac-
terísticas del
Component Object
El segundo punto.- La sintaxis del Visual Basic exige respetar un cierto
Model (COM), una
orden en la escritura de cada comando. Así por ejemplo, primero se
tecnología estándar
debe mencionar el objeto, el método y luego la propiedad que
en la industria usada
queremos cambiar de él, separándolos con puntos. Por ejemplo:
por las aplicaciones
para revelar sus ob-
CeldaActiva.Seleccionar
jetos a las herramien-
.AlineaciónHorizontal=xlCentrar
tas de desarrollo, len-
guajes de macros y
COMANDOS VISUAL BASIC MAS USADOS otras aplicaciones
que sean compatibles
Funciones: Abs, Ahora, Choole, Dir, Error, Esnulo, Espacio, Fecha, Val
con la
automatización. Por
ejemplo, una aplica-
Métodos:
ción de hojas de cál-
Abrir, Activar, Agregar, AjustarAutomáticamente, AnularSelección,
culo puede revelar
Autoformato, Autorellenar, Bordes, Copiar, CuadrosEdición,
una hoja de cálculo,
CuadroDiálogo, CuadrosTexto, Desviar, Hojas, HojasSeleccionadas,
un diagrama, celda o
Lenarhaciaabajo, Mostrar, Pegar, Rango, Ventanas
rango de celdas, cada
una como un tipo di-
Objetos: ferente de objeto. Un
Aplicación, Borde, Bordes, Botón, Botones, CuadroEdición, procesador de textos
CuadrosEdición, CuadrosTexto, Diálogo, Diálogos, Fuente, HojaCálculo, puede revelar objetos
Rango, Ventana como una aplicación,
un documento, un
Propiedades: párrafo, una frase, un
AlineaciónHorizontal, AnchoColumna, Selección, VentanaActiva marcador o una se-
lección.
Enunciados:
Con, Dim, Fin, Proced

Guía Práctica - Cómo Automatizar Tareas con Excel Macros %


BARRA DE HERRAMIENTAS DE
VISUAL BASIC PARA EXCEL
La barra de herramientas Visual Basic para Excel contiene botones que
le ayudan a trabajar con el código en los módulos.

Botón “Insertar Módulo”


Inserta un módulo de Visual Basic nuevo en el libro de trabajo
activo.

Botón “Ejecutar Macro”


Presenta el cuadro de diálogo Macro para que pueda selec-
cionar y ejecutar una macro.
Ejecutar Sub/UserForm Ejecuta el procedimiento actual si
el cursor está situado en un procedimiento o ejecuta el

L
formulario si éste está activo actualmente. Este comando se
convierte en el comando Continuar cuando está en modo

a barra de he- de interrupción.

rramientas del editor


de Visual Basic en El modo de interrupción.- Suspensión temporal de la ejecución
excel se encuentra de un programa mientras está en la etapa de desarrollo. En
en la parte superior. el modo interrumpir, se puede examinar, depurar, volver a
configurar, incrementar o continuar una ejecución. Se entra
Para accesar a ella se- en modo interrumpir:
leccionar la sub op-
ción Editor de Visual ·Al encontrar un punto de interrupción durante la ejecución
Basic de la opción del programa.
Macros del menú ·Al presionar CTRL+ENTRAR durante la ejecución del programa.
Herramientas. ·Al encontrar una instrucción Stop o un error de ejecución
no detectado durante la ejecución del programa.
·Agregando una expresión Interrumpir cuando el valor sea
Verdadero. La ejecución se detiene cuando el valor de la
expresión bajo inspección cambia y se convierte en True.
·Agregando una expresión Interrumpir cuando el valor cambie.
La ejecución se detiene cuando el valor de la expresión
bajo inspección cambie.

Botón “Reanudar Macro”


Reanuda la operación de una macro después que se haya
hecho una pausa en la misma.

& Guía Práctica - Cómo Automatizar Tareas con Excel Macros


Botón “Finalizar grabación”
Detiene la ejecución de una macro. También interrumpe la
grabación de una macro.

Botón “Modo de diseño”


Activa o desactiva el modo de diseño por proyecto. El
modo de diseño es el tiempo durante el cual no se ejecuta
el código del proyecto ni los eventos de la aplicación
principal o proyecto. Puede abandonar el modo de diseño
ejecutando una macro o utilizando la ventana Inmediato.

Botón “Explorador de proyectos”


Muestra una lista jerárquica de los proyectos y todos los
elementos contenidos y referenciados por cada uno de los
L a barra de he-
rramientas que están
incorporadas en Vi-
proyectos.
sual Basic y el coman-
do Personalizar,
Botón “ventana de propiedades”
puede:
Enumera las propiedades de tiempo de diseño correspondientes
·Activar y desactivar
a los objetos seleccionados y su configuración actual.
las barras de herra-
Puede cambiar estas propiedades en tiempo de diseño.
mientas
Cuando seleccione múltiples controles, la ventana de Propiedades
·Arrastrar las barras
contiene una lista de las propiedades comunes a todos los
de herramientas a di-
controles seleccionados. ferentes posiciones
en el escritorio.
Botón “Examinador de objetos” Depuración.- Mues-
Permite examinar todos los objetos disponibles en el proyecto tra la barra de herra-
y ver sus propiedades, métodos y eventos. Además, puede mientas Depuración
ver los procedimientos y constantes que están disponibles que contiene botones
en las bibliotecas de objetos en el proyecto. Puede mostrar para las tareas de de-
fácilmente Ayuda en pantalla cuando examina. Puede puración más fre-
utilizar el Examinador de objetos para encontrar y utilizar cuentes.
objetos que ha creado y también objetos de otras aplicaciones. Edición.- Muestra la
barra de herramientas
Edición que contiene
botones para las ta-
reas de edición más
frecuentes.
Estándar .- Muestra la
barra de herramientas
Estándar que es la
Para crear una predeterminada.
macro:
digitar el
programa en esta
ventana.

Guía Práctica - Cómo Automatizar Tareas con Excel Macros '


¿QUE SON MODULOS?

Es un conjunto de declaraciones y procedimientos que realizan dife-


rentes tareas independientemente una de otras, pero también pueden
actuar en conjunto. Dentro de estos módulos es donde se digitan las
macros que deseamos crear.
Cuando se crea un módulo dentro de un libro aparece de la siguiente
manera:

A l crear módu-
los se está creando
de una jerarquía de
módulos de progra-
mas e interfaces en-
tre ellos.

Módulo estándar.-
Un módulo que con-
tiene solamente de-
claraciones y defini-
ciones de procedi-
miento, tipo y datos.
Las declaraciones y
definiciones a nivel Al grabar una macro cada acción se realiza en un módulo que es
de módulo de un automáticamente creado, y éstos se encuentran después de la últi-
módulo estándar ma hoja de cálculo.
son Public de mane-
ra predeterminada.
Un módulo estándar
se denomina módu-
lo de código en ver-
siones anteriores de Este Módulo es

Visual Basic. una macro para

Módulo de clase.- poner en negrita

Módulo que contiene


la definición de una
clase (sus definiciones
de propiedad y méto- Hacer un click en la lista

do). descendente y observará todas

las macros que ha grabado.

 Guía Práctica - Cómo Automatizar Tareas con Excel Macros


Sub y End Sub
Marcan el inicio y el fin de la rutina, respectivamente. De momento
no nos romperemos mucho la cabeza con las rutinas. Simplemente
tendremos una idea de cómo trata Excel las macros. En posteriores
lecciones veremos cómo modificar el código de una macro a
nuestro gusto.

Ejemplo Nº1

Sub XXX( )
N o o lv id ar d e d ig it ar 10............... * S e p u ed e
d e c o lor A Z U L e n co lo c ar n úm er o s
caso de ser - ...................
(Ejem p lo, M e nsa je: Erro r)*
a d e ter mina d as
lín eas .
P O S IT I V O ( + ) , e n ...................
E x c e l.
...................
End Sub XXX

Ejemplo Nº2

Sub M1( )
..................
C rear un pro-
cedimiento escri-
................... biendo código
................... 1.Abra el módulo
...................
End Sub para el que desea es-
cribir el procedimien-
Sub M2( )
.................. to.
................... Puede crear un pro-
...................
................... cedimiento Sub,
End Sub Function o Property.
2.Escriba Sub,
Function o Property.
Presione F1 para ob-
tener Ayuda con sin-
Ejemplo Nº3 Hacer módulos taxis, si lo necesita.
3.Escriba el código
Sub letras( ) para el procedimien-
(*)Range (“a1:d6”).select to.
Visual Basic finaliza el
Whith selection.font
procedimiento con la
•name=“Times New Roman” instrucción End Sub,
•size=10 End Function o End
•color index=3 Property apropiada.

End With
End Sub

Recuerde:
Al ejecutar ’ (apóstrofe) automáticamente esa línea se convierte
en comentario y de color verde.

Guía Práctica - Cómo Automatizar Tareas con Excel Macros 


Para entrar o ingresar a un módulo, hacer los
pasos siguientes:

1. Seleccionar la opción Macros del menú


Herramientas
Herramientas.
2. A continuación, Seleccionar la sub-opción
Editor de Visual Basic
Basic.

C rear un proce-
dimiento utilizando el
cuadro de diálogo In-
sertar procedimiento
1.Abra el módulo
para el que desea es-
cribir el procedimien-
to.
2.En el menú Insertar,
haga clic en Procedi-
miento.
3.Digitar el nombre
del procedimiento en
el cuadro Nombre del
cuadro de diálogo In-
sertar procedimiento.
4.Seleccione el tipo
de procedimiento que
desea crear: Sub,
Function o Property.

5.Establezca el alcan-
ce del procedimiento
a Public o Private.
6.Puede seleccionar
Todas las variables
locales como estáti-
cas para agregar la
palabra clave Static a MODULO DE VISUAL BASIC
la definición del pro-
cedimiento. Un módulo de Visual Basic se usa para escribir, mostrar y editar código.
7.Hacer un click en el Los módulos almacenan códigos a nivel de módulo y de procedimiento.
botón Aceptar. Pueden haber varios procedimientos en un módulo y varios módulos en
un libro de trabajo.

Guía Práctica - Cómo Automatizar Tareas con Excel Macros


UN MODULO INCLUYE:

Barra de división
La barra de división divide un módulo en dos secciones. Es visible
si selecciona la opción Dividir del menú Ventana.

Barra de desplazamiento
Barras de desplazamiento horizontales y verticales le permiten
desplazarse dentro del código.

ESCRIBIENDO UNA MACRO MANUALMENTE

1.Para cambiar a un módulo de Visual Basic en el libro de trabajo

L
activo, seleccionar la ficha correspondiente.
O bien:
Para crear un módulo ubicarse en el editor de Visual Basic, luego os procedi-
en el menú Insertar seleccionar la opción Módulo
Módulo.
mientos tienen un es-
pacio limitado para
2.En el módulo, escriba Proced, Función o Propiedad seguido por
almacenar variables.
el nombre de la macro.
Cada vez que un pro-
3.Si hay argumentos, escríbalos entre paréntesis y separados por
cedimiento se llama a
un punto y coma.
si mismo, consume
4.Presionar la tecla Enter.
más de ese espacio.
5.Digitar el código.
Un procedimiento que
6.Escriba Fin Proced
Proced, Fin Función o Fin Propiedad y después presionar
se llama a si mismo es
Enter
Enter.
lo que se conoce
como un procedi-
ACTIVAR Y DESACTIVAR LA VERIFICACION DE miento recursivo. Un
procedimiento
SINTAXIS PARA LOS MODULOS recursivo que se lla-
ma continuamente a
1.Del menú Herramientas, seleccionar la opción Opciones. si mismo producirá fi-
2.Seleccionar la ficha General-Módulo. nalmente un error.
3.Seleccionar el cuadro de verificación “Interrumpir en todos los erro- Por ejemplo:
res”
res”, o eliminar la se-
lección. F u n c t i o n
4.Hacer un click en el Agotar(Máximo)
botón Aceptar. Agotar =
Agotar(Máximo)
End Function

Guía Práctica - Cómo Automatizar Tareas con Excel Macros !


EJECUTAR UNA MACRO

Una vez grabada, una macro puede ejecutarse en Microsoft Excel


o en el Editor de Visual Basic. Normalmente, se ejecutará la macro
en Microsoft Excel; sin embargo, puede ejecutarse desde el Editor
de Visual Basic, mientras se realiza la macro. Para interrumpir la
macro antes de que finalice las acciones que se han grabado,

A
presione ESC.

ntes de grabar
Ejecutar una macro desde un módulo de Visual Basic
o escribir una macro,
planifique los pasos y
1.Abra el libro que contiene la macro.
los comandos que
2.Seleccionar la opción Macro en el menú Herramientas y, a continuación,
desea que ejecute.
hacer un click en la sub opción Macros
Macros.
3.En el cuadro Nombre de la macro,
Si se comete algún
error mientras se gra- escriba el nombre de la macro que

ba la macro, también desea ejecutar.


se grabarán las co- 4.Hacer un click en el botón Modificar
Modificar.
rrecciones que se 5.Hacer un click en el botón Ejecutar
realicen. Cada vez sub
sub.
que se grabe una
macro, ésta se alma- Sugerencia.- Si desea ejecutar otra macro diferente mientras está
cenará en un nuevo utilizando el Editor de Visual Basic, hacer un click en la opción Macros
módulo adjunto a un en el menú Herramientas. En el cuadro Nombre de la macro, escriba
libro. el nombre de la macro que desea ejecutar y, a continuación, hacer
un click en Ejecutar.

Detener la ejecu- GRABAR UNA MACRO


ción de una macro

·Nota Para dete- Para grabar una macro hacer los pasos siguientes:
ner una macro an-
tes de que finali- 1.Seleccionar la opción Macro del menú Herramientas y, a continuación,
ce las acciones, hacer un click en la opción Grabar nueva macro
macro.
presionar la tecla 2.En el cuadro Nombre de la macro
macro, digitar un nombre para la macro.
ESC. El primer caracter del nombre de la macro debe ser una letra. Los
demás caracteres pueden ser letras, números o caracteres de
subrayado. No se permiten espacios en un nombre de macro; puede
utilizarse un caracter de subrayado como separador de palabras.

3.Para ejecutar la macro presionando un método abreviado, escriba


una letra en el cuadro Tecla de método abreviado. Puede utilizarse
CTRL+ l Letra(para letras minúsculas) o CTRL+ MAYUS + letra (para
letras mayúsculas), donde letra es cualquier tecla del teclado. La

" Guía Práctica - Cómo Automatizar Tareas con Excel Macros


tecla de método abreviado que se utilice no puede ser
ni un número ni un caracter especial. La tecla de
método abreviado suplantará a cualquier tecla de método
abreviado predeterminada en Microsoft Excel mientras
esté abierto el libro que contiene la macro.

4.En el cuadro Guardar macro en, hacer un click en la ubicación en


que desea almacenar la macro.

Si desea que la macro esté disponible siempre que se utilice


Microsoft Excel, almacene la macro en el libro de macros personales

U
en la carpeta INICIAR.
Para incluir una descripción de la macro, escriba la descripción en
el cuadro Descripción.
n procedi-
miento Function es
5.Hacer un click en el botón Aceptar
Aceptar.
una serie de instruc-
ciones de Visual Basic
Si se seleccionan celdas mientras se está ejecutando una macro, encerradas entre dos
ésta seleccionará las mismas celdas independientemente de la instrucciones
celda que se haya seleccionado en primer lugar, ya que graba Function y End
referencias absolutas de celda. Si desea tener una macro para Function. Un procedi-
seleccionar celdas independientemente de la posición que tenga miento Function es
la celda activa cuando se ejecute la macro, configure el grabador similar a un procedi-
de macros para que grabe referencias relativas de celda. En la miento Sub, aunque
barra de herramientas Detener grabación, hacer un click en Referencia. una función puede
Microsoft Excel continuará grabando macros con referencias relativas devolver además un
hasta que termine la sesión con Microsoft Excel o hasta hacer un valor. Un procedi-
click otra vez en Referencias relativas. miento Function
acepta argumentos,
6.Ejecute las acciones que desee grabar. como pueden ser
7.En la barra de herramientas Detener grabación, hacer un click en constantes, variables
o expresiones que le
Detener grabación.
pasa el procedimien-
to que efectúa la lla-
Sugerencia.- Si desea tener una macro para seleccionar una celda
mada. Si un procedi-
determinada, ejecute una acción y seleccionar otra celda relativa
miento Function no
a la celda activa; cuando se grabe una macro, pueden mezclarse
tiene argumentos, la
referencias relativas y absolutas. Para grabar una macro utilizando
instrucción Function
referencias, compruebe que está activada la opción Referencias
debe incluir un par de
relativas. Para grabar una macro utilizando referencias absolutas,
paréntesis vacíos. Una
compruebe que la opción Referencias relativas no está habilitada. función devuelve un
valor asignándolo a
su nombre en una o
Las macros eliminan tareas repetitivas y
más instrucciones del
crean informes automatizados. Visual Basic
procedimiento.
es el lenguaje usado para hacer estas
macros.

Guía Práctica - Cómo Automatizar Tareas con Excel Macros #


COPIAR UNA MACRO

Si hay una macro que contenga comandos que desea utilizar en otra
macro, puede copiar toda la macro o parte de ella en otro módulo.
También puede hacerse una copia del módulo de la macro para
duplicar todas las macros que contenga.

C
G Copiar parte de una macro para crear otra

1.Abra el libro que contenga la macro que desee copiar


UANDO
USAR MACROS Y .2.Seleccionar la opción Macro del menú Herramientas y, a continuación,

CUANDO NO: hacer un click en Macros


Macros.
3.En el cuadro Nombre de la macro, escriba el nombre de la macro
·Cuando se necesita que desea copiar.
una tarea que se 4.Hacer un click en la opción Modificar
Modificar.
realiza a diario más 5.Seleccionar las líneas de la macro que desee copiar.
rápido y no impor- 6.Para copiar toda la macro, asegúrese de que incluye las líneas Sub
ta ser repetitivo (ta- y End Sub en la selección.
rea grande). 7.Hacer un click en Copiar
Copiar.
8.Cambie al módulo en el que desee situar el código.
·Cuando se van a ge- 9.Hacer un click en Pegar
Pegar.
nerar diversas va-
riantes del docu- Sugerencia.- Para que una macro esté disponible siempre que se
mento similar. ejecute Microsoft Excel, almacene la macro en el libro de macros
personales. Como el libro de macros personales es un libro oculto
·No, cuando se quie-
que siempre está abierto, si desea copiar una macro deberá mostrarlo.
re el documento
compacto, evitando
repetir el mismo (en G Copiar un módulo de una macro a otro libro
este caso, usar pro-
cedimientos). 1.Abra el libro que contiene el módulo y el libro en que desea copiar
el módulo.
2.Seleccionar Macro del menú Herramientas y, a continuación, hacer
un click en el Editor de Visual Basic
Basic.
3.En el menú Ver, hacer un click en Explorador de proyectos.
Arrastre el módulo que desee copiar al libro de destino.

Recuerde al crear una macro los pasos de grabar una macro de la página 24,
luego ubíquese en la hoja que desea que vaya la macro.
Coloque o seleccione características de como van a ir las celdas filas. Por ejemplo
si desea que la fila 1 contenga un texto en negrita sólo tiene que seleccionar la fila
y hacer un click en el botón negrita, observe que en la parte inferior hay un
mensaje grabando todo lo que haga en esa hoja al presionar las teclas
correspondiente se ejecutará la macro.
Para dejar de grabar la macro hacer un click en el boton del editor de VB.

$ Guía Práctica - Cómo Automatizar Tareas con Excel Macros


CAJAS DE DIALOGO

Una caja de Diálogo se utiliza para ingresar o seleccionar datos u


opciones y así poder facilitar el reconocimiento de éstos, como
también el ingreso correcto de los mismos. Las cajas de Diálogo
tendrán que ser diseñadas, por lo tanto se tendrá que indicar y asignar
qué campos o datos desea utilizar.
Ejemplo:

Es un recuadro en el cual se crea elementos para poder interactuar

filtr o
U na caja de
diálogo es una ven-
Usuario
cr ea
Diálogo
Inte rfa se
Programa tana que se utiliza
Interactuar
para ejecutar cual-
quier operación.
Ejemplo: Caja de
diálogo de Excel Esta ventana, según
sea el caso, mues-
tra una serie de ele-
CREACION DE UNA CAJA DE DIALOGO mentos visuales que
hacen más sencilla
1. Hacer un click en el botón Modo Diseño, en la ventana de Excel. la operación.
Si no tiene activo seleccionar Ver >Barra de herramientas > activar
la subopción Visual Basic. Una caja de diálogo
2. Hacer un click en el botón cuadro de controles, puede contener:
·BOTONES.- Son ele-
Al activar el cuadro de controles se activa una ventana que mentos utilizados
contiene botones para Diseño la caja de Diálogo usted para poder iniciar la
creará la caja de diálogo deseada, que posteriormente cada ejecución de una ta-
objeto insertado tendrá un procedimiento la que llamará rea a partir de la caja
desde un módulo para poder ingresar o mostrar los datos
de diálogo. En la caja
de diálogo anterior se
deseados. El formato de la hoja de diálogo aparecerá de
tiene que, al utilizar el
la siguiente forma:
botón de grabar, se
registrará toda la in-
formación propor-
cionada por el
TITULO Barra de título
(+-Ventana)
usuario. Dos puntas
C A NA D A
P ER U Q hacia adentro del
IT AL IA
F RA N C IA Elem entos de la caja:
botón permiten al
B R AS IL
JA PO N
R O MA
S U IZA
A ceptar
A LE MA NI A
•Com binados (cuadros).
usuario diferenciar
H U N G R IA
USA
C A RI BE

R •Edición (cuadros).
C U BA
E SP A Ñ A

Sa lir •Casilla de Ver ificación entre varios boto-


•Botones de Acción
•Listas nes, cual de ellos va
A yu da •Botones de Com ando (aceptar, a ser utilizado.
cancelar, ayuda, salir, etc.).

Guía Práctica - Cómo Automatizar Tareas con Excel Macros %


U
Utilización de botones en la creación de la caja de diálogo.

na caja de
diálogo puede conte-
ner
·OPCIONES SIMPLES. Confección de Cajas de Diálogo Propias
Este elemento visual
está conformado por
todos aquellos com- Insertar Macro Diálogo
ponentes de un menú
que tienen la forma
de texto y que nos VENTANA CUADRO DE
indican una opera-
ción a realizarse o un CONTROLES
objeto a utilizar.
Como ejemplo de Ventana cuadro de controles contiene botones que se
este elemento, tene- usan para crear formularios personalizados en hojas de
mos en la ventana cálculo, gráficos y hojas de diálogo.
superior la palabra
siguiente: Modo Diseño
Descripción
Cambia al modo Diseño de formulario, en el que se
Una opción de este
puede modificar o crear un formulario utilizando las
tipo siempre presen-
herramientas ActiveX del Cuadro de controles. Mien-
ta una de sus letras
tras se encuentra en el modo Diseño de formularios,
con más brillo en la
este botón cambiará a Salir del modo Diseño.
pantalla, lo que sig-
nifica que se puede
Propiedades del control
acceder a ésta. sim-
Cambia en el archivo las propiedades de los controles ActiveX
plemente presionan-
do dicha letra. Como o las opciones del campo de formulario seleccionado.

objetivo principal tie-


ne el de personalizar Ver código
la información de una Abre el Editor de Visual Basic, donde pueden escribirse comandos
caja de diálogo. de Visual Basic.
·CUADROS DE CHE-
QUEO. Este elemento Casilla de verificación (Cuadro de controles)
define para una op- Crea una casilla de verificación en una hoja de cálculo, en una
ción la selección en- hoja de diálogo, en un gráfico o en un documento o formulario.
tre dos posibilidades,
«SI» o «NO». Está re- Cuadro de texto (Cuadro de controles)
presentada por un Crea un cuadro de edición, en el que puede escribir texto, en
cuadrado pequeño una hoja de cálculo, en una hoja de diálogo, en un gráfico o en
donde se marca con un documento o formulario.
una EQUIS para indi-
car SI; o dejar en Botón de comando (Cuadro de controles)
blanco lo que indica-
Crea un botón, al que puede asignar un procedimiento de Visual
ría NO.
Basic, en una hoja de cálculo, en una hoja de diálogo, en un

& Guía Práctica - Cómo Automatizar Tareas con Excel Macros


gráfico o en un documento o formulario.

Botón de opción (Cuadro de controles)


Crea un botón de opción en una hoja de cálculo, en una hoja de
diálogo, en un gráfico o en un documento o formulario.
U na caja de
diálogo puede conte-
ner:
Cuadro de lista (Cuadro de controles) M CAJA DE SELECCIO-
Crea un cuadro de lista en una hoja de cálculo, en una hoja de NES. Este cuadro
diálogo, en un gráfico o en un documento o formulario.
dentro de la caja de
diálogo, nos permi-
te seleccionar una
Cuadro combinado (Cuadro de controles)
posibilidad, de va-
Crea una combinación de cuadro de lista desplegable y de cuadro de
rias, para una deter-
edición en una hoja de cálculo, en una hoja de diálogo, en un gráfico o minada opción. Este
en un documento o formulario. elemento también
es de tipo exclusi-
Etiqueta (Cuadro de controles) vo y tiene como fi-
Crea una etiqueta de texto en una hoja de cálculo, en una hoja de nalidad personalizar
diálogo, en un gráfico o en un documento o formulario. la información.
Dentro de este cua-
dro se muestran las
Títu lo
posibilidades, orde-
nadas de arriba ha-
(T i tle )
INGRESO DEL LOGOTIPO
T e x to : C u adr o d e Ed ic ió n
(E d i t Bo x ) cia abajo o de iz-
quierda a derecha y
A ce p t ar
l T ít ul o
L im p iar B o tó n
Fi g ur a
S alir
(B o tto n)
a la izquierda de
cada una de ellas,
B o tó n d e O p ción
(O pti o n b ut ton s ) un pequeño círculo.
Para elegir una po-
sibilidad de la op-
Macro Funciones
ción, ésta debe
marcarse con la ba-
En inglés En español rra espaciadora y el
Funtion Areas (largo, ancho) círculo contendrá
Función Areas (largo, ancho)
un punto en su in-
if largo=ancho
Si largo=ancho entonces
msgbox “Es un cuadrado” Cuadro Msj “Es un cuadrado” terior.
Area=“ERROR”
Areas=“ERROR”
else
si otro
·ASPAS DE SELEC-
AREA1=largo*ancho
End If
AREA1=largo*ancho CION. Esta opción
Fin Si
End Funtion
se utiliza para mar-
Fin Función
car una referencia,
indicándonos si-
tuaciones de reali-
Cada uno de los elementos que puede integrar la caja de diálogo, pueden zación, Por ejemplo,
tener dos estados de comportamiento dentro de la caja de diálogo a la que
si encontramos esta
pertenece.
·Disponible .- Que indica que la opción está activa, pudiéndose acceder a aspa, no indicará
ella en cualquier momento presionando siempre la letra resaltada que lo que el elemento al
identifica. que pertenece ha
·No disponible.- Debido a la interoperabilidad y las relaciones de sido considerado.
dependencia que puedan existir entre las distintas opciones de una caja de
diálogo, es probable que una opción este imposibilitada para se utilizada.

Guía Práctica - Cómo Automatizar Tareas con Excel Macros '


Ejecutar una macro desde un método abreviado

1. Seleccionar Macro en el menú Herramientas y, a continuación,


hacer un click en la opción Macros.
2. En el cuadro Nombre de la macro
macro, escriba el nombre de la
macro a la que desea asignar un método abreviado.
3. Hacer un click en Opciones.
4. Para ejecutar la macro presionando una tecla de método
abreviado, escriba una letra en el cuadro Tecla de método
abreviado. Puede utilizarse CONTROL+ letra o CONTROL+ MAYÚS

C
+ letra, donde letra es cualquier tecla del teclado. La tecla
de método abreviado suplantará a cualquier tecla de método
ómo evitar
abreviado predeterminada en Microsoft Excel mientras esté
problemas con las
abierto el libro que contiene la macro.
teclas de método
abreviado.
Para incluir una descripción de la macro, escriba la descripción en
el cuadro Descripción.
Si existen dos hojas
de macros que con-
tiene macros con las 5. Hacer un click en el botón Aceptar.

mismas teclas de 6. Hacer un click en el botón Cancelar


Cancelar.
método abreviado,
Excel ejecutará el Ejecutar una macro desde un botón o un control gráfico
macrocomando de la
hoja de macros cuyo Puede asignar una macro a un botón, a un objeto de dibujo o a un
nombre aparece pri- control gráfico en la hoja de cálculo. Si hace un click en el botón
mero en orden u objeto de dibujo o se cambia el control, por ejemplo, haciendo
alfabético. Cuando click en una casilla de verificación o un elemento de una lista, la
asigne teclas de mé- macro se ejecutará de forma automática.
todo abreviado, ase-
gúrese de evitar con- También puede ejecutar una macro de un control ActiveX. Para
flictos con las demás obtener más información acerca de cómo crear un control ActiveX,
hojas de macros que haga clic en .
utilice.
1. Hacer un click en el botón o el control gráfico para que
aparezcan los controladores de selección.
Escritura de un
2. Hacer un click en el controlador de selección del botón o del
macrocomando.
control gráfico y, a continuación, hacer un clicK en Asignar
Macro en el menú contextual.
También se pueden
3. Para asignar una macro ya existente al botón o al control
introducir las fórmu-
gráfico seleccionado, escriba el nombre de la macro en el
las de un
cuadro Nombre de la macro y luego hacer un click en el
macrocomando direc-
botón Aceptar.
tamente en una hoja
de macros sin necesi-
dad de grabar. Para grabar una nueva macro y asignarle el botón u objeto
gráfico, hacer un click en Grabar.

! Guía Práctica - Cómo Automatizar Tareas con Excel Macros


Ejecutar una macro desde un botón de la barra de herramientas

Puede ejecutarse una macro desde un botón, desde una barra de herramientas integrada
o desde una barra de herramientas personalizada.

1. Del menú Herramientas


Herramientas, hacer un click en Personalizar.

2. Si la barra de herramientas que contiene el botón no es visible, hacer un click en la


ficha Barra de herramientas y, a continuación, seleccione la casilla de verificación que
aparece junto al nombre de la barra de herramientas.
3. Si el botón que desea utilizar para ejecutar la macro no pertenece a la barra de
herramientas, hacer un click en la ficha Comandos y, a continuación, hacer un click en
Macros en la lista Categorías. En la lista Comandos, arrastre el botón Personalizar a una
barra de herramientas.

4. Hacer un click en el botón de la barra de herramientas y, a continuación, hacer un click


en Asignar Macro en el menú contextual.
5. En el cuadro Nombre de la macro
macro, escriba un nombre para la macro.

Ejecutar una macro desde un área, zona interactiva o un objeto gráfico

1. Crear un objeto gráfico.


2. Dibujar otro objeto gráfico sobre el primero en el lugar en que desee crear una zona
interactiva.
3. Con el segundo objeto gráfico todavía seleccionado, hacer un click con el botón
secundario en el controlador de selección del botón o del objeto gráfico para ver el menú
de método abreviado.
4. En el menú contextual, hacer un click en Asignar macro
macro.
5. Para asignar una macro al botón o control gráfico, escriba el nombre de la macro en
el cuadro Nombre de la macro y, a continuación, hacer un click en el botón Aceptar.

Para grabar una nueva macro y asignarla al objeto gráfico seleccionado, hacer un click
en Grabar
Grabar. Cuando finalice de grabar la macro, hacer un click en Detener grabación que
se ubica en la barra de herramientas Grabar macro
macro.

6. En el menú Formato, hacer un click en Autoforma y, a continuación, hacer un click en


la ficha Colores y líneas.
7. Bajo Rellenar, hacer un click en Sin relleno en el cuadro Color. Bajo Línea, hacer un click
Sin línea en el cuadro Color.
8. Repita los pasos del 2 al 7 para cada zona interactiva que desee crear.

Guía Práctica - Cómo Automatizar Tareas con Excel Macros !


ALGUNAS FUNCIONES
DE VISUAL BASIC

En seguida se muestran algunas funciones interconstruidas de Visual


Basic. Una función es un procedimiento que devuelve un valor.

ARCHIVO

U
·FileAttr
FileAttr - Devuelve información del sistema operativo acerca
dl archivo que esta abierto.
n procedi- ·FileDateTime
FileDateTime - Devuelve una cadena de caracteres que
miento Function es indican la fecha y la hora de la última modificación del archivo.
una serie de instruc-
FileLen - Devuelve un entero largo que indica la longuitud en
·FileLen
ciones de Visual Basic
bytes de un archivo .
encerradas entre dos
·FreeFile
FreeFile - Devuelve el siguiente numero de archivo valido que
instrucciones
no esta en uso.
Function y End
·GetAttr
GetAttr - Devuelve un entero qu indica los atributos de un
Function.
archivo, directorio, o etiqueta de volumen.
Loc - Devuelve la posición actual en un archivo abierto.
·Loc
Instrucción.-Una
·LOF
LOF - Devuelve el tamaño en bytes de un archivo abierto.
u n i d a d
sintácticamente ·Seek
Seek - Devuelve la posición del archivo actual.
completa que expre- NÚMERO
sa un tipo de acción,
declaración o defini- ·Abs
Abs - Devuelve el valor absoluto de un número.
ción. Normalmente ·Atn
Atn - Devuelve el arcotangente de un número.
una instrucción tiene ·Cos
Cos - Devuleve el coseno de un ángulo (ángulo en radianes).
una sola línea aunque ·Sin
Sin - Devuelve el seno de un ángulo (ángulo en radianes).
es posible utilizar dos
puntos (:) para poner
más de una instruc- CADENA
ción en una línea.
También se puede ·InStr
InStr - Devuelve la posición de la primera ocurrencia de una
utilizar un carácter de cadena dentro de otra cadena de caracteres
continuación de línea LCase, LCase$ - Devuelve una cadena de caracteres en la
·LCase,
(_) para continuar una cuál todas las letras han sido convertidas a minúsculas.
sola línea lógica en Left, Left$ - Devuelve los n cacarteres a la izquierda de un
·Left,
una segunda línea fí-
cierto argumento. (cadena).
sica.
·Len
Len - Devuelve el número de caracteres en una expresión de
cadena o el número de bytes necesarios para almacenar una
variable.
LTrim, LTrim$ - Devuelve una copia de una cadena eliminando
·LTrim,
todos los espacios en blanco.
Mid, Mid$ - Devuelve una cadena qu es parte de una cadena.
·Mid,
Right, Right$ - Devuelve los n caracteres más a la derecha
·Right,

! Guía Práctica - Cómo Automatizar Tareas con Excel Macros


de un argumento determinado.
RTrim, RTrim$ - Devuelve una copia de la cadena de caracteres
·RTrim,
con los espacios de la derecha eliminados.
Space, Space$ - Devuelve una cadena que consiste de un
·Space,
número especifico de espacios.
Trim, Trim$ - Devuelve una copia de una cadena con los
·Trim,
espacios de ambos lados eliminados.
UCase, UCase$ - Devuelve una cadena con todas las letras
·UCase,
convertidas a mayúsculas.

HORA/FECHA

Date, Date$ - Devuelve la fecha actual..


·Date,
E n el siguiente
ejemplo, la función
·IsDate
IsDate - Returns a value indicating whether of not a Variant Celsius calcula grados
argument can be converted to a date. centígrados a partir de
·Minute
Minute - Returns an integer between 0 and 59, inclusive, that grados Fahrenheit.
represents the minute of the hour corresponding to the time Cuando se llama a la
provided as an argument. función desde el pro-
Month - Returns an integer between 1 and 12, inclusive, that
·Month cedimiento Principal,
represents the month of the year for a date argument. se le pasa una varia-
·Now
Now - Returns a date that represents the current date and ble que contiene el
time according to the setting of the computer’s system date valor del argumento.
and time. El resultado de los cál-
Time, Time$ - Returns the current system time.
·Time, culos se devuelve al
·Timer
Timer - Returns the number of seconds that have elapsed procedimiento que
since 12:00 a.m. (midnight). efectúo la llamada y se
·Weekday
Weekday - Returns an integer between 1 (Sunday) and 7 presenta en un cuadro
(Saturday) that represents the day of the week for a date de mensaje.
argument.
Sub Principal()
·Year
Year - Returns an integer between 100 and 9999, inclusive,
temp =
that represents the year of a date argument.
Application.InputBox(Texto:=
_

"Por favor, introduzca la tem-


VARIABLE CONVERSION
peratura en grados F.",
Tipo:=1)
·CCur
CCur - Explicitly converts expressions to the Currency data
MsgBox "La temperatura es "
type.
& Celsius(temp) & " grados C."
CDbl - Explicitly converts expressions to the Double data type.
·CDbl
End Sub
·CInt
CInt - Explicitly converts expressions to the Integer data type.
·CLng
CLng - Explicitly converts expressions to the Long data type.
Function Celsius(GradosF)
·CSnd
CSnd - Explicitly converts expressions to the Single data type.
Celsius = (GradosF - 32) * 5 /
·CStr
CStr - Explicitly converts expressions to the String data type.
9
·CVar
CVar - Explicitly converts expressions to the Variant data type.
End Function
·CVDate
CVDate - Converts an expression to a Variant of VarType 7
(Date).

Guía Práctica - Cómo Automatizar Tareas con Excel Macros !!


NOMBRES DE LOS ARCHIVOS DE MACROS
AUTOMATICAS QUE SE AGREGAN

La siguiente tabla, lista los nombres de los archivos de las macros


automáticas que inicialmente se agregan en forma automática
cuando se inicia Excel.

Administrador de macros automáticas.-ADMMACRO.XLA


Sinopsis.- SINOPSIS.XLL
Administrador de informes.- INFORMES.XLA
Administrador de escenarios.- SCENARIO.XLA
Solver.- SOLVER.XLA
Administrador de vistas.- VISTAS.XLA

L as instruccio-
nes de declaración se PROGRAMANDO MACROS
usan para dar nom-
bre y definir procedi-
mientos, variables,
AÑADIR BORDES GRUESOS
matrices y constantes
El siguiente ejemplo
contiene tres decla- Para añadir bordes gruesos al contenido, hacer lo siguiente:
raciones.
Por ejemplo si se desea colocar el borde grueso de las celdas A8
a B14, entonces:
Sub DarFormato()
Const limite As Integer = 33 ‘bordes Macro
Dim miCelda As Range ‘Coloca un borde grueso de A8 a B14

' Mas instrucciones
Sub bordes ()
End Sub

Range(“A8.B14”). Select
La instrucción Sub Selection.Borders(xlLeft).LineStyle=xkNone
(con la correspon- Selection.Borders(xlRight).LineStyle=xkNone
diente instrucción Selection.Borders(xlTop).LineStyle=xkNone
Selection.Borders(xlBottom).LineStyle=xkNone
End Sub) declara un
Selection.BordersAroundWeight:=xlMedium, ColorIndex:=xlAutomatic
procedimiento llama-
do DarFormato. To- End Sub
das las instrucciones
que aparecen entre
las instrucciones Sub
y End Sub se ejecu-
tan cuando el proce-
dimiento DarFormato
se ejecuta o se llama.

!" Guía Práctica - Cómo Automatizar Tareas con Excel Macros


CENTRAR

Para centrar el contenido, hacer lo siguiente:

‘cen Macro
‘Centra el contenido de las celdas B1 a D1

Sub cen ()
Range(“B1:D1”). Select
With Selection
.HorizontalAlignement =xlCenter
.VerticalAlignement =xlBottom
.WrapText = False
.Orientation = xlHorizontal
Para dar nombre a
End With procedimientos,
constantes, variables
End Sub y argumentos en un
módulo de Visual
Basic han de seguir-
se las siguientes re-
glas:
·El primer carácter
debe ser una letra.
·En el nombre no se
pueden utilizar espa-
cios, puntos (.), sig-
nos de interjección
(!), ni @, &, $, #.
CAMBIAR A NEGRITAS ·El nombre no puede
tener más de 255 ca-
racteres de longitud.
Para Poner en negritas el contenido del rango de celdas B1:D1,
hacer lo siguiente: ·No se deben usar
nombres iguales a los
‘neg Macro de los procedimien-
‘Pone en negritas el rango B1:D1
‘ tos Function, instruc-
Sub neg () ciones y métodos de
Visual Basic.
Range(“B1:D1”). Select
·Los nombres no se
Selection(“B1:D1”).Select
pueden repetir den-
End Sub tro del mismo nivel
de alcance.
Nota.- Visual Basic
no diferencia entre
mayúsculas y minús-
culas, pero respeta la
forma en que se es-
criben las instruccio-
nes de declaración de
nombres.

Guía Práctica - Cómo Automatizar Tareas con Excel Macros !#


ESCRIBIR DIAS DE LA SEMANA

Para escribir días de la semana desde A8, hacer el programa


siguiente:
‘días Macro
‘Escribir los días de la semana desde A8

Sub días ()

Range(“A8”). Select
ActiveCell.FormulaRCC2 =”Lunes”

U
Selection.Autofill Destination: Range (“A8:A14), Type:)=xlFillDefault
Range(“A8:A14”).Select
End Sub
na instrucción
ejecutable inicia una
acción. Puede ejecu-
tar un método o fun-
ción y saltar a blo-
ques de código o no
ejecutar otros. Las
instrucciones
ejecutables incluyen a
menudo operadores
condicionales o ma-
ESTABLECER LA FUNCION SUMA
temáticos.
El siguiente ejemplo
utiliza la instrucción Para establecer la función SUMA en la celda B15, hacer el
For Each...Next para programa siguiente:
pasar por cada una de
las celdas de un ran- ‘sumatoria Macro
go llamado ‘Establece función SUMA en celda B15
Milntervalo en la ‘
Sub sumatoria ()
Hoja1 de un libro
Microsoft Excel ac- Range(“B15”). Select
tivo. La variable c ActiveCell.FormulaR1C1 =”TOT.SEMA=”
Range(“B15”).Select
es una celda en la
ActiveCell.FormulaR1C1 =”=SUM(R [-7]C:R[-1]C)”
colección de celdas
que componen el End Sub
Milntervalo.
Sub DarFormato()
Const limite As Integer = 33
For Each In Worksheets
(“Hoja1”).Ranger(“Milntervalo”).Cells
If c.Value>limite Then
With c.Font

.Bold=true

.Italic=true
End With
End If
Next c
MsgBox “¡Find!”
End Sub

!$ Guía Práctica - Cómo Automatizar Tareas con Excel Macros


CAMBIAR FORMULAS A VALORES
E l editor de vi-
sual Basic proporcio-
Si alguna vez ha tenido un puñado de fórmulas en una hoja de na muchas herra-
cálculo que necesitaba reemplazar con los valores calculados, mientas que se pue-
apreciará esta macro que hace el trabajo por usted. La macro den usar para dise-
es la siguiente: ñar aplicaciones grá-
ficas.
‘valores Macro
‘cambiar fórmulas a valores
Proyectos
‘ Lenguaje Visual
Sub Form2Val () Basic
Formularios y con-
For Each c In Selection.Cells
troles
c.Formula= c.Value
Barras de menú
Next c Módulos

End Sub
Un formulario inclu-
Para usar esta macro, colóquese en la celda o seleccione las ye los controles y el
código asociado a
celdas que quiere cambiar y ejecútela. Lo demás es automático.
dicho formulario.
Podemos compartir
CONTROLAR MAYUSCULAS/MINUSCULAS código en todo el
proyecto colocando
EN LAS CELDAS
el código en un mó-
dulo de formulario o
Aquí se encuentra un par de macros para cambiar las entradas en un módulo
de celdas entre mayúsculas y minúsculas. Para convertir el texto estándar y declaran-
en mayúsculas, para ello use la siguiente macro: do el procedimiento
como Public. Los
Sub MakeUpperCase() formularios se crean
For Each c In Selection.Cells como interfaz de la
c.Value= UCase$(c.Value) aplicación. Cada for-
Next c mulario es una ven-
End Sub tana que presenta
controles, gráficos u
otros formularios.
Para cambiar el texto a minúsculas utilizar esta macro similar: Los formularios se
pueden usar de dife-
Sub MakeLowerCase() rentes maneras:
For Each c In Selection.Cells
c.Value=LCase$(c.Value) Como una pantalla
Next c ilustrada como in-
End Sub troducción a una
aplicación.
Para utilizar cualquiera de estas macros, simplemente colóquese
Como un libro den-
tro de una aplicación.
en la celda o seleccione las celdas que quiera cambiar, y ejecute
Como un cuadro de
la macro.
diálogo.

Guía Práctica - Cómo Automatizar Tareas con Excel Macros !%


ELIMINAR ESPACIOS EN CELDAS

Los epacios extra que están antes de alguna entrada de una celda
pueden crear problemas cuando intentan ordenar y filtrar tablas.
Para eliminar estos espacios, seleccione las celdas y ejecute esta
macro:

‘eliminar espacios en celdas



Sub TrimIt()
El lenguaje que se usa
también se encuen- For Each c In Selection.Cells
tra en muchas apli- c.Value=Application.Trim(c.Value)
caciones de Next c
Microsoft Office
como VisualBasic o End Sub
Project, . Las carac-
terísticas del lengua-
je incluyen: Para usar esta macro, colóquese en la celda o seleccione las celdas
que quiere cambiar y ejecútela. Lo demás es automático.

CERRAR TODOS LOS LIBROS INACTIVOS

Esta macro cierra todos los libros inactivos.


Para cerrar todos los libros inactivos, ejecute esta macro:

Sub CloseAllInactive()
Dim Wb As Workbook
Dim AWb As String
AWb = ActiveWorkbook.Name
SaveAll
For Each Wb In Workbooks
If Wb.Name <> AWb Then
Wb.Close savechanges:=True
End If
Next Wb
Application.StatusBar = “All Workbooks Closed.”
End Sub

!& Guía Práctica - Cómo Automatizar Tareas con Excel Macros


EJEMPLOS DE APLICACION

A continuación se muestra ejemplos de aplicaciones hechas con el


editor de Visual Basic de Excel:

EJEMPLO Nº1

L
son
os controles
herramientas
como cuadros, bo-
tones y etiquetas
que se disponen en
un formulario para
permitir la entrada
de datos o para pre-
sentar resultados.
También hacen más
Diseñar el formulario con las siguientes características : atractivos los for-
1. Ingresar el nombre del usuario mularios. Para dibu-
2. Digitar la contraseña jar controles en un
3. Hacer un click en el botón Aceptar para Ingresar al sistema, si es formulario se usa el
correcta debe salir un aviso “Bienvenido al sistema”. si no digita
Cuadro de herra-
mientas.
la clave correcta debe salir un aviso “No tiene autorización”
4. Hacer un click en el botón Salir si no tiene autorización.
Usando la ventana
Propiedades se de-
finen las propieda-
des de formularios y
controles. Las pro-
piedades especifi-
can los valores ini-
ciales de las carac-
terísticas, tales
como tamaño, nom-
bre y posición. La
ventana Propiedades
enumera todas las
A continuación propiedades y los
Propiedad
se muestra las valores del control o
Valor
fases en la módulo selecciona-
construcción de do actualmente.
una aplicación

Guía Práctica - Cómo Automatizar Tareas con Excel Macros !'


Algunas consideraciones:
1.Para insertar en el fondo
del formulario una imagen,
en la ventana de propiedades,
la propiedad Picture insertar
un valor es decir, seleccionar
la imagen que desea que
vaya en el formulario.
2.Las etiquetas Nombre de
usuario y Contraseña cambiar
FASE DE
el tipo de fuente con la
propiedad Font. Luego para DISEÑO
cambiar el fondo de la etiqueta
con la propiedad BackColor.
3. La caja de texto o Texbox
en la propiedad PasswordChar
digitar* para enmascarar la
clave.

FASE DE
CODIFICACION

Para hacer que una aplicación responda a las


acciones del usuario o a los eventos del sistema, se
tiene que escribir código para los formularios y los
controles.

FASE DE
EJECUCION

La interfaz de usuario de una aplicación está


compuesta por objetos, formularios y controles que
permiten a los usuarios introducir y ver información.
Cada uno de estos objetos reconoce acciones, tales
como hacer click en un botón, abrir un formulario o
escribir en un campo. Estas acciones se denominan
eventos. Cuando se produce un evento en la aplicación,
el editor de Visual Basic lo reconoce automáticamente
y ejecuta el código escrito. Este código se denomina
procedimiento de evento.

" Guía Práctica - Cómo Automatizar Tareas con Excel Macros


EJEMPLO Nº2

Hacer un Juego donde:


1. Al hacer un click en el botón Jugar empieza a sortear los números, dado 1 y dado 2 de
modo que la suma de ambos debe dar 7 para ganar. Cualquier otro número sorteado
pierde el juego.
2. Al ganar el juego debe mostrar el aviso “GANE”, con una imagen alusiva.
3. Al perder el juego debe mostrar el aviso “PERDI”, con una imagen alusiva
4. Para reiniciar otro juego debe hacer un click en el botón Jugar.
5. Para salir del juego hacer un click en el botón Salir, debe salir un aviso si desea salir del
juego, si hace un click en el botón si sale del juego, y si hace un click en el botón no entonces
reiniciará el juego.
A continuación se muestra las imágenes del juego:

Pantalla inicial Pantalla 1 Pantalla 2

En el momento de diseñar tener


se denominó a los objeto de
la siguiente forma:
Cada formulario o control responde a un juego predefinido de
eventos. Por ejemplo: un botón de comando reconoce los siguientes
Form = Formulario
eventos.
cmdjugar = botón Jugar
Evento Acción cmdsalir = botón Salir
lblm1 = Gané
Click Seleccionar un botón con el mouse o con el teclado. lblm2 = Perdí
DragDrop Colocar un control en el botón.
lblm3 = Jugando
DragOver Arrastrar un control sobre el botón.
GotFocus El botón obtiene el foco. lbld1 = dado 1
KeyDown Presionar una tecla mientras el botón tiene el foco. lbld2 = dado 2
KeyPress Presionar una tecla y devolver su valor ASCII. lblsuma = suma
KeyUp Liberar una tecla mientras el botón tiene el foco.
LostFocus El botón pierde el foco.
MouseDown Presionar el botón del mouse sobre el botón.
MouseMove Mover el puntero del mouse por encima del botón.
MouseUp Liberar el botón del mouse en el botón.

Guía Práctica - Cómo Automatizar Tareas con Excel Macros "


Algunas consideraciones:
1.Insertar las imágenes superpuestas, para ello, Private Sub Form_Load()
en la ventana de propiedades, la propiedad Image1.Visible = False
Picture insertar un valor es decir, seleccionar Image2.Visible = False
la imagen que desea que vaya en el formulario. Image3.Visible = False
Luego en la propiedad Visible seleccionar el lblm1.Visible = False
valor False. lblm2.Visible = False
2.Las etiquetas Jugando, Gané, Perdí, dado1,
dado 2 y suma se debe cambiar el tipo de End Sub
fuente con la propiedad Font. Luego para
cambiar el fondo de la etiqueta con la ropiedad Private Sub CMDSALIR_CLICK()
BackColor. RPTA = MsgBox("¿Desea Salir del Juego?",
Luego en la propiedad Visible seleccionar el 4 + 32, "DESEA SALIR")
valor False. If RPTA = vbYes Then
End
EL CODIGO SERIA ASI: End If
End Sub
Private Sub cmdjugar_Click()
Do While 1 Private Sub LBLD1_Click()
x = Int(Rnd * 10) Do While 1
If x >= 1 And x <= 6 Then x = Int(Rnd * 10)
lbld1.Caption = Str(x) If (x >= 1 And x <= 6) Then
Exit Do lbld1.Caption = Str(x)
End If Exit Do
Loop End If
Do While 1 Loop
y = Int(Rnd * 10) End Sub
If y >= 1 And y <= 6 Then
lbld2.Caption = Str(y) Private Sub LBLD2_Click()
Exit Do Do While 1
End If y = Int(Rnd * 10)
Loop If (y >= 1 And y <= 6) Then
lbld2.Caption = Str(y)
lblsuma.Caption = Str(Val(x) + Val(y)) Exit Do
If x + y = 7 Then End If
Image2.Visible = True
lblm1.Visible = True End Sub
Image3.Visible = False: lblm2.Visible = False
Image1.Visible = False: lblm3.Visible = False
Else
Image3.Visible = True: lblm2.Visible = True
Image1.Visible = False: lblm1.Visible = False
Image2.Visible = False
End If
End Sub

" Guía Práctica - Cómo Automatizar Tareas con Excel Macros


EJEMPLO Nº3

Insertar un

Diseñar una macro que sombree en forma de


un recuadro al presionar un botón (si se desea
esta macro puede ejecutarse en otras hojas).

Algunas consideraciones:
1.Para colorear en el fondo, seleccionar las
celdas que desea que vaya sombreado.
2.Insertar un botón de comando, cuyo nombre
sea “Sombreado”.

El código en el Editor de Visual Basic, insertar Si desea agregar el evento click con el botón

un módulo y escribir lo siguiente: de comando creado, seleccionar la hoja del

'
libro donde se encuentra el boton creado

'sombreado
lluego hacer doble click sobre el botón y digitar

'
el siguiente código:
Private Sub CommandButton1_Click()
Sub sombra()
Range("B4:G9").Select
Range("B4:G9").Select
With Selection.Interior
With Selection.Interior
.ColorIndex = 15
.ColorIndex = 15
.Pattern = xlSolid
.Pattern = xlSolid
End With
End With
Range("C5:F8").Select
Range("C5:F8").Select
Selection.Interior.ColorIndex = xlNone
Selection.Interior.ColorIndex = xlNone
Range("D12").Select
Range("D12").Select
End Sub
End Sub

Guía Práctica - Cómo Automatizar Tareas con Excel Macros "!


1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
Procedimiento. Es una secuencia con
Para ejecutar en otro libro esta macro (por 1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
nombre de instrucciones que se ejecutan
ejemplo en el libro 2), presionar el botón de 1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
como una unidad. Por ejemplo, Function,
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
ejecución, luego se muestra una ventana de 1234567890123456789012345678901212345678901234567890123
Property y Sub son todos tipos de
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
Macro. 1234567890123456789012345678901212345678901234567890123
procedimientos. Un nombre de
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
Seleccione la macro “sombra”, para ello, seleccionar procedimiento siempre se define a nivel
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
el libro donde desea que se ejecute la macro. de módulo. Todo el código ejecutable debe
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
estar contenido en un procedimiento. Los
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
Finalmente hacer un click en el botón Ejecutar. 1234567890123456789012345678901212345678901234567890123
procedimientos no se pueden anidar dentro
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
1234567890123456789012345678901212345678901234567890123
de otros procedimientos.
1234567890123456789012345678901212345678901234567890123

Para Copiar código de ejemplo de la Ayuda


a la aplicación, hacer lo siguiente:

1.Utilice Ayuda para mostrar el tema cuyo


ejemplo desea utilizar.

2.Hacer un click en el Ejemplo vinculado en


la zona de no desplazamiento cerca de la
parte superior de la página. Se muestra el
código de ejemplo.
Finalmente al ejecutar la macro entonces
automáticamente se mostrará como en la figura: 3.Hacer un click con el botón secundario
del mouse en la parte del código que
desea copiar a la aplicación.

4.Seleccionar Copiar del menú contextual.

5.Mover el enfoque detrás de la ventana


Código y colocar el puntero del mouse
donde desea insertar el código.

6.Hacer un click con el botón secundario


del mouse de nuevo y seleccionar Pegar
para insertar el ejemplo de código en la
ventana Código.

Cómo Copiar código de ejemplo de la Ayuda

Recuerde.- También puede presionar las teclas


A veces puede desear copiar un ejemplo útil
al mismo tiempo CTRL+C para copiar un ejemplo
de la Ayuda de Visual Basic. Mientras que
seleccionado en la ventana Ayuda.
muchos ejemplos necesitan mucho código para
funcionar correctamente, algunos ejemplos son
Presionar CTRL+V para pegar el ejemplo en la
útiles para ver cómo se comporta un procedimiento
ventana Código.
particular en una técnica de flujo de control.

"" Guía Práctica - Cómo Automatizar Tareas con Excel Macros


EJEMPLO Nº4

Esta aplicación permite mostrar los resultados del tipo de cambio en dólares o soles.
Por ejemplo el tipo de cambio es 3.45 con un monto de 100 soles equivale a 345 soles, del
mismo tipo de cambio con un monto de 100 dólares equivaldría a 28,9855072463768 centavos
de dólar. Si se desea saber otros montos entonces hacer un click en el botón Otro y si deseo
terminar la sesión hacer un click en el botón Salir.

Para realizar este aplicación, se debe tener en cuenta lo siguientes pasos:

Guía Práctica - Cómo Automatizar Tareas con Excel Macros "#


El código sería el siguiente:

Private Sub SALIR_Click()


Private Sub OTRO_Click() End
txttipo = "" End Sub
txtmonto = ""
txtresul = ""
txttipo.SetFocus Private Sub UserForm_Click()
End Sub

End Sub
Private Sub resul_Click()
If (Option1.Value = True) Then Finalmente, sólo queda ejecutarlo; generalmente,
txtresul = Val(txtmonto) / Val(txttipo) Se pueden cometer tres tipos de errores:
Errores de compilación: Fallos provocados por la
Else incorrecta construcción del código.
txtresul = Val(txtmonto) * Val(txttipo) Errores en tiempo de ejecución: Fallos que Visual
End If puede detectar cuando nuestro programa se ejecuta.
Errores de lógica: Fallos que producen resultados
End Sub incorrectos o que provocan que el programa no
se ejecute de la manera esperada.

"$ Guía Práctica - Cómo Automatizar Tareas con Excel Macros


3 M ACROS Y LOS V IRUS

VIRUS Y MACROS DE LIBRO

Un virus de macro es un tipo de virus del sistema que está almacenado


en las macros de un libro o de una plantilla de libro. Cuando se abre
el libro afectado o se ejecuta una acción que desencadena un virus
de macro, éste puede activarse, transmitirse al equipo y almacenarse
en un libro oculto u otra ubicación que no pueda detectarse. A partir
de ese momento, todos los libros que se guarden pueden «infectarse»
automáticamente con el virus de macro. Si otros usuarios abren libros
infectados, puede transmitirse a sus equipos.

Microsoft Excel no explora el disco, el disco duro ni la unidad de red

C
para buscar y quitar los virus de macro. Si desea este tipo de protección
deberá adquirir e instalar software antivirus. No obstante, Microsoft Excel

uando se abre puede presentar un mensaje de advertencia siempre que se abra un

el libro afectado o se libro que contenga macros. A continuación, puede elegir entre abrir el
ejecuta una acción libro con las macros habilitadas o inhabilitar las macros, de modo que
que desencadena un pueda ser el único usuario que las vea y las modifique. Un virus de macro
virus de macro, éste únicamente puede ser perjudicial si se le permite ejecutarse; por tanto,
puede activarse, si se inhabilitan las macros, puede abrirse el libro con seguridad.
transmitirse al equipo
y almacenarse en un G Si se espera que el libro contenga macros útiles (por ejemplo, un
libro oculto u otra formulario de pedidos para la organización), puede hacerse click en
ubicación que no Habilitar macros para abrir el libro con las macros habilitadas.
pueda detectarse.
G Si no espera que el libro contenga macros o no está seguro acerca
de la fiabilidad de su origen, puede hacer click en Inhabilitar macros
para abrir el libro con las macros inhabilitadas. Por ejemplo, puede
obtener un libro a través de un mensaje del correo electrónico
procedente de un origen desconocido o de un sitio en la red local,
o en Internet, que no sea fiable. En estos casos, es aconsejable ponerse
en contacto con el usuario que haya creado el libro para comprobar
que no contiene virus.

Si se inhabilitan las macros, no se podrá ejecutar ninguna macro, ni


calcular de nuevo funciones personalizadas, ni ejecutar controladores
de eventos (macros que se ejecutan como respuesta a acciones como
los clicks del mouse), ni utilizar controles ActiveX para iniciar eventos.

Guía Práctica - Cómo Automatizar Tareas con Excel Macros "%


Pero aún podrán examinarse y modificarse las macros. Si hace click en
Guardar en el menú Archivo
Archivo, se guardarán las macros. A continuación,
si desea ejecutar las macros, puede cerrarse el libro y abrirse otra vez
con las macros habilitadas.

Notas

GSi se activa un virus de macro, un mensaje de advertencia acerca


de los virus de macro aparecerá también cuando se abra un libro que
contenga controles creados mediante el Cuadro de controles.
GPara obtener información acerca de como desactivar las macros que
puedan contener virus, hacer un click en ayuda.
GPara obtener más información acerca de los virus de macro, incluida
la información acerca de cómo adquirir software que explore los libros
y quite los virus de macro conocidos, puede obtener información acerca
de protección antivirus de Microsoft en World Wide Web.

COMO REMOVER MACROS


QUE NO SON VIRUS

L o más conve-
niente trate de usar
Los macrovirus irremovibles, son una razón por la cual surgen macros
que no son exactamente virus, es la acción deficiente de ciertos
productos antivirus, o la concurrencia de macrovirus que se sobreescriben
siempre un programa
unos a otros. Pero no es éste el único caso.
antivirus, cuya sin-
taxis se documenta
Por más de un motivo, pueden llegar a nuestros documentos macros
en la sección de
no deseadas o no conocidas. Las causas pueden ir desde un macro
m a c r o v i r u s
malicioso, lo que se conoce como un «caballo de Troya» escrito por
irremovibles y podrá
librarse de todo un empleado travieso, o avieso, hasta una macro bien intencionada

macro, viral o no que simplemente no fué reportada por su autor, pero que hace cosas
viral, malicioso o ino- inesperadas como mostrar ventanas, abrir archivos, etc. Esas macros no
cuo. son virus, no contienen código infeccioso y, por mucho daño que
hagan, no pueden considerarse virus y ninguna compañía de antivirus
que se respete a sí misma, debe convertir su tarea en una cacería de
brujas.

La misma metodología que es aplicable para remover los macrovirus


nuevos y desconocidos, así como sus remanentes, puede usarse para
eliminar macros no deseadas, sospechosas o no documentadas.
Lo más conveniente trate de usar siempre un programa antivirus, cuya

"& Guía Práctica - Cómo Automatizar Tareas con Excel Macros


sintaxis se documenta en la sección de macrovirus irremovibles y podrá
librarse de todo macro, viral o no viral, malicioso o inocuo.

Recuerde, sin embargo, que al remover todas las macros puede estar
eliminando no solo código útil, sino aplicaciones completas que puedan
inutilizar el manejo que se pretendía dar al documento. En términos
generales, como usuario usted podrá decir en la mayoría de los casos
si las macros en su documento sirven a algún propósito o no. Sólo en
el caso de documentos generados por terceros podría darse el caso
de código inaceptable. Pero de cualquier forma el usuario debe
conocer la procedencia del documento e indagar acerca de las
posibles macros.

MACROVIRUS IRREMOVIBLES

Para ser precisos, ningún macrovirus que se conozca hasta ahora es


imposible de remover. Aun cuando un macrovirus sea totalmente nuevo
y desconocido, siempre es posible erradicarlo con el simple procedi-
miento de leer los documentos con el programa Wordpad de Windows
95 y guardarlos de nuevo. Es verdad que las macros no virales se
pierden usando este método, pero el texto y su formato se conservan.
El programa antivirus generalmente acompaña a todas las plataformas.

Lo que sí sucede con mucha frecuencia, es que algunos productos


antivirus no eliminan por completo el código agregado por los virus
debido a que no hacen una identificación exacta de la variante,
dejando remanentes que, si bien ya no pueden propagarse, eventual-
mente continúan ejecutándose o, lo que es peor, dejan corrompido
el código haciéndolo irreconocible para Word Basic, el cual al tratar
de ejecutar esas macros, simplemente regresa mensajes de error que
el usuario asume que son debidos al virus o al antivirus en forma directa.
Adicionalmente, cabe recordar que una cosa son los virus y otra distinta
son los daños que aquellos causan. De modo que un buen número
de virus como el CAP, el NPAD y el WAZZU, alteran el texto y los menúes
de los documentos, haciendo pensar al usuario que el virus aún se aloja
en sus archivos. Lo que sucede aquí es que los programas antivirus
pueden retirar el código viral, pero no siempre pueden revertir los daños
causados porque el antivirus no tiene forma de saber cuál era el
contenido original del documento.

Cualquier macro, no sólo los virus, puede fácilmente propagarse a


través de una red o de documentos simples cuando se soslayan las
capacidades de una aplicación tan poderosa como son las de
Microsoft Office. Si un usuario avanzado genera un documento con

Guía Práctica - Cómo Automatizar Tareas con Excel Macros "'


macros para uso personal y lo guarda por accidente como plantilla
(.DOT) en un directorio compartido, o si un usuario típico descontamina
incorrectamente un documento infectado dejando remanentes de un
macrovirus y guarda el documento como plantilla, cualquier usuario
que accese posteriormente la plantilla, cargará las macros contenidas
en ella, sean virus o no.
Esta situación no es de ninguna manera extraña. De hecho, es el
mecanismo del que se valen los macrovirus para infectar documentos
y propagarse: No necesitan infectar cada documento, basta con
infectar la plantilla NORMAL.DOT y en lo sucesivo, cada nuevo docu-
mento que se genere, llevará de origen las macros que se encuentren
en la plantilla empleada.

EXAMINAR LOS LIBROS


EN BUSCA DE MACROS
QUE PUEDAN CONTENER VIRUS

Para evitar la posibilidad de que alguna macro que contenga algún


virus pueda dañar el sistema, utilice este procedimiento para presentar
un mensaje de advertencia siempre que intente abrir un libro que
contenga una macro. Puesto que esta comprobación no determina si
alguna macro en el libro actual contiene algún virus, asegúrese de que
conoce el origen del libro y que puede confiar en él antes de continuar.
Por ejemplo, considere la posibilidad de que se puedan producir daños
causados por macros con virus si el libro procede de una red insegura
o de un sitio Internet.

1.En el menú Herramientas


Herramientas, hacer un click en Opciones y elija la ficha
General
General.

2.Active la casilla de verificación Protección antivirus en macros.

Interrumpir el examen de libros en busca de macros que puedan


contener virus

1.En el menú Herramientas


Herramientas, hacer un click en Opciones y elija la ficha
General
General.

2.Desactive la casilla de verificación Protección antivirus en macros.

# Guía Práctica - Cómo Automatizar Tareas con Excel Macros


PALABRAS CLAVES DE VISUAL BASIC PARA EXCEL

ESPAÑOL INGLES

A To
Abajo Down
Abrir Texto OpenText
Abrir Vínculos OpenLinks
Acción Action
Activar Activate
Activar Anterior ActivatePrevius
Activar Siguiente ActivateNext
Actualizar Update
Actualizar Pantalla ScreenUpDating
Actualizar Vínculos UpdateLinks
Agregar Add
Agregar A Tabla AddToTable
Agregar Campos AddFields
Agregar Elemento AddItem
Agregar Menú AddMenú
Agrupar Group
Ajustar Alto A Páginas FitToPagesTall
Ajustar Ancho A Páginas FitToPagesWide
Ajustar Automáticamente AutoFit
Al Activar Hoja OnSheetActivate
Al Deshacer OnUndo
Alineación Alignment
Alineación Horizontal HorizontalAlignment
Alineación Vertical VerticalAlignment
Al Introducir OnEntry
Al Introducir Datos OnData
Al Repetir OnRepeat
Alto Height
Alto Fila RowHeight
Ancho Width
Ancho Columna ColumnWidth
Anterior Previus
Antes Before
Anular Selección Deselect
Apariencia Appearance
Archivo File
Area Gráfico ChartArea
Area Impresión PrintArea
Arrastrar Colocar Celdas CellDragAndDrop

Guía Práctica - Cómo Automatizar Tareas con Excel Macros #


ESPAÑOL INGLES

Autoformato AutoFormat
Autollenar AutoFill
Barra Desplazamiento ScrollBar
Barra Estado StatusBar
Barra Herramientas TollBar
Barras Menús MenuBar
Bloqueado Locked
Borde Border
Borrar Clear
Borrar Contenido ClearContents
Borrar Formatos ClearFormats
Botón Button
Botón Opción OptionButton
Buscar Find
Buscar Como LookAt
Cadena String
Calcular Calculate
Cambiar Forma Reshape
Cambiar Tamaño Resize
Campo Field
Campos tabla Dinámica PivotFields
Canal Channels
Categoría Category
Celda Activa ActiveCell
Centrar Horizontalmente CenterHorizontally
Cerrar Close
Colocar Placement
Combinar Merge
Compilar Build
Contenido Contents
Contraseña Password
Convertir Convert
Copiar Copy
Cruza Crosses
Cuadro Diálogo DialogBox
Cuenta Count
Datos Data
Desplazar Shift
Destino Destination
Desviar Offset
Dibujo Drawing
Dirección Address
Diseño Pattern
Dividir Split
Doble Clic DoubleClick
Duplicado Duplicate

# Guía Práctica - Cómo Automatizar Tareas con Excel Macros


ESPAÑOL INGLES

Edición Edition
Eje Axis
Elemento Item
Elevación Elevation
Eliminar Delete
Elipse Oval
Encabezado Header
Entradas Listas ListCount
Escala Automática AutoScaling
Espacio Space
Espera Wait
Esquema Outline
Esquinas Corners
Estado Status
Estilo Línea LineStyle
Estructura Structure
Evaluar Evaluate
Fecha Date
Fila Row
Fin End
Fondo Background
Formato Format
Fórmula Formula
Fuente Font
Función Funtion
Galería Gallery
Giro Rotation
Grabar Record
Grabar Macro RecordMacro
Gráfico Chart
Grosor Weitgth
Grupos Groups
Guardar Save
Habilitado Enabled
Hoja Sheet
Hoja Activa ActiveSheet
Hoja Cálculo WorkSheet
Hora Time
Identificador Id
Imagen Picture
Importar Import
Importar Datos ImportData
Imprimir Print
Incluir Include
Incremento Step
Indice Index

Guía Práctica - Cómo Automatizar Tareas con Excel Macros #!


ESPAÑOL INGLES
Inferior Bottom
Inicio Start
Insertar Insert
Interactivo Interactive
Leyenda Legend
Línea Line
Lista List
Maestro Parent
Memoria Disponible MemoryFree
Modelo Style
Módulos Modules
Mostrar Show
Mostrar Errores ShowErrors
Mover Move
Nombre Name
Nombre Archivo FileName
Nota Note
Número Number
Objeto Object
Ocultar Hide
Opción Option
Operación Operation
Operador Operator
Ordenar Sort
Organizar Arrange
Orientación Orientation
Página Actual CurrentPage
Palabra Word
Palabras Clave KeyWords
Pegar Paste
Período Period
Plantilla Template
Por By
Presentación Preliminar PrintPreview
Presionado Pushed
Procedencia Origin
Procedimiento Procedure
Proteger Protect
Punto Point
Quitar Remove
Raíz Root
Rango Range
Rectángulo Rectangle
Reemplazar Replace
Referencia Reference
Repetir Repeat

#" Guía Práctica - Cómo Automatizar Tareas con Excel Macros


ESPAÑOL INGLES

Reproducir Play
Restablecer Reset
Restaurar Restore
Resumen Summary
Rótulo Caption
Ruta Acceso Path
Salir Quit
Sección Pane
Selección Selection
Separación IsGap
Separador Delimiter
Serie Series
Siguiente Next
Sombra Shadow
Subtotal Subtotal
Superior Top
Tabla Table
Tabla Dinámica PivotTable
Tabulación Tab
Tamaño Size
Tecla Key
Tema Topic
Texto Text
Tiene Fórmula HasFormula
Tipo Type
Título Title
Título Eje AxisTitle
Título Gráfico ChartTitle
Total Fila RowGrand
Transponer Transpose
Unicos Unique
Unión Union
Valor Value
Ventana Window
Ventana Activa ActiveWidow
Verbo Verb
Verificado Checked
Versión Version
Vértice Vertex
Vínculos Link
Visible Visible
Volátil Volatile
Windows Para PenComputing WindowsForPens

Guía Práctica - Cómo Automatizar Tareas con Excel Macros ##


#$ Guía Práctica - Cómo Automatizar Tareas con Excel Macros
G LOSARIO V ISUAL

USO DEL MOUSE

En esta sección se incluye información básica sobre el uso del mouse


y se explican los distintos tipos de punteros del mouse.
Un mouse, u otro dispositivo señalador, funciona siguiendo el principio
por el que primero se sitúa el puntero del mouse (se señala) en algún

7
elemento de la pantalla y, a continuación, se hace click con el botón
del mouse para efectuar una acción sobre el elemento.
n mouse, u
otro dispositivo Nota
Nota.- La documentación de Excel es parte del supuesto de que el
señalador, funciona usuario dispone de un mouse y de que es diestro.
siguiendo el principio Al desplazar el mouse sobre una superficie plana, el puntero del mismo
por el que primero se se moverá en la pantalla. Si le falta espacio, levante el mouse y sitúelo
sitúa el puntero del en un lugar en que le sea más cómodo desplazarlo.
mouse (se señala) en
Para señalar, mover el mouse hasta que la punta del puntero se
algún elemento de la
encuentre sobre el elemento o área que se desea señalar. A conti-
pantalla.
nuación, se podrá realizar lo siguiente:

Señalar
Colocar el puntero sobre un elemento.

Hacer o dar un click Presionar y soltar el botón primario del mouse


una vez. Soltar rápidamente el botón del mouse.

Hacer o dar doble Presionar y soltar rápidamente el botón primario


click del mouse dos veces.

Hacer click con el Presionar y soltar una vez el botón secundario


botón derecho o del mouse, con lo que aparecerá un menú de ac-
secundario del mouse
ceso directo.

Arrastrar Para mover un elemento hasta otra ubicación,


primero debe señalarlo. Presionar el botón pri-
mario o el secundario del mouse y, sin soltarlo.
señalar la posición en la que se desea situar el
objeto. A continuación, suelte el botón. Tam-
bién podrá arrastrar para seleccionar texto.

Guía Práctica - Cómo Automatizar Tareas con Excel Macros #%


USO DE LOS CUADROS
DE DIALOGO

Excel presenta cuadros de diálogo cuando el usuario debe introducir


información o especificar opciones, también llamadas propiedades
propiedades. Por
ejemplo, al hacer click en el botón Abrir para abrir una página que se
ha creado, un cuadro de diálogo le permitirá elegir el mensaje de su
preferencia.
En los cuadros de diálogo, podrá utilizar los siguientes tipos de opciones:

Hacer click en: Para hacer esto:

Expandir la lista de opciones. A continuación, hacer click en el


elemento que desee.

Seleccionar una opción cada vez. El círculo aparecerá relleno


cuando dicha opción esté seleccionada.

Seleccionar más de una opción cada vez. Cuando la opción esté


seleccionada aparecerá una marca de verificación.

Hacer click en: Para hacer esto:

Reducir (minimizar
minimizar) la ventana al tamaño de un botón de la barra
minimizar
de tareas.

Ampliar (maximizar
maximizar) la ventana para que ocupe todo el escritorio.
maximizar

Volver al tamaño anterior de la ventana(restaurar el tamaño). Este


botón aparecerá cuando maximice la ventana.

Desplazar el puntero hasta


el borde de la ventana.
Cuadro de Cuando cambie la for-
diálogo
ma del puntero, arras-
trar el borde para am-
pliar o reducir la venta-
na, así como para cam-
biar su forma.

#& Guía Práctica - Cómo Automatizar Tareas con Excel Macros


VOCABULARIO

Usando el libro de trabajo macro personal - Grabando, corrigiendo,


ejecutando, y suprimiendo una macro personal; ver el libro de trabajo
macro personal; ocultar el libro de trabajo macro personal.

Visual Basic.- Para instalar la Ayuda de Visual Basic, seleccione la opción


de instalación Personalizada y, a continuación, active la casilla de
verificación Ayuda en pantalla para Visual Basic (categoría Microsoft
Excel, subcategoría Ayuda en pantalla y archivos de muestra) cuando
instale Microsoft Excel.
Para obtener ayuda acerca de Visual Basic en Microsoft Excel, elija Macro
en el menú Herramientas y, a continuación, hacer un click en Editor de
Visual Basic.

Macro.-Un programa escrito o grabado por el usuario que almacena una


serie de comandos de Microsoft Excel que pueden utilizarse posterior-
mente como un único comando. Mediante las macros pueden automa-
tizarse las tareas complejas y puede reducirse el número de pasos
necesarios para realizar las tareas que se ejecuten con más frecuencia.
Las macros se graban en el lenguaje de programación de Visual Basic
para aplicaciones. También pueden escribirse directamente las macros
utilizando el Editor de Visual Basic.

Funciones.- Son fórmulas predefinidas que ejecutan cálculos utilizando


valores específicos, denominados argumentos, en un orden determinado
que se denomina sintaxis. Por ejemplo, la función SUMA agrega valores
o rangos de celdas y la función PAGO calcula los pagos de un préstamo
basándose en un tipo de interés, la duración del préstamo y el importe
principal del mismo.

Referencia de celda.-Conjunto de coordenadas que ocupa una celda en


una hoja de cálculo. Por ejemplo, la referencia de celda que aparece
en la intersección de la columna B y la fila 3 es B3.

Referencia relativa de celda.-Una referencia de celda, como A1, que


indica a Microsoft Excel cómo buscar otra celda a partir de la celda que
contiene la fórmula. Utilizar una referencia relativa es como dar instruc-
ciones acerca de cómo ir a un lugar desde un punto de partida (por
ejemplo, "suba por esta calle y, después de la segunda calle, gire a la
derecha").

Constante.-Un valor de celda que no comienza por un signo igual (=).


Por ejemplo, la fecha 10/9/96, el número 210 y el texto "Ganancias
trimestrales" son constantes. Una fórmula o un valor resultado de una
fórmula no es una constante.

Fuente de datos.- Identifica la base de datos a la que se desea tener


acceso e indica la información necesaria para conectarse a ella. Por
ejemplo, una base de datos de Microsoft Access; un directorio que
contenga un conjunto de archivos de Microsoft FoxPro o dBASE al que
se desee tener acceso; una base de datos de Microsoft SQL Server, el
servidor en que resida y la red utilizada para tener acceso al mismo;
o bien un servidor de datos ODBC (Open Database Connectivity)
habilitado.

Guía Práctica - Cómo Automatizar Tareas con Excel Macros #'


Glosario Analítico

A Evitar problemas con las teclas de método abrev. 30


EXAMINAR LIBROS DE MACROS QUE PUEDAN TENER
ACTIVAR Y DESACTIVAR LA VERIFICACION DE SINTAXIS P 23 VIRUS 50
Algunas funciones de Visual Basic 32
Añadir bordes gruesos 34 G
B GLOSARIO VISUAL 57
Grabar una macro 24
BARRA DE HERRAMIENTAS DE VISUAL BASIC PARA EXCEL 18
Barra de herramientas Diálogo 28–29 I
Botón “Crear botón” 28–29
Instrucciones condicionales 16
Botón “Crear Casilla de verificación” 28–29
Introducción 7
Botón “Crear cuadro de edición” 28–29
INTRODUCCION A VISUAL BASIC PARA EXCEL 15
Botón “Crear cuadro de grupo” 28–29
Botón “Crear cuadro de lista” 28–29 M
Botón “Crear desplegable” 28–29
Macro 13
Botón “Crear Rótulo” 28–29
MACROS 13
Botón “Ejecutar Macro” 18
MACROS Y LOS vIRUs 47
Botón “Examinador de objetos” 19
MACROVIRUS IRREMOVIBLES 49
Botón “Explorador de proyectos” 19
Manejo de funciones y comandos automÁticos 30
Botón “Finalizar grabación” 19
Módulo estándar 20
Botón “Insertar Módulo” 18
Botón “Modo de diseño” 19 P
Botón “Reanudar Macro” 18
PALABRAS CLAVES DE VISUAL BASIC PARA EXCEL 51
Botón “ventana de propiedades” 19
PARA AGREGAR UNA MACRO AUTOMATICA 31
C PARA ELIMINAR UNA MACRO AUTOMATICA 31
Para empezar a desarrollar su propia macro 10
CAJAS DE DIALOGO 27–29
Presentación 3
Cambiar a negritas 35
Programando macros 34
Cambiar formulas a valores 37
Publicaciones 2
Centrar 35
Cerrar todos los libros inactivos 38 Q
COMANDOS VISUAL BASIC PARA EXCEL 17
Qué son modulos 20
Cómo crear una macro 10
Qué es automatizar una tarea rutinaria? 9
Cómo ejecutar una macro 12
COMO REMOVER MACROS QUE NO SON VIRUS 48 R
Conceptos Generales 9
Contenido 5 REFERENCIAS 61
Controlar Mayúsculas/Minúsculas en las celdas 37 S
Controles 39
Copiar parte de una macro para crear otra 26 Sub y End Sub 21
Copiar un módulo de una macro a otro libro 26 T
COPIAR UNA MACRO 26
Crear un procedimiento escribiendo código 21 Tipos de estructuras de programación 15
Cuando usar macros y cuando no 26 U
E Una caja de diálogo puede contener 28
Ejecutar una macro 24 Uso de los Cuadros de Diálogo 58
Ejemplos de Aplicacion 39 Uso del mouse 57
Eliminar espacios en celdas 38 Utilizar bucles para repetir código 16
ESCRIBIENDO UNA MACRO MANUALMENTE 23 V
Escribir días de la semana 36
Establecer la función suma 36 Ventana Propiedades 39
Estilos de Programación 15 Virus y macros de libro 47
Estructura lineal 15 VOCABULARIO 59
Estructura repetitiva 15
Estructuras de los Programas 15

$ Guía Práctica - Cómo Automatizar Tareas con Excel Macros


123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
REFERENCIAS
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456

Pc World

Pc Magazine

Manuales de Microsoft

Internet

BIUFORM

Você também pode gostar