Está en la 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

GUIA PRACTICA - COMO AUTOMATIZAR LAS TAREAS RUTINARIAS CON EXCEL MACROS -
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, 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
C on t e n i d o

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!”.

S i ejecuta fre-
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 Visual
Basic. Para crear una macro no necesita saber programación, ya
sencillo. De hecho, la mayoría de las macros pueden
unos simples pasos, similares a los que realiza para
que es muy
crearse siguiendo

cuentemente una ta-


rea en Microsoft Excel,
imprimir los reportes semanales. Microsoft Excel descifra los detalles
puede automatizarla (como el nombre del filtro a usarse) y crea el código Visual Basic
mediante una macro. necesario. Incluso es posible vincular la macro a un botón de la barra de
herramientas, de forma que los complicados reportes semanales se

Una macro consiste en conviertan en una actividad tan sencilla como imprimir o hacer click en
un botón.
una serie de coman-
dos y funciones que
se almacenan en un
módulo de Visual Basic “Lo que estoy haciendo ahora puede no ser muy eficien- te,
y que puede eje- pero no deseo usar mucho tiempo aprendiendo cómo escribir
Visual Basic. Sólo deseo ver mi trabajo termina- do”.
cutarse siempre que
sea necesario ejecutar
la tarea. Una macro se
graba igual que se
Una macro, según la definición encontrada en los manuales de Excel,
graba música en un es una secuencia de instrucciones que le indican a Excel qué debe hacer,
cassette. A continua- y éste las ejecuta automáticamente. Por medio de las macros podemos
automatizar tareas repetitivas y aquellas en las que se requiere
ción, se ejecuta la
macro para que repi-
ta los comandos. una cantidad considerable de pasos complejos. Y, aunque se requiere
de un poco de conocimientos de programación, se puede realizar una 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, luego hacer un
click en la sub-opción Grabar

Nuevo 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 ecuerde que
macro estará disponible siempre
use Microsoft Excel, y no sólo

cuando use la hoja de cálculo


específica donde la creó.
que

para desarrollar una


macro es sencillo y
no necesita de saber
programación; por 4.Hacer un click en el botón Acep- tar
y entonces escribir las accio- nes
que desea grabar. Recuerde
supuesto hay otras
operaciones que todo lo que usted escribe se
más
complejas que pue- den
guarda, incluyendo errores y cualquier
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 en
de forma básica para el menú de herramientas y

crear, eliminar. hacer un click en la opción de-


Lo que se necesita tener 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

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

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

Introducir una escri-


1.En el menú Herramientas, seleccionar la opción Macro. tura y editar una
2.A continuación se muestra una caja de diálogo, en el cuadro Nombre de
la macro, escriba el nombre correspondiente. macro:

La grabadora de
3.En la lista descendente Macros en seleccionar una de las opciones macros crea obser-
plantilla o el documento donde desea guardar la macro.
4.Hacer un click en Crear para abrir el Editor de Visual Basic. En
el editor codificar en lenguaje Visual Basic. vando lo que usted
realiza, convirtiendo
estas acciones en un
código en Visual Basic,
Nota.- Si asigna a una nueva macro el mismo nombre de otra macro
integrada en Word, las acciones de la primera reemplazarán a las y almacenando el có-
existentes. Por ejemplo, el comando Cerrar del menú Archivo tiene una
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 que bro de trabajo. Sin
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, selec-


cionar la opción Macro y hacer
un click en la subopción Macros.

12345
12345 12345
12345 12345
12345 12345
12345 12345

+ ada código de-

vuelve el número de 12345


2.En el cuadro Nombre de la
12345
código del primer 1234
12345
12345
12345
1234
macro, hacer un click en el
caracter del texto. 1234
1234
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
por su equipo.
Ejecutar.
Por ejemplo, se desea ejeuctar la
macro para añadir bordes

Ejemplo: a un determinado número


CODIGO("A") es igual a
65
de celdas.
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 a 123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789


123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789

"A" 123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
PORQUE ES IMPORTANTE HACER UNA MACRO
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
CARACTER(33) es igual a 123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
"!" 123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789

Imaginemos que diariamente tenemos que arreglar una ta- bla


123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789

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

hacer este trabajo. Al hacer una macro que es una com- binación
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789

de instrucciones que pueden ser ejecutadas automáticamente


123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789

con una simple pulsación de teclas.


123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
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 magina una ta-


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

Por lo tanto las definiciones de macros:


rea rutinaria de 200
pasos. Para ello, po- •Secuencias de órdenes bajo una orden determinada
•Otro nombre Seudo-Programación
demos crear una
macro que realice el •Desarrollo lineal.
t r a b a j o •Programa toma de decisiones.

automáticamente.
Evidentemente, los
Excel Grabadora Programación
pasos de la macro Posee lineal
deben ser los co-
rrectos, evitando Niveles
abrir y 1.Grabadora. Indicar a Excel hacer el programa.
cerrar
menúes y opciones
•Rutina (Objeto, Botón).
innecesariamente, •Módulo.
por lo que la macro
2.Programación Visual Basic. Maneja herramientas para el
tardaría más en eje- entorno operativo de Windows.
cutarse. 3.Desarrollo de 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

FORTRAN 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 con


cada tipo de dato y generar un resultado predecible.

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

CION: Definida por el


diccionario como la los métodos y los eventos.
Con el fin de facilitar la comprensión de estos aspectos, nos referiremos
información necesaria a una analogía con algún objeto de la vida diaria: una televisión
conectada a una videograbadora. Las propiedades representan
para que un sistema
de información lleve a
cabo una tarea, las
los ajustes bajo los cuales opera el equipo: el volumen, el brillo de la
órdenes se traducen a imagen, la saturación de color, el tamaño vertical y horizontal de la
imagen. Los eventos son las acciones o comandos que puedo ejecutar
un lenguaje sim- sobre el aparato: presionar el botón de encendido, presionar el botón de
avance de cinta, presionar el control para el cambio
bólico o código que es
capaz de ser en-
tendido por
de hora, mover el control de volumen. En el caso de VB el programa responde
un a los eventos por medio de procedimientos que se programan
compilador y éste a en forma tradicional. La principal dificultad consiste en seleccionar el
su vez lo traduce las evento correcto para la acción deseada (en ocasiones inadvertidamente

instrucciones a len-
guaje de máquina. se puede provocar una cascada de eventos: dentro del proceso de
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.

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


E STILOS DE

PROGRAMACION
ninguna desviación.

Por ejemplo: Entrar a la bodega Cada programador tie-


ne su propio estilo para
Pedir 1 Kg. Azúcar blanca escribir. Un buen esti- lo
Pagar el importe
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 que otra gente sino tam-
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-
tilo:
Hasta completar lista
hacer pedido 1. Nombres significa-
tivos para variables,
Bucle (repetir)
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.
PROGRAMAS 3.documentar el códi-
go (poner comentarios

para aclarar). 4.Módulos


Tipos de estructurad de los programas: adaptables. 5.Minimizar
•Lineal.- Una tras otra línea en forma secuencial. el acopla-
•Bifurcación.- Un camino se abre en dos, Función SI
miento.
•Simple.- Un camino se abre en “dos” posibilidades 6.Minimizar alcance de
•Múltiple.- Un camino se abre en “N” posibilidades los datos hasta donde
•Repetitivas.- sea posible.
Controla que determinados procesos 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
del programa,
•Azul (palabra clave).
•Verde (comentario).
* No es INICIALIZACION tener en cuenta
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

U na variable o
o variable con otro.
9If...Then...Else: Salto a una instrucción cuando una condición es
True o False
9Select 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 el ............. .........
......... N Rutinas

procedimiento que ............. Rutinas


.........
.............
NEXT
contiene la declara- ENDIF
ción de la variable MULTIPLE
SIMPLE
puede usarlos. En el
siguiente ejemplo, el Utilizar bucles para repetir código.- Es posible ejecutar un grupo de
primer procedimien-
to presenta un cuadro
instrucciones de forma repetida. Algunos bucles repiten las instrucciones
de mensaje que con- hasta que una condición es False, otros las repiten hasta que la condición
tiene una cadena de es True. Hay también bucles que repiten un conjunto de instrucciones un número
determinado de veces o una vez para cada
texto. El segundo
procedimiento pre- objeto de una colección.
9Do...Loop: Seguir en el bucle mientras o hasta una condición sea
senta un cuadro de True
mensaje en blanco ya
9For...Next: Utilizar un contador para ejecutar las instrucciones un
que la
variable
DO CASE ......... DO WHILE .....
strMensaje es local
CASO 1 ..... N Rutinas
para el primer proce- CASO 2 ..... N Rutinas .........
.........
CASO 3 ..... N Rutinas N Rutinas
CASO N .....N Rutinas .........
.........
dimiento.
Sub VariableLocal() END CASE 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)
•Valor
MsgBox strMensaje
End Sub Ejemplo:
•Método. Seleccionar la celda
con gramática de Excel.
Secuencia
Sub FueraAlcance() 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

L
comandos (niveles). Así tenemos:
¨Funciones,

¨Enunciados,
¨Objetos,

¨Métodos, a
automatización (an-
tes
llamada
¨Propiedades, automatización OLE)
Se agrupan todas las palabras clave u órdenes que reconoce el es una de las carac-
lenguaje. Ver listado de comandos usuales.
terísticas
del
Component Object Model
(COM), una
El segundo punto.- La sintaxis del Visual Basic exige respetar un cierto tecnología estándar
orden en la escritura de cada comando. Así por ejemplo, primero se 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
con
Funciones: Abs, Ahora, Choole, Dir, Error, Esnulo, Espacio, Fecha, Val
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 formulario

L
si éste está activo actualmente. Este comando se

convierte en el comando Continuar cuando está en modo de


a barra de he- interrupción.

rramientas del editor


de Visual Basic en
El modo de interrupción.- Suspensión temporal de la ejecución de
un programa mientras está en la etapa de desarrollo. En
excel se encuentra
en la parte superior.
el modo interrumpir, se puede examinar, depurar, volver a
configurar, incrementar o continuar una ejecución. Se entra en
Para accesar a ella se- modo interrumpir:
leccionar la sub op-
ción Editor de Visual
·Al encontrar un punto de interrupción durante la ejecución del
Basic de la opción programa.
Macros del menú
·Al presionar CTRL+ENTRAR durante la ejecución del programa. ·Al
Herramientas. 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


L a barra de he-

elementos contenidos y referenciados por cada uno de los


rramientas que están
incorporadas en Vi-
proyectos.
sual Basic y el coman-
do
Botón “ventana de propiedades” Personalizar,
puede:
Enumera las propiedades de tiempo de diseño correspondientes a ·Activar y desactivar
los objetos seleccionados y su configuración actual.
las barras de herra-
mientas
Puede cambiar estas propiedades en tiempo de diseño. ·Arrastrar las barras
Cuando seleccione múltiples controles, la ventana de Propiedades
contiene una lista de las propiedades comunes a todos los controles de herramientas a di-
seleccionados.
ferentes posiciones
en el escritorio.
Botón “Examinador de objetos”
Depuración.- Mues-
tra la barra de herra-
Permite examinar todos los objetos disponibles en el proyecto 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
para las tareas de de-
puración más fre-
en las bibliotecas de objetos en el proyecto. Puede mostrar
fácilmente Ayuda en pantalla cuando examina. Puede
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
predeterminada.
Para crear una
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 ma hoja de cálculo.
estándar
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

una macro para


Visual Basic. Módulo
de clase.- Módulo poner en negrita

que contiene
la definición de una
clase (sus definiciones
Hacer un click en la lista
de propiedad y méto-
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( )
No olv id ar d e d ig itar d 10 ............... * S e pued e
e color A Z UL e n (Ejem plo, M e nsa je: Error)* co loc ar núm er os
- ................... a de ter mina das
c a so d e s e r lín eas .
P O S IT IVO ( +) , 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
...................
para el que desea es-
End Sub
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
para el procedimien-
Sub letras( )
(*)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
Property apropiada.
•color index=3
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.
2. A continuación, Seleccionar la sub-opción
Editor de Visual 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
MODULO DE VISUAL BASIC
palabra clave Static a la
definición del pro-

cedimiento.
7.Hacer un click en el
Un módulo de Visual Basic se usa para escribir, mostrar y editar código. Los
botón Aceptar. módulos almacenan códigos a nivel de módulo y de procedimiento. 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


activo, seleccionar la ficha correspondiente.
O bien:

Para crear un módulo ubicarse en el editor de Visual Basic, luego


L os procedi-

mientos tienen un es-


en el menú Insertar seleccionar la opción Módulo. 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 si
mismo, consume
un punto y coma.
4.Presionar la tecla Enter. más de ese espacio.
5.Digitar el código.
Un procedimiento que
6.Escriba Fin Proced, Fin Función o Fin Propiedad y después presionar se llama a si mismo es lo
Enter.
que se conoce
como un procedi-
miento recursivo. Un
ACTIVAR Y DESACTIVAR LA VERIFICACION DE
p roc e d i m i e n to
SINTAXIS PARA LOS MODULOS recursivo que se lla-
ma continuamente a si
mismo producirá fi-
1.Del menú Herramientas, seleccionar la opción Opciones.
2.Seleccionar la ficha General-Módulo. nalmente un error.
Por ejemplo:
3.Seleccionar el cuadro de verificación “Interrumpir en todos los erro-
res”, o eliminar la se-
lección. Function
Agotar(Máximo)
4.Hacer un click en el Agotar =
botón Aceptar.
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

A
macro antes de que finalice las acciones que se han grabado, presione
ESC.
ntes de grabar
Ejecutar una macro desde un módulo de Visual Basic
o escribir una macro,
planifique los pasos y
los comandos que 1.Abra el libro que contiene la macro.
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.
3.En el cuadro Nombre de la macro,
Si se comete algún
error mientras se gra- escriba el nombre de la macro que
desea ejecutar.
ba la macro, también
se grabarán las co- 4.Hacer un click en el botón Modificar.

rrecciones que se 5.Hacer un click en el botón Ejecutar


realicen. Cada vez sub.

que se grabe una


macro, ésta se alma- Sugerencia.- Si desea ejecutar otra macro diferente mientras está

cenará en un nuevo
módulo adjunto a un
utilizando el Editor de Visual Basic, hacer un click en la opción Macros en
libro. el menú Herramientas. En el cuadro Nombre de la macro, escriba
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

Para grabar una macro hacer los pasos siguientes:


·Nota Para dete-
ner una macro an-
tes de que finali-
ce las acciones, 1.Seleccionar la opción Macro del menú Herramientas y, a continuación,
presionar la tecla hacer un click en la opción Grabar nueva macro.
2.En el cuadro Nombre de la macro, digitar un nombre para la macro. El
ESC. 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 en la carpeta

U
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. una serie de instruc-
ciones de Visual Basic
Si se seleccionan celdas mientras se está ejecutando una macro, encerradas entre dos
i n s t r u c c ion e s
ésta seleccionará las mismas celdas independientemente de la celda Function y
que se haya seleccionado en primer lugar, ya que graba referencias End
absolutas de celda. Si desea tener una macro para seleccionar Function. Un procedi- miento
celdas independientemente de la posición que tenga Function es

similar a un procedi-
miento Sub, aunque
la celda activa cuando se ejecute la macro, configure el grabador
de macros para que grabe referencias relativas de celda. En la una función puede
barra de herramientas Detener grabación, hacer un click en Referencia.
Microsoft Excel continuará grabando macros con referencias relativas devolver además un
valor. Un procedi-
hasta que termine la sesión con Microsoft Excel o hasta hacer un
click otra vez en Referencias relativas. miento
Function
acepta argumentos,
como pueden ser
6.Ejecute las acciones que desee grabar.
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
tiene argumentos, la
a la celda activa; cuando se grabe una macro, pueden mezclarse instrucción Function
referencias relativas y absolutas. Para grabar una macro utilizando
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
Copiar parte de una macro para crear otra

UANDO
1.Abra el libro que contenga la macro que desee copiar
USAR MACROS Y .2.Seleccionar la opción Macro del menú Herramientas y, a continuación,
hacer un click en Macros.
CUANDO NO:
3.En el cuadro Nombre de la macro, escriba el nombre de la macro

·Cuando se necesita que desea copiar.


4.Hacer un click en la opción Modificar.
una tarea que se
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.

8.Cambie al módulo en el que desee situar el código.


·Cuando se van a ge- 9.Hacer un click en Pegar.
nerar diversas va-
riantes del docu-
mento similar.
Sugerencia.- Para que una macro esté disponible siempre que se ejecute
Microsoft Excel, almacene la macro en el libro de macros personales. Como
el libro de macros personales es un libro oculto que siempre está
·No, cuando se quie- 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.

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 U na caja de

filtr o diálogo es una ven-


cr ea In te rfa se tana que se utiliza
Usuario Diálogo Interactuar Programa
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 la
1. Hacer un click en el botón Modo Diseño, en la ventana de Excel. 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-
mentos utilizados
para poder iniciar la
Al activar el cuadro de controles se activa una ventana que ejecución de una ta-
contiene botones para Diseño la caja de Diálogo usted creará
la caja de diálogo deseada, que posteriormente cada objeto
insertado tendrá un procedimiento la que llamará rea a partir de la caja
de diálogo. En la caja
desde un módulo para poder ingresar o mostrar los datos de diálogo anterior se
deseados. El formato de la hoja de diálogo aparecerá de la tiene que, al utilizar el
siguiente forma:
botón de grabar, se
registrará toda la in-
formación propor-
cionada por
TITULO Barra de título
(+-Ventana) el
usuario. Dos puntas
C A NA D A
Q hacia adentro del
Elem entos de la caja:
P ER U

IT AL IA
F RA N C IA
B R AS IL

JA PO N
R O MA
A c e p t ar botón permiten al
S U IZA
A LE MA NI A
H U N G R IA

USA
•Combinados (cuadros). usuario diferenciar
R •Edició n (cuadros).
C A R I BE
C U BA

E SP A ÑA

S a lir •Casilla de Verificació n entre varios boto- nes,


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

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


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

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 Eiálogo
ponentes de un menú
que tienen la forma
de texto y que nos
indican una opera-
VENTANA CUADRO DE
ción a realizarse o un
CONTROLES
objeto a utilizar.
Como ejemplo de
este elemento, tene- Ventana cuadro de controles contiene botones que se usan
para crear formularios personalizados en hojas de cálculo,
mos en la ventana gráficos y hojas de diálogo.
superior la palabra
siguiente:
Descripción
Una opción de este Modo Diseño
tipo siempre presen- Cambia al modo Diseño de formulario, en el que se puede
modificar o crear un formulario utilizando las
herramientas ActiveX del Cuadro de controles. Mien- tras
ta una de sus letras 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
acceder a ésta. sim- Propiedades del control
Cambia en el archivo las propiedades de los controles ActiveX
plemente presionan-
o las opciones del campo de formulario seleccionado.
do dicha letra. Como
objetivo principal tie-
ne el de personalizar la Ver código
información de una Abre el Editor de Visual Basic, donde pueden escribirse comandos

de Visual Basic.
caja de diálogo.
·CUADROS DE CHE-
QUEO. Este elemento
define para una op- Casilla de verificación (Cuadro de controles)
Crea una casilla de verificación en una hoja de cálculo, en una hoja
ción la selección en- de diálogo, en un gráfico o en un documento o formulario.

tre dos posibilidades,


«SI» o «NO». Está re-
presentada por un Cuadro de texto (Cuadro de controles)
Crea un cuadro de edición, en el que puede escribir texto, en una
cuadrado pequeño 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
blanco lo que indica- Botón de comando (Cuadro de controles)
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
U na caja de

diálogo, en un gráfico o en un documento o formulario. diálogo puede conte-


ner:

MCAJA DE SELECCIO-
Cuadro de lista (Cuadro de controles) NES. Este cuadro dentro
Crea un cuadro de lista en una hoja de cálculo, en una hoja de de la caja de
diálogo, en un gráfico o en un documento o formulario.
diálogo, nos permi-
te seleccionar una
posibilidad, de va-
Cuadro combinado (Cuadro de controles)
rias, para una deter-
Crea una combinación de cuadro de lista desplegable y de cuadro de edición
en una hoja de cálculo, en una hoja de diálogo, en un gráfico o en un minada opción. Este
documento o formulario.
elemento también
es de tipo exclusi-
vo y tiene como fi-
Etiqueta (Cuadro de controles) nalidad personalizar la
Crea una etiqueta de texto en una hoja de cálculo, en una hoja de
diálogo, en un gráfico o en un documento o formulario.
información.
Dentro de este cua-
dro se muestran las

Títu lo
posibilidades, orde-
INGRESO DEL LOGOTIPO
(T i tle )
nadas de arriba ha-
C uadro d e Ed ic ión
T exto :
(Ed i t Bo x ) cia abajo o de iz-
l
T ít ul o
A ce p t ar
quierda a derecha y
L im p iar B otón
(Botto n)
Fi g ur a
S alir
a la izquierda de
cada una de ellas,
B otón d e O p ción
(O ption 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- rra
En inglés En español espaciadora y el
círculo
Funtion Areas (largo, ancho)
Función Areas (largo, ancho) contendrá
un punto en su in-
if largo=ancho
Si largo=ancho entonces Cuadro terior.
msgbox “Es un cuadrado”
Msj “Es un cuadrado”
Area=“ERROR”
Areas=“ ERROR”
else
si otro

AREA1=largo*ancho
·ASPAS DE SELEC-
AREA1=largo*ancho
End If
Fin Si
CION. Esta opción
se utiliza para mar-
End Funtion
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 tener zación, Por ejemplo,
dos estados de comportamiento dentro de la caja de diá logo a la que
si encontramos esta
pertenece.
aspa, no indicará
·Disponible .- Que indica que la opció n está activa, pudié ndose acceder a ella
en cualquier momento presionando siempre la letra resaltada que lo
que el elemento al
identifica. que pertenece ha
sido considerado.
·No disponible.- Debido a la interoperabilidad y las relaciones de
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, escriba el nombre de la
macro a la quedesea 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

C
utilizarse CONTROL+ letra o CONTROL+ MAYÚS + letra, donde letra
es cualquier tecla del teclado. La tecla

ómo evitar
de método abreviado suplantará a cualquier tecla de método
problemas con las abreviado predeterminada en Microsoft Excel mientras esté
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-
5. Hacer un click en el botón Aceptar.
tiene macros con las
mismas teclas de 6. Hacer un click en el botón 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-


mero en
orden control gráfico en la hoja de cálculo. Si hace un click en el botón u
alfabético. Cuando objeto de dibujo o se cambia el control, por ejemplo, haciendo click en
una casilla de verificación o un elemento de una lista, la macro se
asigne teclas de mé- ejecutará de forma automática.

todo abreviado, ase-


gúrese de evitar con-
flictos con las demás También puede ejecutar una macro de un control ActiveX. Para obtener
más información acerca de cómo crear un control ActiveX, haga clic en
hojas de macros que .
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.
macrocomando. Hacer un click en el controlador de selección del botón o del
control gráfico y, a continuación, hacer un clicK en Asignar
Macro en el menú contextual.
También se pueden
3.
introducir las fórmu-
las de Para asignar una macro ya existente al botón o al control
gráfico seleccionado, escriba el nombre de la macro en el
un cuadro Nombre de la macro y luego hacer un click en el botón
macrocomando direc- tamente Aceptar.
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, 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, 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.
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. Cuando finalice de grabar la macro, hacer un click en Detener grabación que se
ubica en la barra de herramientas Grabar 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 n procedi-
·FileAttr - Devuelve información del sistema operativo acerca dl
archivo que esta abierto.

·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
ciones de Visual Basic bytes de un archivo .
encerradas entre dos
i n s t r u c c ion e s ·FreeFile - Devuelve el siguiente numero de archivo valido que no
esta en uso.
Function y End
·GetAttr - Devuelve un entero qu indica los atributos de un
Function.

archivo, directorio, o etiqueta de volumen.


Instrucción.-Unau ·Loc - Devuelve la posición actual en un archivo abierto.
n i d a ·LOF - Devuelve el tamaño en bytes de un archivo abierto.
·Seek - Devuelve la posición del archivo actual.
d s
intácticamente
completa que expre- NÚMERO
sa un tipo de acción,
declaración o defini- ·Abs - Devuelve el valor absoluto de un número.
ción. Normalmente
una instrucción tiene ·Atn - Devuelve el arcotangente de un número.
·Cos - Devuleve el coseno de un ángulo (ángulo en radianes).
una sola línea aunque ·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
utilizar un carácter de ·InStr - Devuelve la posición de la primera ocurrencia de una
continuación de línea cadena dentro de otra cadena de caracteres
·LCase, LCase$ - Devuelve una cadena de caracteres en la cuál
(_) para continuar una 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
una segunda línea fí- cierto argumento. (cadena).
sica.
·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


todos los espacios en blanco.

·Mid, Mid$ - Devuelve una cadena qu es parte de una cadena.


·Right, Right$ - Devuelve los n caracteres más a la derecha

! 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

con los espacios de la derecha eliminados.


·Space, Space$ - Devuelve una cadena que consiste de un
número especifico de espacios.

·Trim, Trim$ - Devuelve una copia de una cadena con los


espacios de ambos lados eliminados.

·UCase, UCase$ - Devuelve una cadena con todas las letras


convertidas a mayúsculas.

HORA/FECHA

·Date, Date$ - Devuelve la fecha actual..


E n el siguiente

ejemplo, la función
·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 - 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
función desde el pro-
cedimiento Principal, se
provided as an argument.
·Month - Returns an integer between 1 and 12, inclusive, that le pasa una varia-
represents the month of the year for a date argument.
·Now - Returns a date that represents the current date and time ble que contiene el
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. culos se devuelve al
procedimiento que
·Timer - Returns the number of seconds that have elapsed
since 12:00 a.m. (midnight). efectúo la llamada y se
presenta en un cuadro
·Weekday - Returns an integer between 1 (Sunday) and 7 de mensaje.
(Saturday) that represents the day of the week for a date
argument.
Sub Principal()
·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 - Explicitly converts expressions to the Currency data MsgBox "La temperatura es "
type.
& Celsius(temp) & " grados C."

End Sub

·CDbl - Explicitly converts expressions to the Double data type.


·CInt - Explicitly converts expressions to the Integer data type. Function Celsius(GradosF)
·CLng - Explicitly converts expressions to the Long data type.
·CSnd - Explicitly converts expressions to the Single data type. Celsius = (GradosF - 32) * 5 /
·CStr - Explicitly converts expressions to the String data type.
9

End Function
·CVar - Explicitly converts expressions to the Variant data type.
·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-
PROGRAMANDO MACROS
nes de declaración se
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 End Selection.Borders(xlTop).LineStyle=xkNone


Selection.Borders(xlBottom).LineStyle=xkNone
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 p
End With roc e d i m i e n tos ,
constantes, variables y
End Sub 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

CAMBIAR A NEGRITAS (!), ni @, &, $, #. ·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
Selection(“B1:D1”).Select ·Los nombres no se
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 na instrucción
Selection.Autofill Destination: Range (“A8:A14), Type:)=xlFillDefault
Range(“A8:A14”).Select
End Sub

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
i n s t r u c c ion e s
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 ‘Establece función SUMA en celda B15
llamado

Milntervalo en la Hoja1
Sub sumatoria ()
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 E a c h I n
Wor k s h e e t s
(“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-


na muchas herra-
Si alguna vez ha tenido un puñado de fórmulas en una hoja de
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 Proyectos
‘cambiar fórmulas a valores ‘
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- ye
los controles y el
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. código asociado a
dicho
formulario.
Podemos compartir
código en todo el
CONTROLAR MAYUSCULAS/MINUSCULAS
EN LAS CELDAS proyecto colocando 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
estándar y declaran- do
de celdas entre mayúsculas y minúsculas. Para convertir el texto en el procedimiento
mayúsculas, para ello use la siguiente macro:
como Public. Los
Sub MakeUpperCase() formularios se crean
como interfaz de la
For Each c In Selection.Cells
c.Value= UCase$(c.Value) aplicación. Cada for-
mulario es una ven-
Next c tana que presenta
End Sub
controles, gráficos u
otros
formularios.
Para cambiar el texto a minúsculas utilizar esta macro similar: Los formularios se
pueden usar de dife-
rentes maneras:
Sub MakeLowerCase()
For Each c In Selection.Cells
c.Value=LCase$(c.Value) Como una pantalla
ilustrada como in-
Next c
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 la Como un cuadro de
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 ‘

El lenguaje que se usa Sub TrimIt()


también se encuen- For Each c In Selection.Cells
tra en muchas apli- c.Value=Application.Trim(c.Value)
caciones de
Microsoft Office Next c
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
atractivos los for-
Diseñar el formulario con las siguientes características : 1. mularios. Para dibu-
Ingresar el nombre del usuario
jar controles en un
2. Digitar la contraseña formulario se usa el
3. Hacer un click en el botón Aceptar para Ingresar al sistema, si es
Cuadro de herra-
correcta debe salir un aviso “Bienvenido al sistema”. si no digita la mientas.
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 con t i n u a c i ó n
propiedades y los
se muestra las valores del control o
Propiedad Valor
f a s e s e n l a
módulo selecciona-
con s t r u c c i ó n d e do actualmente.
u n a a p l i c a c i ó 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
el tipo de fuente con la FASE DE
DISEÑO
propiedad Font. Luego para
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 = G a n é
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, en Private Sub Form_Load()


la ventana de propiedades, la propiedad Image1.Visible = False

Picture insertar un valor es decir, seleccionar la Image2.Visible = False


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()

RPTA = MsgBox("¿Desea Salir del Juego?", 4


BackColor. + 32, "DESEA SALIR")
Luego en la propiedad Visible seleccionar el
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() Do


x = Int(Rnd * 10) While 1

If x >= 1 And x <= 6 Then


x = Int(Rnd * 10)
lbld1.Caption = Str(x) If (x >= 1 And x <= 6) Then
lbld1.Caption = Str(x)

Exit Do
End If
Loop Exit Do
End If
Loop
Do While 1
y = Int(Rnd * 10) End Sub

If y >= 1 And y <= 6 Then


lbld2.Caption = Str(y)
Private Sub LBLD2_Click() Do
While 1
Exit Do
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)) If Exit Do


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 de
comando creado, seleccionar la hoja del
un módulo y escribir lo siguiente:
' libro donde se encuentra el boton creado lluego
hacer doble click sobre el botón y digitar
'sombreado

'
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
123456789012345678901234567890121234567890123456789012 3
Procedimiento. Es una secuencia con
123456789012345678901234567890121234567890123456789012
123456789012345678901234567890121234567890123456789012
3
3
Para ejecutar en otro libro esta macro (por 123456789012345678901234567890121234567890123456789012 3

ejemplo en el libro 2), presionar el botón de nombre de instrucciones que se ejecutan


123456789012345678901234567890121234567890123456789012
123456789012345678901234567890121234567890123456789012
123456789012345678901234567890121234567890123456789012
3
3
3
123456789012345678901234567890121234567890123456789012 3
como una unidad. Por ejemplo, Function,
123456789012345678901234567890121234567890123456789012
123456789012345678901234567890121234567890123456789012
123456789012345678901234567890121234567890123456789012
3
3
3

ejecución, luego se muestra una ventana de Property y Sub son todos tipos de
123456789012345678901234567890121234567890123456789012
123456789012345678901234567890121234567890123456789012
123456789012345678901234567890121234567890123456789012
3
3
3
Macro. procedimientos.
123456789012345678901234567890121234567890123456789012
123456789012345678901234567890121234567890123456789012Un nombre 3
3
123456789012345678901234567890121234567890123456789012 3
123456789012345678901234567890121234567890123456789012 3
123456789012345678901234567890121234567890123456789012 3
123456789012345678901234567890121234567890123456789012 de 3
123456789012345678901234567890121234567890123456789012 3
Seleccione la macro “sombra”, para ello, seleccionar el procedimiento siempre se define a nivel
123456789012345678901234567890121234567890123456789012 3
123456789012345678901234567890121234567890123456789012 3
libro donde desea que se ejecute la macro. de mó dulo. Todo el có digo ejecutable debe
123456789012345678901234567890121234567890123456789012 3
123456789012345678901234567890121234567890123456789012 3
123456789012345678901234567890121234567890123456789012 3

Finalmente hacer un click en el botón Ejecutar. estar contenido en un procedimiento. Los


123456789012345678901234567890121234567890123456789012
123456789012345678901234567890121234567890123456789012
3
3
123456789012345678901234567890121234567890123456789012 3
procedimientos no se pueden anidar dentro
123456789012345678901234567890121234567890123456789012
123456789012345678901234567890121234567890123456789012
3
3
123456789012345678901234567890121234567890123456789012 3

de otros procedimientos.
123456789012345678901234567890121234567890123456789012
123456789012345678901234567890121234567890123456789012
1234567890123456789012345678901212345678901234567890123
3
3

ParaCopiar 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

A veces puede desear copiar un ejemplo útil Recuerde.- También puede presionar las teclas 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 útiles


para ver cómo se comporta un procedimiento Presionar CTRL+V para pegar el ejemplo en la
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 = ""

Private Sub UserForm_Click()


txttipo.SetFocus
End Sub

End Sub
Private Sub resul_Click()
If (Option1.Value = True) Then
Finalmente, sólo queda ejecutarlo; generalmente, Se
txtresul = Val(txtmonto) / Val(txttipo) 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)
End If
Errores en tiempo de ejecución: Fallos que Visual
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 uando se abre 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 puede
presentar un mensaje de advertencia siempre que se abra un
libro que contenga macros. A continuación, puede elegir entre abrir el
el libro afectado o se
ejecuta una acción
que desencadena un libro con las macros habilitadas o inhabilitar las macros, de modo que pueda
virus de macro, éste ser el único usuario que las vea y las modifique. Un virus de macro únicamente
puede ser perjudicial si se le permite ejecutarse; por tanto, si se
puede inhabilitan las macros, puede abrirse el libro con seguridad.
activarse,
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 Habilitar
ubicación que no 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, 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- Los macrovirus irremovibles, son una razón por la cual surgen macros que
no son exactamente virus, es la acción deficiente de ciertos
niente trate de usar
siempre un programa productos antivirus, o la concurrencia de macrovirus que se sobreescriben 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
macrovirus
irremovibles y podrá no deseadas o no conocidas. Las causas pueden ir desde un macro
malicioso, lo que se conoce como un «caballo de Troya» escrito por un
librarse de todo empleado travieso, o avieso, hasta una macro bien intencionada que
simplemente no fué reportada por su autor, pero que hace cosas
macro, viral o no viral,
malicioso o ino-
cuo.
inesperadas como mostrar ventanas, abrir archivos, etc. Esas macros no 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, hacer un click en Opciones y elija la ficha


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, hacer un click en Opciones y elija la ficha


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 Dow n

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
Agregar A Tabla A d d
AddToTable
AddFields
Agregar Campos
Agregar Elemento AddItem

Agregar Menú AddMenú


Agrupar Group

FitToPagesTall
Ajustar Alto A Páginas FitToPagesWide
Ajustar Ancho A Páginas
Ajustar Automáticamente
AutoFit
Al Activar Hoja OnSheetActivate
Al Deshacer OnUndo

Alignment
Alineación Alineación HorizontalAlignment
Horizontal Alineación
Vertical
VerticalAlignment
Al Introducir OnEntry

Al Introducir Datos Al
OnData
Repetir OnRepeat

Alto
Alto Fila Height
RowHeight
Width
Ancho ColumnWidth
Ancho Columna
Anterior
Previus
Before
Antes
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
Barras Menús TollBar
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
Calcular String
Calculate
Reshape
Cambiar Forma
Cambiar Tamaño Resize
C a m po 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
Destino Shift
Destination
Offset
Desviar
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
Elevación Item
Elevation
Delete
Eliminar
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

Background
Fondo Format
Formato
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

Time
Hora Id
Identificador
Imagen
Picture
Importar Import

Importar Datos ImportData


Imprimir Print

Include
Incluir Step
Incremento
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 Mov e

Nombre N a m e

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
Plantilla Period
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
Resumen Restore
Summary
Caption
Rótulo
Ruta Acceso Path
Salir Quit

Sección
Selección Pane
Selection
IsGap
Separación
Separador Delimiter

Series
Serie Next
Siguiente
Sombra
Shadow
Subtotal Subtotal

Superior Top
Tabla Table

Tabla Dinámica PivotTable


Tabulación Tab

Tamaño Size

Tecla
Tema Key
Topic
Text
Texto
Tiene Fórmula HasFormula

Tipo Type
Título Title

Título Eje AxisTitle


Título Gráfico ChartTitle

RowGrand
Total Fila Transpose
Transponer
Unicos
Unique
Union
Unión
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
otro
n mouse, u
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.

dispositivo Nota.- La documentación de Excel es parte del supuesto de que el


señalador, funciona
siguiendo el principio
usuario dispone de un mouse y de que es diestro.
por el que primero se Al desplazar el mouse sobre una superficie plana, el puntero del mismo
sitúa el puntero del se moverá en la pantalla. Si le falta espacio, levante el mouse y sitúelo en un
lugar en que le sea más cómodo desplazarlo.
mouse (se señala) en
algún elemento de la
Para señalar, mover el mouse hasta que la punta del puntero se
pantalla. encuentre sobre el elemento o área que se desea señalar. A conti-
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 del


click mouse dos veces.

Hacer click con el


botón derecho o Presionar y soltar una vez el botón secundario del
secundario del mouse mouse, con lo que aparecerá un menú de ac- 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. 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) la ventana al tamaño de un botón de la barra


de tareas.

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

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

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


A 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
GLOSARIO VISUAL 57
B 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
Botón “Explorador de proyectos” 19 MACROVIRUS IRREMOVIBLES 49
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
Botón “Reanudar Macro” 18 P
Botón “ventana de propiedades” 19 PALABRAS CLAVES DE VISUAL BASIC PARA EXCEL 51
PARA AGREGAR UNA MACRO AUTOMATICA 31
PARA ELIMINAR UNA MACRO AUTOMATICA 31
C Para empezar a desarrollar su propia macro 10
CAJAS DE DIALOGO 27–29
Cambiar a negritas 35 Presentación 3
Programando macros 34
Cambiar formulas a valores 37 Publicaciones 2
Centrar 35

Cerrar todos los libros inactivos 38 COMANDOS Q


VISUAL BASIC PARA EXCEL 17 Cómo crear una Qué son modulos 20
macro 10
Qué es automatizar una tarea rutinaria? 9
Cómo ejecutar una macro 12
COMO REMOVER MACROS QUE NO SON VIRUS 48
Conceptos Generales 9 R
REFERENCIAS 61
Contenido 5
Controlar Mayúsculas/Minúsculas en las celdas 37
Controles 39 S
Sub y End Sub 21
Copiar parte de una macro para crear otra 26
Copiar un módulo de una macro a otro libro 26
T
COPIAR UNA MACRO 26 Tipos de estructuras de programación 15
Crear un procedimiento escribiendo código 21
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


Escribir días de la semana 36 V
Establecer la función suma 36 Ventana Propiedades 39
Estilos de Programación 15 Virus y macros de libro 47
VOCABULARIO 59
Estructura lineal 15
Estructura repetitiva 15
Estructuras de los Programas 15

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


123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456

REFERENCIAS
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456

Pc World

Pc Magazine

Manuales de Microsoft

Internet

BIUFORM

También podría gustarte