Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Excel Macros Tutorial PDF
Excel Macros Tutorial PDF
uía ráctica
VERSION 98
Instituto Nacional de
Estadística e Informática
PUBLICACIONES
GUIA PRACTICA - COMO AUTOMATIZAR LAS TAREAS RUTINARIAS CON EXCEL MACROS -
PUBLICACION Nº36 - EDICION ‘99
Excel Macros es una guía que está diseñado para ayudar a los
usuarios a mejorar su eficacia en el trabajo rutinario, automa-
tarlas.
INSTITUTO NACIONAL DE
ESTADISTICA E INFORMATICA
C on t e n i d o
Capítulo 2 - Macros
Glosario Visual
1 ntroducción
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
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?
Nuevo Macro.
R ecuerde que
macro estará disponible siempre
use Microsoft Excel, y no sólo
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:
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.
12345
12345
12345
12345
12345
12345
12345 12345
12345 12345
12345 12345
12345 12345
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
"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
hacer este trabajo. Al hacer una macro que es una com- binación
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456789
momento.
Español
Macro Visual Basic
Inglés
Secuencia de órdenes
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)
Visual Basic
dos datos:
Suma( 2, 4) => 6
P ROGRAMA- En Visual Basic presentan tres aspectos que considerar: las propiedades,
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
Modo de Programar
•Enfocar el problema en modo Lógico (Mó dulo)
Algoritmo Listado
(Lenguaje)
1.
Estructura lineal
Cuando la ejecución del programa sigue una secuencia simple de
PROGRAMACION
ninguna desviación.
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
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
Enunciados:
Con, Dim, Fin, Proced
L
si éste está activo actualmente. Este comando se
A l crear módu-
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
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
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.
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.
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.
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.
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.
U
INICIAR.
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.
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
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.
Ejemplo:
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
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.
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.
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
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
Puede ejecutarse una macro desde un botón, desde una barra de herramientas integrada
o desde una barra de herramientas personalizada.
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.
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.
ARCHIVO
U n procedi-
·FileAttr - Devuelve información del sistema operativo acerca dl
archivo que esta abierto.
HORA/FECHA
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:=
Tipo:=1)
·CCur - Explicitly converts expressions to the Currency data MsgBox "La temperatura es "
type.
& Celsius(temp) & " grados C."
End Sub
End Function
·CVar - Explicitly converts expressions to the Variant data type.
·CVDate - Converts an expression to a Variant of VarType 7 (Date).
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()
Range(“A8.B14”). Select
La instrucción Sub Selection.Borders(xlLeft).LineStyle=xkNone
(con la correspon- Selection.Borders(xlRight).LineStyle=xkNone
‘cen Macro
‘Centra el contenido de las celdas B1 a D1
.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
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.
‘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
.Bold=true
.Italic=true
End With
End If
Next c
MsgBox “¡Find!”
End Sub
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.
Los epacios extra que están antes de alguna entrada de una celda
pueden crear problemas cuando intentan ordenar y filtrar tablas.
Sub CloseAllInactive()
Dim Wb As Workbook
End If
Next Wb
Application.StatusBar = “All Workbooks Closed.”
End Sub
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”
en la ventana de propiedades, la
propiedad Picture insertar
en la propiedad PasswordChar
FASE DE
CODIFICACION
FASE DE
EJECUCION
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:
Exit Do
End If
Loop Exit Do
End If
Loop
Do While 1
y = Int(Rnd * 10) End Sub
Image2.Visible = True
lblm1.Visible = True End Sub
Else
Image2.Visible = False
End If
End Sub
Insertar un
Algunas consideraciones:
1.Para colorear en el fondo, seleccionar las
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
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
de otros procedimientos.
123456789012345678901234567890121234567890123456789012
123456789012345678901234567890121234567890123456789012
1234567890123456789012345678901212345678901234567890123
3
3
ventana Código.
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
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.
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:
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
Notas
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.
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
MACROVIRUS IRREMOVIBLES
en la plantilla empleada.
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.
ESPAÑOL INGLES
A To
Abajo Dow n
Acción Action
Activar Activate
Actualizar
Update
Actualizar Pantalla ScreenUpDating
Actualizar Vínculos UpdateLinks
Agregar
Agregar A Tabla A d d
AddToTable
AddFields
Agregar Campos
Agregar Elemento AddItem
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
Autoformato AutoFormat
Autollenar AutoFill
Barra Herramientas
Barras Menús TollBar
MenuBar
Bloqueado Locked
Borde Border
Borrar Clear
Botón Button
Botón Opción OptionButton
Buscar Find
Cadena
Calcular String
Calculate
Reshape
Cambiar Forma
Cambiar Tamaño Resize
C a m po Field
Categoría Category
Celda Activa ActiveCell
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
Edición Edition
Eje Axis
Elemento
Elevación Item
Elevation
Delete
Eliminar
Elipse
Oval
Encabezado Header
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
Grosor Weitgth
Grupos Groups
Guardar Save
Habilitado Enabled
Hoja Sheet
Time
Hora Id
Identificador
Imagen
Picture
Importar Import
Include
Incluir Step
Incremento
Indice Index
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
Número Number
Objeto Object
Ocultar Hide
Opción Option
Operación Operation
Operador Operator
Ordenar Sort
Organizar Arrange
Orientación Orientation
Período
Plantilla Period
Template
Por By
Procedencia Origin
Procedimiento Procedure
Proteger Protect
Punto Point
Quitar Remove
Raíz Root
Rango Range
Rectángulo Rectangle
Reemplazar Replace
Referencia Reference
Repetir Repeat
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
Tamaño Size
Tecla
Tema Key
Topic
Text
Texto
Tiene Fórmula HasFormula
Tipo Type
Título Title
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
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.
Señalar
Colocar el puntero sobre un elemento.
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.
preferencia.
En los cuadros de diálogo, podrá utilizar los siguientes tipos de opciones:
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-
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.
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.
REFERENCIAS
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
123456789012345678901234567890121234567890123456789012345678901212345678901234567890123456
Pc World
Pc Magazine
Manuales de Microsoft
Internet
BIUFORM