Вы находитесь на странице: 1из 118

Manual de Excel Avanzado

CONTENIDO
1.

Formato Personalizado de Celdas_________________________________________4


a.
b.
c.
d.
e.
f.
g.

2.

Cuando crear formatos personalizados_______________________________________________4


Como crear formatos personalizados_________________________________________________4
Cdigos de formato de nmero para fechas y horas_____________________________________7
Cdigos de formato de nmero para posiciones decimales, espacios, colores y condiciones______8
Cdigos de formato de nmero para texto y espaciado__________________________________10
Eliminar un formato de nmero personalizado________________________________________11
Si las fechas introducidas en la hoja de clculo no tienen el mismo aspecto__________________11

Usar Funciones avanzadas para calcular valores____________________________11


Funcin SUMAR.SI__________________________________________________________________12

Ejercicio N 1: Clculos condicionales en bienes inmuebles___________________________12


La Funcin CONTAR.SI______________________________________________________________13

Frmulas Matriciales:__________________________________________________________14
a.
Cmo crear un total basndose en varias condiciones___________________________________14
Las Funcines K.ESIMO.MENOR, y K.ESIMO.MAYOR____________________________________15
Las Funciones REDONDEAR.MENOS, y REDONDEAR.MAS______________________________15
La Funcin ALEATORIO_____________________________________________________________16
Las Funciones ES____________________________________________________________________16
La Funcin HOY____________________________________________________________________19
La Funcin AHORA_________________________________________________________________19

Funciones de Bases de Datos BDfuncin__________________________________________19


Ejercicio N 2: Clculos con funciones de base de datos BD___________________________21
Funciones de Texto____________________________________________________________22
La Funcin IZQUIERDA_____________________________________________________________22
La Funcin DERECHA_______________________________________________________________22
La Funcin EXTRAE________________________________________________________________23
La Funcin HALLAR________________________________________________________________23
La Funcin ENCONTRAR____________________________________________________________24
La Funcin LARGO_________________________________________________________________24
Las Funcines MAYUSC, MINUSC y NOMPROPIO_______________________________________24
La Funcin SUSTITUIR______________________________________________________________25
La Funcin DECIMAL_______________________________________________________________25

Ejercicio N 3: Generacin de cdigos con funciones de texto_________________________27


Ejercicio N 4: Convertidor de Nmeros en Letras__________________________________29
La Funcin ESPACIOS_______________________________________________________________31

3.

Validacin de Ingreso de datos___________________________________________32


a.
b.
c.

4.

Lneas de Tendencia en los Grficos______________________________________37


a.
b.
c.

5.

Que es la validacin_____________________________________________________________32
Cmo validar el ingreso de datos en un rango de celdas_________________________________32
Realizar una auditoria en un rango validado__________________________________________34
Utilidad de las lneas de tendencia__________________________________________________37
Tipos de grfico que admiten lneas de tendencias_____________________________________37
Agregar una lnea de tendencia a una serie de datos____________________________________38

Uso del botn Cmara Fotogrfica_______________________________________41


a.
b.

Cmo habilitar el botn Cmara Fotogrfica__________________________________________41


Cmo utilizar el botn Cmara Fotogrfica___________________________________________41

Preparado por Daniel Zegarra Zavaleta

Pg. 1

Manual de Excel Avanzado


6.

La Programacin en Excel______________________________________________42
a.
b.
c.
d.
e.

7.

Uso de la grabadora de macros____________________________________________________42


Ejecucin de una macro__________________________________________________________43
Uso del Editor de Visual Basic_____________________________________________________44
Para ingresar al Editor de Visual Basic______________________________________________45
Modificar una macro en el Editor de Visual Basic______________________________________45

Creacin de Macros con la grabadora de macros____________________________47


a.
b.

8.

Que es la grabadora de macros_____________________________________________________47


Cmo modificar las instrucciones de las macros_______________________________________47

Creacin de Plantillas en Excel__________________________________________47


a.
b.

Que es una Plantilla_____________________________________________________________47


Como se crea una Plantilla________________________________________________________47

Ejercicio N 5: Acciones repetitivas con macros_____________________________________48


Ejercicio N 6: Un control de Caja Chica_________________________________________51
Ejercicio - Resultados de una Encuesta__________________________________________57
La Funcin FILA____________________________________________________________________65
La Funcin FILAS___________________________________________________________________65

9.

Edicin de Macros en Visual Basic para Aplicaciones________________________66


a.
b.

10.

Que es Visual Basic para Aplicaciones______________________________________________66


El Editor de Visual Basic_________________________________________________________66

Las instrucciones de Visual Basic______________________________________67


a.
b.
c.

Continuar instrucciones en mltiples lneas___________________________________________68


Aadir comentarios_____________________________________________________________69
Comprobar errores de sintaxis_____________________________________________________69

11.

Escribir instrucciones de declaracin___________________________________69

12.

Escribir instrucciones de asignacin____________________________________70

13.

Trabajo con celdas en Visual Basic_____________________________________70


a.
b.

Referencia a celdas y rangos utilizando la notacin A1__________________________________71


Para seleccionar celdas y rangos de celdas___________________________________________71

Ejercicio N 7: Procedimientos Sub para seleccionar rangos_________________________72


La Propiedad End_____________________________________________________________79
Ejercicio N 8: Nombrar rangos, Seleccionar columnas y Borrar_____________________80
c.

Para ingresar datos en celdas y rangos de celdas_______________________________________83

Ejercicio N 9: Asignar valores a celdas y rangos___________________________________84


d.

Usos del mtodo Select y la propiedad Selection______________________________________86

Ejercicio N 10: Procedimientos Sub para Cambio de moneda_______________________87


Ejercicio N 11: Procedimientos Sub para Ahorro personal__________________________90

Prctica de Laboratorio N1_________________________________________________94


1ra Parte:

Control de Cuentas por Pagar________________________________________94

2da Parte:

Tabla Dinmica para Resumen de Cuentas por Pagar__________________98

Prctica de Laboratorio N 2________________________________________________99


1ra Parte:

Creacin del cuadro Movimientos de Almacn__________________________99

Preparado por Daniel Zegarra Zavaleta

Pg. 2

Manual de Excel Avanzado


2da Parte:

Tabla de Saldos Finales y Grfico de Movimientos por Vehculo_________100

3ra Parte: Obtencin del Cuadro de Kardex_____________________________________101


4ta Parte:

Obtencin del Grfico de Existencia en Almacn_______________________102

5ta Parte:

Creacin de una macro para obtener el Kardex de cada vehculo__________102

Prctica de Laboratorio N 3_______________________________________________104


Prctica de Laboratorio N 4_______________________________________________109
1ra Parte:

Creacin de la Lista de Precios______________________________________110

2da Parte:

Creacin de la Lista de Clientes____________________________________111

3ra Parte:

Creacin de la Boleta de Venta_______________________________________111

4ta Parte:

Traer la hoja que convierte nmeros en letras__________________________113

5ta Parte:

Creacin del Registro de Ventas______________________________________115

Crear la macro que Registra una Boleta de Venta__________________________________________115


Crear la macro que prepara una Nueva Boleta de Venta_____________________________________116

Cdigos ASCII para caracteres especiales:________________________________________118

Preparado por Daniel Zegarra Zavaleta

Pg. 3

Manual de Excel Avanzado

1. Formato Personalizado de Celdas


a. Cuando crear formatos personalizados
La apariencia que pueden adquirir los nmeros en las celdas, pueden variar segn el
formato que se les asigne y para esto existen varias categoras de formatos. Pero si
estas no satisfacen nuestras necesidades, uno mismo puede crear sus propios
formatos de nmeros personalizados.
Ejemplo de formatos tradicionales existentes en Excel:
A
1

3,473.50

Estilo millares

#,##0.00

S/. 672.25

Estilo moneda

S/. #,##0.00

13.7%

Estilo porcentual

0.0%

(79.5)

Negativos entre parntesis

(0.00)

4-Jun

Fechas con da y mes

d-mmm

Ejemplo de formatos personalizados creados por el usuario:


A
6

64.5 Kg

Para pesos en kilogramos

0.0 Kg

37.4 C

Grados centgrados

0.0C

000254

Para cdigos

000000

IGV 19%

Texto y porcentaje

IGV 0%

10

4 puntos

Nmero y texto

0 puntos

Preparado por Daniel Zegarra Zavaleta

Pg. 4

Manual de Excel Avanzado

Tenga en cuenta que en todos los ejemplos anteriores las celdas tienen datos
numricos y aunque el formato ha cambiado su apariencia, el contenido de ellas
sigue siendo numrico y puede operarse matemticamente en cualquier formula.
Nota.-

Cuando se crean formatos personalizados, estos formatos solo tendrn validez dentro del
libro en el cual se crearon.

Para poder crear formatos personalizados hay que seguir unas cuantas reglas, las
cuales pasamos a indicar a continuacin:

b. Como crear formatos personalizados


En el men Formato/Celdas, elegir la categora Personalizada:

Escribir aqu el formato


Escribir aqu el formato
personalizado
personalizado

En la casilla de texto llamada Tipo se pueden definir formatos personalizados o


elegir los ya existentes en la lista inferior.
Crear un formato de nmero personalizado

Preparado por Daniel Zegarra Zavaleta

Pg. 5

Manual de Excel Avanzado


1. Seleccione las celdas a las que desea dar formato.
2. En el men Formato, haga clic en Celdas y haga clic en la ficha Nmero.
3. En la lista Categora, haga clic en una categora y, a continuacin, haga clic en
un formato integrado que se asemeje al que se desee.
4. En la lista Categora, haga clic en Personalizada.
5. En el cuadro Tipo, modifique los cdigos de formato de nmero para crear el
formato que desee.
Puede especificar hasta cuatro secciones de cdigos de formato. Las secciones,
separadas por caracteres de punto y coma, definen los formatos de los nmeros
positivos, nmeros negativos, valores cero y texto, en ese orden. Si especifica slo
dos secciones, la primera se utiliza para los nmeros positivos y ceros, y la segunda
se utiliza para los nmeros negativos. Si especifica slo una seccin, todos los
nmeros utilizan ese formato. Si omite una seccin, incluya el punto y coma que
separa esa seccin.
Formato de nmeros positivos

Formato de ceros

#,##0.00_) ; [ROJO](# ,##0.00) ; 0.00 ; Factura @


Formato de nmeros negativos
Nota.-

Formato de textos

El smbolo de arroba @ representa el contenido de la celda cuando este contenido es del


tipo texto.

Utilice cdigos de formato que describan cmo desea mostrar un nmero, una fecha
u hora, una moneda, porcentajes o notacin cientfica y un texto o espacio.
Ejemplo:
A un grupo de celdas con diferentes datos se le da el siguiente formato
personalizado:
[AZUL]#,##0.00_) ; [ROJO](# ,##0.00) ; Sin Valor ; @ anulada
A
1

-8734.9

Cero

Factura

Texto

6254.258

Boleta

Preparado por Daniel Zegarra Zavaleta

Nmero negativo

Nmero positivo
Texto
Pg. 6

Manual de Excel Avanzado

El resultado final en el rango formateado es el siguiente:


A
1

(8,734.90)

Entre parntesis y color rojo

Sin Valor

Cero cambia a Sin Valor

Factura anulada

6,254.26

Boleta anulada

Se le agrega la palabra anulada


Redondea y de color azul
Se le agrega la palabra anulada

Como se puede ver, cada celda adquiere el formato que le corresponde segn el
contenido que esta tenga.

c. Cdigos de formato de nmero para fechas y horas


Das, meses y aos Para presentar das, meses y aos, incluya en una seccin los
siguientes cdigos de formato. Si utiliza una "m" inmediatamente detrs del cdigo
"h" o "hh", o bien inmediatamente delante del cdigo "ss", Microsoft Excel
presentar los minutos en lugar de presentar el mes.
Para ver

Use este cdigo

Los meses como 112

Los meses como 0112

mm

Los meses como ene.dic.

mmm

Los meses como enerodiciembre

mmmm

Los meses como la inicial de cada mes

mmmmm

Los das como 131

Los das como 0131

dd

Los das como lun.sb.

ddd

Los das como lunessbado

dddd

Los aos como 0099

aa

Los aos como 19009999

aaaa

Horas, minutos y segundos Para presentar horas, minutos y segundos, incluya en


una seccin los siguientes cdigos de formato.

Preparado por Daniel Zegarra Zavaleta

Pg. 7

Manual de Excel Avanzado


Para ver

Use este cdigo

Las horas como 023

Las horas como 0023

hh

Los minutos como 059

Los minutos como 0059

mm

Los segundos como 059

Los segundos como 0059

ss

Las horas como 4 a.m.

h a.m./p.m.

La hora como 4:36 p.m.

h:mm a.m./p.m.

La hora como 4:36:03 p.

h:mm:ss a/p

El tiempo transcurrido en horas; por ejemplo, 25:02

[h]:mm

El tiempo transcurrido en minutos; por ejemplo, 63:46

[mm]:ss

El tiempo transcurrido en segundos

[ss]

Fracciones de segundo

h:mm:ss.00

Si el formato contiene la indicacin a.m. o p.m., la hora se basar en el formato de


12 horas, donde "a.m." o "a" indica las horas desde la medianoche hasta el medioda
y "p.m." o "p" indica las horas desde el medioda hasta la medianoche. En caso
contrario, el reloj se basar en el formato de 24 horas. La letra "m" o las letras "mm"
deben aparecer inmediatamente detrs del cdigo "h" o "hh", o bien inmediatamente
delante del cdigo "ss"; de lo contrario, Microsoft Excel presentar el mes en lugar
de presentar los minutos.

d. Cdigos de formato de nmero para posiciones decimales,


espacios, colores y condiciones
Utilice los cdigos de formato de nmero para crear un formato de nmero
personalizado.
Decimales y dgitos significativos
Para dar formato a las fracciones o los nmeros con decimales, incluya los
siguientes dgitos marcadores en una seccin. Si un nmero tiene ms dgitos a la
derecha del separador que marcadores en el formato, se redondear para que tenga
tantos decimales como marcadores. Si hay ms dgitos a la izquierda del separador
que marcadores, se presentarn los dgitos adicionales. Si el formato contiene

Preparado por Daniel Zegarra Zavaleta

Pg. 8

Manual de Excel Avanzado


solamente signos de nmero (#) a la izquierda del separador, los nmeros menores
que la unidad comenzarn por el separador.
#

muestra nicamente los dgitos significativos y no muestra los ceros sin


valor.

(cero) muestra los ceros sin valor si un nmero tiene menos dgitos que la
cantidad ceros en el formato.

agrega los espacios de los ceros sin valor a cada lado del separador
decimal, para alinear los decimales con formato de fuente de ancho fijo,
como Courier New. Tambin puede utilizarse ? para las fracciones que
tengan un nmero de dgitos variable.
Para ver

Use este cdigo

1234.59 como 1234.6

####.#

8.9 como 8.900

#.000

.631 como 0.6

0.#

12 como 12.0 y 1234.568 como 1234.57

#.0#

44.398. 102.65 y 2.8 con decimales alineados

???.???

5.25 como 5 1/4 y 5.3 como 5 3/10, con los


smbolos de divisin alineados

# ???/???

Separador de millares
Para ver una coma como separador de los millares o para ajustar la escala de un
nmero mediante un mltiplo de mil, incluya una coma en el formato de nmero.
Para ver

Use este cdigo

12000 como 12,000

#,###

12000 como 12

#,

12200000 como 12,2

0,0,,

Color
Para definir el color de una seccin del formato, escriba en la seccin el nombre de
uno de los siguientes ocho colores entre corchetes. El color debe ser el primer
elemento de la seccin.

Preparado por Daniel Zegarra Zavaleta

Pg. 9

Manual de Excel Avanzado

[NEGRO]

[AZUL]

[FUCSIA]

[ROJO]

[AGUAMARINA] [VERDE] [BLANCO] [AMARILLO]


Condiciones
Para definir los formatos de nmero que se aplicarn nicamente si coinciden con
las condiciones que se hayan especificado, encierre la condicin entre corchetes. La
condicin consta de un operador de comparacin y un valor. Por ejemplo, el
siguiente formato muestra los nmeros iguales o inferiores a 100 en color rojo y los
nmeros superiores a 100 en color azul.
[Rojo][<=100];[Azul][>100]
En cambio, para aplicar formatos condicionales a las celdas (por ejemplo, el
sombreado de color que depende del valor de una celda) utilice el comando
Formato condicional en el men Formato.

e. Cdigos de formato de nmero para texto y espaciado


Agregar caracteres
Para ver texto y nmeros en una celda, encierre los caracteres de texto entre
comillas ("") o ponga delante de un solo carcter una barra invertida (\). Incluya los
caracteres en la seccin correspondiente de los cdigos de formato. Por ejemplo,
introduzca el formato $ 0.00 "Exceso";-$ 0.00 "Defecto" para ver un importe
negativo como "-$125.74 Defecto". El espacio y los siguientes caracteres se
muestran sin comillas: $ - + / ( ) : ! ^ & ' (comilla simple izquierda) ' (comilla simple
derecha) ~ { } = < >
Incluir una seccin de texto
Si se incluye una seccin de texto, siempre ser la ltima seccin en el formato de
nmero. Incluya el carcter @ en la seccin en que desee presentar el texto escrito
en la celda. Si se omite el carcter @ en la seccin de texto, no se ver el texto que
se haya escrito. Si desea ver siempre caracteres de texto especficos con el texto
escrito, encierre el texto adicional entre comillas dobles (" "), por ejemplo,
"facturacin bruta de "@
Si el formato no incluye una seccin de texto, el texto que escriba no se ver
afectado por el formato.
Agregar espacio
Preparado por Daniel Zegarra Zavaleta

Pg. 10

Manual de Excel Avanzado


Para crear un espacio con el ancho de un carcter en un formato de nmero, incluya
un subrayado _ seguido del carcter. Por ejemplo, si despus de un subrayado se
cierra un parntesis _) entonces los nmeros positivos se alinearn correctamente
con los nmeros negativos que estn entre parntesis.
Repetir caracteres
Para repetir el carcter siguiente en el formato
para llenar el ancho de la columna, incluya un
asterisco (*) en el formato de nmero.
Por ejemplo, introduzca $*=#,##0.00 para
incluir suficientes signos = despus del signo
monetario para llenar una celda. El resultado sera: $=====2,716.25

f. Eliminar un formato de nmero personalizado


1.- En el men Formato, haga clic en Celdas y haga clic en la ficha Nmero.
2.- En la lista Categora, haga clic en Personalizada.
3.- En la parte inferior del cuadro Tipo, haga clic en el formato personalizado que
desee eliminar.
4.- Haga clic en Eliminar.
Solamente pueden eliminarse los formatos personalizados. Microsoft Excel aplicar
el formato predeterminado (General) a todas las celdas del libro a las que se haya
dado formato mediante el formato personalizado que se ha eliminado.

g. Si las fechas introducidas en la hoja de clculo no tienen el


mismo aspecto
Cuando se introduce una fecha en una celda, dicha fecha aparece en un formato de
fecha predeterminado o en un formato aplicado a la celda antes de introducir la
fecha. El formato de fecha predeterminado se basa en la configuracin de la ficha
Fecha del cuadro de dilogo Configuracin regional, al que se tiene acceso desde el
Panel de control de Windows. Si estos valores de fecha han cambiado, cualquier
fecha existente en los libros no formateados con el comando Formato de celdas
tambin cambia.

2. Usar Funciones avanzadas para calcular valores

Preparado por Daniel Zegarra Zavaleta

Pg. 11

Manual de Excel Avanzado


Conociendo ya las funciones bsicas de Excel, como son:
Suma, Promedio, Max, Min, Contar, Contara, Entero, Redondear, Raz, Pi, Si,
Y, O, Buscarv, Buscarh, Subtotales, Indirecto.
Las cuales se han visto ya en el primer curso inicial de Excel, ahora veamos algunas
otras funciones ms avanzadas:
Sumar.si,
Contar.si,
K.esimo.mayor,
K.esimo.menor,
Redondear.mas,
Redondear.menos, Aleatorio, Esblanco, Esnumero, Estexto, Eserror, BdMax, Hoy,
Ahora.

Funcin SUMAR.SI
Suma selectivamente las celdas que coinciden con el argumento criterio.
Sintaxis
SUMAR.SI(rango;criterio;rango a sumar)
Donde:
Rango

Es el rango de celdas que se desea evaluar.

Criterio

Es el criterio en forma de nmero, expresin o texto, que


determina qu celdas se van a sumar. Por ejemplo, el
argumento criterio puede expresarse como 32; "32"; ">32";
"manzanas"; D4.

Rango a sumar

Son las celdas que se van a sumar. Las celdas contenidas en


Rango a sumar se suman slo si las celdas correspondientes
del Rango coinciden con el Criterio. Si Rango a sumar se
omite, se suman las celdas contenidas en el argumento
Rango.

Ejercicio N 1: Clculos condicionales en bienes inmuebles


En una hoja de clculo en las columnas A, B y C se tiene una relacin de las
valorizaciones de varios bienes inmuebles pertenecientes a tres personas.
Al lado derecho se quiere calcular a cuanto ascienden los bienes acumulados de
cada propietario.
A
B
C
1
Valorizacion de varias casas
2
3
Propietario
Zona
Valorizacin
4 Carlos
Sur
S/.
114,000.00
5 Sonia
Norte
S/.
120,000.00
6 Jorge
Sur
S/.
186,000.00
7 Sonia
Oeste
S/.
75,000.00
8 Jorge
Norte
S/.
222,000.00
9 Carlos
Oeste
S/.
150,000.00
Preparado
por
Daniel
Zegarra
Zavaleta
10 Sonia
Norte
S/.
90,000.00
11
TOTAL
S/.
957,000.00

E
F
Totales por Propietario
Propietario
Carlos
Jorge
Sonia
TOTAL

S/.
S/.
S/.
S/.

Valorizacin
264,000.00
408,000.00
285,000.00
957,000.00

Total de casas inferiores a 100,000:

Pg. 12

S/.

165,000.00

Manual de Excel Avanzado

Para calcular la valorizacin acumulada de las casas de cada propietario haga usted
lo siguiente:
1.- En F4 escribir la frmula:

=SUMAR.SI(A4:A10;E4;C4:C10)

2.- Luego copie esta frmula en F5 y F6.


3.- En F7 use Autosuma para sumar las tres celdas.
Si tambin se desea calcular la suma de las valorizaciones que son inferiores a
100,000 soles, entonces:
4.- La formula en F11 sera:
=SUMAR.SI(C4:C10;"<100000")
Note que se ha omitido el Rango a sumar.
Como hemos podido ver, esta funcin puede seleccionar en un
rango cuales valores se van a sumar, teniendo en cuenta una
cierta condicin. Sin embargo, la funcin solo puede evaluar
una sola condicin de criterio:
Todas las casas que sean de un determinado propietario:
=SUMAR.SI(A4:A10;"Jorge";C4:C10)
o; todas las casas que se encuentren en una determinada zona:
=SUMAR.SI(B4:B10;"Norte";C4:C10)

La Funcin CONTAR.SI
Cuenta las celdas en el rango que coinciden con el argumento criterio.
Sintaxis
CONTAR.SI(rango;criterio)
Rango

Es el rango de celdas que se desea evaluar.

Criterio

Es el criterio en forma de nmero, expresin o texto, que


determina qu celdas se van a contar. Por ejemplo, el
argumento criterio puede expresarse como 32; "32"; ">32";
"manzanas";D4.

La funcin CONTARSI cuenta el nmero de veces que aparece un valor en un rango


de celdas, por ejemplo:
Contar el nmero de celdas en el rango B4:B10 que contienen el texto "Sur".

Preparado por Daniel Zegarra Zavaleta

Pg. 13

Manual de Excel Avanzado


=CONTAR.SI(B4:B10;"Sur ")
Pero, cmo haramos si se desea sumar todas las valorizaciones de casas ubicadas
en una determinada zona y que adems pertenezcan a un determinado propietario?
Para resolver clculos condicionales que requieren ms de un criterio, entonces se
puede hacer uso de la combinacin de la funcin SUMA y la funcin SI, o tambin
la funcin CONTAR y la funcin SI; pero escritas dentro de una frmula matricial.

Frmulas Matriciales:
a. Cmo crear un total basndose en varias condiciones
Nota.-

En Excel algunas frmulas pueden escribirse como frmulas matriciales. Para esto hay que
escribir la frmula y al finalizar hay que presionar la combinacin de teclas
Ctrl+Shift+Enter, esto hace que la formula se encierre entre llaves al momento de ingresar
a la celda, quedando de esta forma: {=formula}

Primer Caso (para condiciones del tipo Y)


Ahora veremos la siguiente frmula matricial que permitir calcular el valor total de
las valorizaciones de las celdas C4:C10, donde el rango A4:A10 contiene al
propietario "Sonia", y el rango B5:B10 contiene la zona denominada "Norte".
{=SUMA(SI((A4:A10="Sonia")*(B4:B10="Norte");C4:C10))}
Las dos condiciones estn encerradas entre parntesis y entre ellas se escribe el
operador de multiplicacin, lo cual indica que las dos condiciones deben cumplirse
a la vez. (Condicin del tipo Y)
Segundo Caso (para condiciones del tipo O)
Para calcular el valor total de las valorizaciones de las celdas C4:C10, donde
A4:A10 contiene "Carlos" o "Jorge", utilice la siguiente frmula.
{=SUMA(SI((A4:A10 ="Carlos")+(A4:A10 ="Jorge");C4:C10))}
En este caso las dos condiciones encerradas entre parntesis se escribe con el
operador de suma entre ellas, lo cual estara indicando que es suficiente que se
cumpla una de las dos condiciones para que se realice el clculo. (Condicin del tipo O)
No olvide que ambas son frmulas matriciales (estn encerradas entre llaves) y
deben introducirse presionando al final CTRL+SHIFT+ENTER.
Otros ejemplos:
Contar el nmero de veces que aparecen varias condiciones
En la siguiente frmula, cada vez que Excel encuentre "Sonia" en el rango A4:A10,
comprobar la presencia del texto "Norte" en la misma fila en la columna B (el
rango B4:B10). A continuacin, Excel calcular de varios modos, el nmero de filas
que contienen ambos textos. En los tres casos las formulas obtienen el mismo
resultado.
{=CONTAR(SI((A4:A10="Sonia")*(B4:B10="Norte");1;0))}
Preparado por Daniel Zegarra Zavaleta

Pg. 14

Manual de Excel Avanzado


o sino as:
{=SUMA(SI((A4:A10="Sonia")*(B4:B10="Norte");1;0))}
o tambin as:
{=SUMA(SI(A4:A10="Sonia ";SI(B4:B10="Norte";1;0)))}
En las primeras dos formulas el operador de multiplicacin indica que las
condiciones son del tipo Y; y en la tercera formula se est utilizando dos funciones
SI anidadas, o sea una funcin SI dentro de otra funcin SI.
Se trata en estos casos de formulas matriciales y deben introducirse presionando al
final CTRL+SHIFT+ENTER.

Las Funcines K.ESIMO.MENOR, y K.ESIMO.MAYOR


Encuentra los primeros menores o primeros mayores valores de una lista.
Sintaxis
K.ESIMO.MENOR(rango;posicin)
K.ESIMO.MAYOR(rango;posicin)
Rango

es el rango de celdas que se desea analizar.

Posicin

es ubicacin del nmero menor o mayor que se desea


encontrar. Esto es, para el menor de todos seria 1, para el
segundo menor sera 2, etc..

Si se quisiera averiguar cual es la valorizacin que ocupa el segundo lugar entre las
mayores, Y cual es la tercera valorizacin mas pequea, las frmulas seran:
=K.ESIMO.MAYOR(C4:C10;2)

186,000.00

=K.ESIMO.MENOR(C4:C10;3)

114,000.00

Las Funciones REDONDEAR.MENOS, y REDONDEAR.MAS


Redondea un valor numrico al inmediato inferior o al inmediato superior segn la
cantidad de decimales que se desee obtener.
Sintaxis
REDONDEAR.MENOS(valor;posicin decimal)
REDONDEAR.MAS(valor;posicin decimal)
Valor

Es la cantidad numrica que se desea redondear.

Posicin decimal

Es la cantidad de decimales a los que se desea redondear la


cantidad numrica. Si en posicin se escribe un nmero

Preparado por Daniel Zegarra Zavaleta

Pg. 15

Manual de Excel Avanzado


negativo se estar redondeando no los dgitos decimales
sino los dgitos enteros.
Si en la celda E4 estuviera escrito el numero 3267.283, las funciones arrojaran los
siguientes resultados:
=REDONDEAR.MENOS(E4,1)

3267.2

=REDONDEAR.MAS(E4,1)

3267.3

=REDONDEAR.MENOS(E4,0)

3267

=REDONDEAR.MAS(E4,0)

3268

=REDONDEAR.MENOS(E4,-1)

3260

=REDONDEAR.MAS(E4,-1)

3270

=REDONDEAR.MENOS(E4,-3)

3000

=REDONDEAR.MAS(E4,-3)

4000

La Funcin ALEATORIO
Genera un nmero completamente al azar entre 1 y 0.
Sintaxis
ALEATORIO()
Esta funcin carece de argumentos.
El siguiente ejemplo simula el lanzamiento de un dado
=ENTERO(ALEATORIO()*6)+1
La funcin Aleatorio multiplicada por 6 generar un numero entre 0 y 5.9999. La
funcin Entero truncar la parte decimal de stos nmeros quedando as enteros del
0 al 5, y al aumentarles 1 stos finalmente serian nmeros entre 1 y 6.
Escrita esta frmula, bastara con presionar la tecla de funcin [F9] para recalcular la
frmula y entonces ALEATORIO generar otro nmero al azar.

Las Funciones ES
En esta seccin se describen 9 funciones para hojas de clculo que se utilizan para
comprobar el tipo de un valor o referencia.
Cada una de estas funciones, a las que se conoce como funciones ES, comprueba el
tipo del argumento valor y devuelve VERDADERO o FALSO dependiendo del
resultado. Por ejemplo, ESBLANCO devuelve el valor lgico VERDADERO si
valor es una referencia a una celda vaca, de lo contrario devuelve FALSO.
Sintaxis

Preparado por Daniel Zegarra Zavaleta

Pg. 16

Manual de Excel Avanzado


ESBLANCO(valor)
ESERR(valor)
ESERROR(valor)
ESLOGICO(valor)
ESNOD(valor)
ESNOTEXTO(valor)
ESNUMERO(valor)
ESREF(valor)
ESTEXTO(valor)
Valor

Es el valor que se desea probar. Puede ser el valor de una


celda vaca, de error, lgico, de texto, numrico, de
referencia o un nombre de rango que haga referencia a
alguno de los anteriores.
Funcin

Devuelve VERDADERO si

ESBLANCO

Valor se refiere a una celda vaca.

ESERR

Valor se refiere a cualquier valor de error con


excepcin de #N/A.

ESERROR

Valor se refiere a uno de los valores de error (#N/A,


#VALOR!, #REF!, #DIV/0!, #NUM!,
#NOMBRE? o #NULO!).

ESLOGICO

Valor se refiere a un valor lgico.

ESNOD

Valor se refiere al valor de error #N/A (el valor no


est disponible).

ESNOTEXTO

Valor se refiere a cualquier elemento que no sea


texto (observe que esta funcin devuelve
VERDADERO si el valor se refiere a una celda en
blanco).

ESNUMERO

Valor se refiere a un nmero.

ESREF

Valor se refiere a una referencia.

ESTEXTO

Valor se refiere a texto.

Nota.-

Los argumentos valor de las funciones ES no se convierten. Por ejemplo, en la mayora de


las funciones en las que se requiere un nmero, el valor de texto "19" se convierte en el
nmero 19. Sin embargo, en la frmula ESNUMERO("19"), "19" no se convierte y
ESNUMERO devuelve FALSO.

Preparado por Daniel Zegarra Zavaleta

Pg. 17

Manual de Excel Avanzado

Cuando usar las funciones ES


Las funciones ES son tiles en frmulas cuando se desea comprobar el resultado de
un clculo. Al combinar esas funciones con la funcin SI, proporcionan un mtodo
para localizar errores en frmulas (observe los siguientes ejemplos).
Ejemplos
ESLOGICO(VERDADERO) es igual a VERDADERO
ESLOGICO("VERDADERO") es igual a FALSO
ESNUMERO(4) es igual a VERDADERO
Supongamos que en una hoja el rango A1:A5 muestra los siguientes valores de
texto, numrico y de error: "Oro", "Regin1", #REF!, $ 330.92 y #N/A
respectivamente.
1
2
3
4
5

A
Sofa
Trimestre1
#!REF!
$ 330.92
#N/A

ESBLANCO(A1) es igual a FALSO


ESERROR(A3) es igual a VERDADERO
ESNOD(A3) es igual a FALSO
ESNOD(A5) es igual a VERDADERO
ESERR(A5) es igual a FALSO
ESNUMERO(A4) es igual a VERDADERO (si se introdujo $330.92 como nmero
y no como texto)
ESREF(Regin1) es igual a VERDADERO (si Regin1 se define como un nombre
de rango)
ESTEXTO(A2) es igual a VERDADERO (si Trimestre1 tiene formato de texto)
Supongamos que en otra hoja de clculo desea calcular el promedio del rango
C1:C4, pero no est seguro de que las celdas contienen nmeros. La frmula
PROMEDIO(C1:C4) devolver el valor de error #DIV/0! si C1:C4 no contiene
nmeros. Puede utilizar la siguiente frmula para localizar posibles errores y
permitir la realizacin del clculo:
=SI(ESERROR(PROMEDIO(C1:C4));"No hay Nmeros";PROMEDIO(C1:C4))

Preparado por Daniel Zegarra Zavaleta

Pg. 18

Manual de Excel Avanzado

La Funcin HOY
Da como resultado la fecha del sistema.
Sintaxis
HOY()
Esta funcin carece de argumentos.
=HOY()

dara como resultado:

07/06/2004

La Funcin AHORA
Da como resultado la fecha y hora del sistema.
Sintaxis
AHORA()
Esta funcin carece de argumentos.
=AHORA() dara como resultado:

07/06/2004

03:21

Funciones de Bases de Datos BDfuncin


En esta seccin se describen las 12 funciones para hojas de clculo empleadas para
los clculos de bases de datos (o listas) de Microsoft Excel. Cada una de estas
funciones, denominadas colectivamente funciones BD, usa tres argumentos:
base_de_datos, nombre_de_campo y criterios. Estos argumentos se refieren a los
rangos de la hoja de clculo empleados en la funcin para base de datos.
Sintaxis
BDfuncin(Base de datos;Campo;Criterios)
Base_de_datos
Nota.-

es el rango de celdas que compone la base de datos.

En Microsoft Excel, una base de datos es una lista de datos relacionados en la que las filas
de informacin son registros y las columnas de datos, campos. La primera fila de la lista
contiene los rtulos de cada columna. La referencia se puede introducir como rango de
celdas o como nombre que representa el rango que contiene la lista.
En todas las funciones para bases de datos, si la referencia de base de datos corresponde a
una celda dentro de una tabla dinmica, el clculo se realiza nicamente con los datos de
esa tabla dinmica.
Si desea calcular subtotales en la lista, use el comando Subtotales en el men Datos para
insertar los subtotales.

Campo

Indica la columna en que se utiliza la funcin. Las


columnas de datos en la lista deben tener un rtulo
identificativo en la primera fila. Campo puede ser una

Preparado por Daniel Zegarra Zavaleta

Pg. 19

Manual de Excel Avanzado


cadena de texto con el rtulo de columna encerrado entre
dobles comillas, como por ejemplo "Edad" o
"Rendimiento" en el ejemplo siguiente, o como un nmero
que representa la posicin de la columna en la lista: 1 para
la primera columna (rbol en el ejemplo siguiente), 2 para
la segunda (Alto) y as sucesivamente.
Criterios

Es una referencia a un rango de celdas que especifican


condiciones de una funcin. La funcin devuelve
informacin de la lista que concuerda con las condiciones
especificadas en el rango de criterios. Este rango incluye
una copia del rtulo de la columna en la lista de la columna
que desea que resuma la funcin. La referencia al
argumento criterios puede introducirse como rango de
celdas, como A9:F10 en la tabla de base de datos que se
muestra a continuacin, o como nombre asignado a un
rango, por ejemplo "Criterio."

Sugerencias

Cualquier rango se puede usar como argumento criterios, siempre que


incluya por lo menos un nombre de campo y por lo menos una celda debajo
del nombre de campo para especificar un valor de comparacin de criterios.

Por ejemplo, si el rango G1:G2 contiene el encabezado de campo Ingresos en la


celda G1 y la cantidad 10.000 en la celda G2, el rango podra definirse como
CoincidirIngresos y ese nombre podra usarse como argumento criterios en las
funciones para bases de datos.

Aunque el rango de criterios puede ubicarse en cualquier parte de la hoja de


clculo, no coloque el rango de criterios debajo de la lista. Si agrega ms
informacin a la lista utilizando el comando Formulario en el men Datos, la
nueva informacin se agrega a la primera fila debajo de la lista. Si la fila de
debajo no est vaca, Microsoft Excel no podr agregar la nueva
informacin.

Asegrese de que el rango de criterios no se superpone sobre la lista.

Para realizar una operacin en toda una columna de la base de datos,


introduzca una lnea en blanco debajo de los nombres de campo en el rango
de criterios

Preparado por Daniel Zegarra Zavaleta

Pg. 20

Manual de Excel Avanzado

Ejercicio N 2: Clculos con funciones de base de datos BD


En la siguiente ilustracin se muestra una base de datos que contiene la descripcin
y comportamiento de varios tipos de rboles. Cada registro contiene informacin
acerca de un rbol. El rango A5:E11 se denomina HUERTO y el rango A1:F3
CRITERIOS.

A
B
C
D
E
F
1
Arbol
Alto
Edad Rendimiento
Ganancia
Alto
2 Manzano
>10
<16
3 Peral
4
5
Arbol
Alto
Edad Rendimiento
Ganancia
6 Manzano
18
20
14
S/. 105.00
7 Peral
12
12
10
S/.
96.00
8 Cerezo
13
14
9
S/. 105.00
9 Manzano
14
15
10
S/.
75.00
10 Peral
9
8
8
S/.
76.80
11 Manzano
8
9
6
S/.
45.00
BDCONTAR(HUERTO;"Edad";A1:F2) es igual a 1. Esta funcin examina los
registros de manzanos cuyo alto vara entre 10 y 16 metros y determina cuntos
campos Edad de esos registros contienen nmeros.
BDCONTARA(HUERTO;"Ganancia";A1:F2) es igual a 1. Esta funcin examina los
registros de manzanos cuyo alto vara entre 10 y 16 metros, y determina el nmero
de campos Ganancia de esos registros que no estn en blanco.
BDMAX(HUERTO;"Ganancia";A1:A3) es igual a 105.00 , la ganancia mxima de
manzanos y perales.
BDMIN(HUERTO;"Ganancia";A1:B2) es igual a 75.00 , la ganancia mnima de
manzanos con un alto superior a 10 metros.
BDSUMA(HUERTO;"Ganancia";A1:A2) es igual a 225.00 , la ganancia total de
manzanos.
BDSUMA(HUERTO;"Ganancia";A1:F2) es igual a 75.00 ; la ganancia total de
manzanos con un alto entre 10 y 16.
BDPRODUCTO(HUERTO;"Rendimiento";A1:F2) es igual a 10, el producto del
rendimiento de los manzanos con un alto entre 10 y 16.
BDPROMEDIO(HUERTO;"Rendimiento";A1:B2) es igual a 12, el rendimiento
promedio de manzanos con un alto de ms de 10 metros.
BDPROMEDIO(HUERTO;3;HUERTO) es igual a 13, la edad media de todos los
rboles en la base de datos.

Preparado por Daniel Zegarra Zavaleta

Pg. 21

Manual de Excel Avanzado


BDDESVEST(HUERTO;"Rendimiento";A1:A3) es igual a 2.97; la desviacin
estndar estimada en el rendimiento de manzanos y perales si los datos de la base de
datos son nicamente una muestra de la poblacin total del huerto.
BDDESVESTP(HUERTO;"Rendimiento";A1:A3) es igual a 2.65; la desviacin
estndar verdadera en el rendimiento de manzanos y perales si los datos de la base
de datos representan el conjunto de la poblacin.
BDVAR(HUERTO;"Rendimiento";A1:A3) es igual a 8.8; la varianza estimada en el
rendimiento de manzanos y perales si los datos de la base de datos slo representan
una muestra de la poblacin total del huerto.
BDVARP(HUERTO;"Rendimiento";A1:A3) es igual a 7.04; la varianza real en el
rendimiento de manzanos y perales si los datos de la base de datos representan el
conjunto de la poblacin del huerto.
BDEXTRAER(HUERTO;"Rendimiento;CRITERIOS) devuelve el valor de error
#NUM! porque ms de un registro cumple con los criterios.

Funciones de Texto
La Funcin IZQUIERDA
Extrae los primeros caracteres del extremo izquierdo de una cadena de caracteres
Sintaxis
IZQUIERDA(texto;num_de_caracteres)
Texto

Es la cadena de texto que contiene los caracteres que se


desea extraer

num_de_caracteres

Especifica el numero de caracteres que se desea extraer. Si


se omite extrae solo un caracter

Ejemplo:
=IZQUIERDA(El Peruano;7)

dara como resultado:

El Peru

(El espacio en blanco tambin es un carcter que se toma en cuenta)

La Funcin DERECHA
Extrae los ltimos caracteres del extremo derecho de una cadena de caracteres
Sintaxis
DERECHA(texto;num_de_caracteres)
Texto

Es la cadena de texto que contiene los caracteres que se


desea extraer

num_de_caracteres

Especifica el numero de caracteres que se desea extraer. Si


se omite extrae solo un caracter

=DERECHA(Los Peruanos;8)
Preparado por Daniel Zegarra Zavaleta

dara como resultado:

Peruanos

.
Pg. 22

Manual de Excel Avanzado

La Funcin EXTRAE
Devuelve un nmero especifico de caracteres de una cadena de texto comenzando
en la posicin especificada
Sintaxis
EXTRAE(texto;posicin_inicial;num_de_caracteres)
Texto

Es la cadena de texto que contiene los caracteres que se


desea extraer

posicin_inicial

Es la posicin del primer carcter que se desea extraer del


argumento Texto. l primer carcter en Texto es 1

num_de_caracteres

Especifica el numero de caracteres que se desea extraer.

Ejemplo:
=EXTRAE(Los Peruanos;5,4)

dara como resultado:

Peru

La Funcin HALLAR
Busca una cadena de texto dentro de otra cadena de texto y leyendo de izquierda a
derecha devuelve el numero de la posicin inicial de la cadena hallada (no
diferencia entre maysculas ni minsculas)
Sintaxis
HALLAR(texto_buscado;dentro_del_textol;posicin_inicial)
Texto_buscado

Es la cadena de texto o caracter que se desea ubicar. Puede


usar los comodines * o ?. O usar tambin

Dentro_del_texto

Es la cadena de texto dentro de la cual se desea ubicar el


texto buscado

posicin_inicial

Es la posicin del primer carcter a partir de la cual se


iniciar la bsqueda

Ejemplo:
=HALLAR(a;Las Peruanas;1)

dara como resultado:

2.

=HALLAR(a;Las Peruanas;5)

dara como resultado:

9.

Ejemplo:
Si en la celda C4 estuviese el texto Las Peruanas
=EXTRAE(C4;HALLAR( ;C4;1)+1;4)

entonces:

dara como resultado: Peru

En este ejemplo, HALLAR se encarga de buscar la posicin donde se encuentra el


espacio en blanco, le suma 1 a esta posicin y a partir de all la funcin EXTRAE
devuelve los siguientes 4 caracteres

Preparado por Daniel Zegarra Zavaleta

Pg. 23

Manual de Excel Avanzado

La Funcin ENCONTRAR
Busca una cadena de texto dentro de otra cadena de texto y leyendo de izquierda a
derecha devuelve el numero de la posicin inicial de la cadena hallada (A diferencia
de la funcin HALLAR, esta funcin si reconoce entre maysculas y minsculas)
Sintaxis
ENCONTRAR(texto_buscado;dentro_del_texto;posicin_inicial)
Texto_buscado

Es la cadena de texto o caracter que se desea ubicar. Puede


usar los comodines * o ?. O usar tambin

Dentro_del_texto

Es la cadena de texto dentro de la cual se desea ubicar el


texto buscado

posicin_inicial

Es la posicin del primer carcter a partir de la cual se


iniciar la bsqueda

Ejemplo:
Si en la celda A3 estuviese el texto quien MAL anda mal acaba

entonces:
=ENCONTRAR(mal,A3;1)

dara como resultado:

16.

dara como resultado:

7.

en cambio,
=HALLAR(mal,A3;1)

(Recuerde que HALLAR no diferencia maysculas ni minsculas)

La Funcin LARGO
Devuelve el nmero de caracteres de una cadena de texto
Sintaxis
LARGO(texto)
Texto

Es la cadena de texto, o celda que contiene un texto

Ejemplo:
=LARGO(Zara Toledo)

dara como resultado:

12.

Las Funcines MAYUSC, MINUSC y NOMPROPIO


Convierte una cadena de texto en maysculas, en minsculas o solo las primera letra
de cada palabra en mayscula
Sintaxis
MAYUSC(texto)
MINUSC(texto)
NOMPROPIO(texto)
Texto

Es la cadena de texto, o celda que contiene un texto

Preparado por Daniel Zegarra Zavaleta

Pg. 24

Manual de Excel Avanzado


Ejemplo:
=MAYUSC(monto total)

dara como resultado: MONTO TOTAL

=MINUSC(DOS MIL)

dara como resultado: dos mil

=NOMPROPIO(bill gates) dara como resultado: Bill Gates

La Funcin SUSTITUIR
Reemplaza el texto existente con texto nuevo en una cadena
Sintaxis
SUSTITUIR(texto;texto_original;texto_nuevo;nmero_de_ocurrencia)
Texto

Es la cadena de texto, o celda que contiene un texto

Texto_original

Es la cadena de texto, que se desea reemplazar

Texto_nuevo

Es la cadena de texto que reemplazar al texto_original

Nmero_de_ocurrencia

Es el numero de aparicin del texto_original dentro de


toda la cadena de texto. Si se omite se reemplazar el
texto_original en todos los sitios donde aparezca

Ejemplo:
Si en la celda A3 estuviese el texto quien mal anda mal acaba

entonces:
=SUSTITUIR(A3,mal;bien)
dara como resultado: quien bien anda bien acaba

en cambio,
=SUSTITUIR(A3,mal;peor;2)
dara como resultado: quien mal anda peor acaba

(En este caso solo sustituye la segunda palabra encontrada)

La Funcin DECIMAL
Redondea un nmero al nmero de decimales especificado, da formato al nmero
con el formato decimal usando comas y puntos, y devuelve el resultado como texto.
Sintaxis
DECIMAL(nmero;decimales;no_separar_millares)
Nmero

Es el nmero que desea redondear y convertir en texto.

Decimales

Es el nmero de dgitos a la derecha del separador decimal.

Preparado por Daniel Zegarra Zavaleta

Pg. 25

Manual de Excel Avanzado


No_separar_millares Es un valor lgico que, si es VERDADERO, impide que
DECIMAL incluya un separador de millares en el texto
devuelto.
Observaciones

Los nmeros en Microsoft Excel nunca pueden tener ms de 15 dgitos


significativos, pero el argumento decimales puede tener hasta 127 dgitos.
Si decimales es negativo, el argumento nmero se redondea hacia la izquierda
del separador decimal.
Si omite el argumento decimales, se calcular con 2 decimales.
Si el argumento no_separar_millares es FALSO o se omite, el texto devuelto
incluir el separador de millares.
La principal diferencia entre dar formato a una celda que contiene un nmero
con el comando Celdas del men Formato y dar formato a un nmero
directamente con la funcin DECIMAL es que DECIMAL convierte el resultado
en texto. Un nmero que recibe formato con el comando Celdas sigue siendo un
nmero.

Ejemplos
1
2
3

Frmula

A
1234.518
-1234.567
7244.325

Resultado

=DECIMAL(A1;2)

1,234.52

=DECIMAL(A1;-1)

1,230

=DECIMAL(A2;-1;VERDADERO)

-1230

=DECIMAL(A3)

Preparado por Daniel Zegarra Zavaleta

7,244.33

Descripcin
Redondea A1 2 dgitos a la
derecha del punto decimal
Redondea A1 1 dgito a la
izquierda del punto decimal
Redondea A2 1 dgito a la
izquierda del separador
decimal, y sin coma de millar
Redondea A3 2 dgitos a la
derecha del separador decimal

Pg. 26

Manual de Excel Avanzado

Ejercicio N 3: Generacin de cdigos con funciones de texto


En el siguiente cuadro se muestra la relacin de socios que se han inscrito en un
club social, y se desea completar las columnas de cdigos y nombres completos de
cada socio.

Para generar los cdigos:


Cada cdigo se compone de 9 caracteres que son extrados de los datos de cada
socio, teniendo en cuenta ciertas condiciones.
Por ejemplo para el primer socio inscrito su cdigoo sera el siguiente:

85JZH05UM
Dos ltimos
dgitos del ao
de nacimiento

Primeras letras
de sus apellidos
y de su nombre

Sexo
Segunda letra
del lugar de
nacimiento
Dos dgitos del
mes de su
inscripcin

Las formulas para lograr este cdigo serian entonces:


Preparado por Daniel Zegarra Zavaleta

Pg. 27

Manual de Excel Avanzado

Dos ltimos dgitos del ao de nacimiento:


=DERECHA(AO(H4),2)

Primeras letras de sus apellidos y de su nombre:


= IZQUIERDA(C4,1)&IZQUIERDA(D4,1)&IZQUIERDA(E4,1)

Dos dgitos del mes de su inscripcin:


= DERECHA("0"&MES(B4),2)

Segunda letra del lugar de nacimiento:


= MAYUSC(EXTRAE(I4,2,1))

Sexo:
= G4

Finalmente entonces, la formula que habra que escribir en la celda A4 para generar
el cdigo sera:
=DERECHA(AO(H4),2)&IZQUIERDA(C4,1)&IZQUIERDA(D4,1)
&IZQUIERDA(E4,1)&DERECHA("0"&MES(B4),2)&MAYUSC(EX
TRAE(I4,2,1))&G4
Como se puede observar, esta formula une todas las formulas anteriores utilizando
entre ellas el operador de concatenacin &.
Para escribir los nombres completos de cada socio en una sola celda:
En la columna F se tendr que escribir una formula que una el nombres del socio y
luego de una coma los dos apellidos, pero en maysculas.
Por ejemplo para el primer socio deber decir:
Hugo, JARAMILLO ZAVALA
En la celda F4 hay que escribir la siguiente frmula:
=E4&", "&MAYUSC(C4&" "&D4)
Finalmente, tanto la formula de los cdigos como la de los nombres completos, deber
copiarse hacia abajo para todos los dems socios.

Preparado por Daniel Zegarra Zavaleta

Pg. 28

Manual de Excel Avanzado

Ejercicio N 4: Convertidor de Nmeros en Letras


Hay ocasiones en que se desea que en ciertos documentos una cantidad numrica
sea expresada en letras. Tal es el caso de los montos de una factura, o de una boleta
de ventas, o el monto de un cheque.
Para estos casos el siguiente ejercicio nos podra ser de utilidad:
1.- En un Libro nuevo escribir los siguientes datos tal como se muestra en la
imagen siguiente:

2.- Definir los siguientes nombres de rango:


B3

:N

B6

: LETRAS

C9:H18

: TABLA

3.- Luego escribir las siguientes frmulas en las celdas:


A9:

=ENTERO(VALOR(DERECHA(DECIMAL(ENTERO(N/1000),0,VERDADERO),6))/100000)

A10: =ENTERO(VALOR(DERECHA(DECIMAL(ENTERO(N/1000),0,VERDADERO),5))/10000)
A11: =ENTERO(VALOR(DERECHA(DECIMAL(ENTERO(N/1000),0,VERDADERO),4))/1000)
A12: =ENTERO(VALOR(DERECHA(DECIMAL(ENTERO(N/1000),0,VERDADERO),3))/100)
A13: =ENTERO(VALOR(DERECHA(DECIMAL(ENTERO(N/1000),0,VERDADERO),2))/10)
A14: =ENTERO(VALOR(DERECHA(DECIMAL(ENTERO(N/100),0,VERDADERO),2))/10)
A15: =ENTERO(VALOR(DERECHA(DECIMAL(ENTERO(N),0,VERDADERO),3))/100)

Preparado por Daniel Zegarra Zavaleta

Pg. 29

Manual de Excel Avanzado


A16: =ENTERO(VALOR(DERECHA(DECIMAL(ENTERO(N),0,VERDADERO),2))/10)
A17: =VALOR(DERECHA(DECIMAL(ENTERO(N),0,VERDADERO),1))
A18: =VALOR(DERECHA(DECIMAL(N,2,VERDADERO),2))
B9:

=SI(Y(A9=1,A10=0,A11=0),"CIEN",BUSCARV(A9,TABLA,6))

B10: =SI(A11=0,BUSCARV(A10,TABLA,4),SI(A10=1,"",BUSCARV(A10,TABLA,5)))
B11: =SI(A10=1,SI(A11=0,"",BUSCARV(A11,TABLA,3)),SI(A11=1,"UN",BUSCARV(A11,TABLA,2)))
B12: =SI(Y(A12=1,A13=0,A14=0),"CIEN",BUSCARV(A12,TABLA,6))
B13: =SI(A14=0,BUSCARV(A13,TABLA,4),SI(A13=1,"",BUSCARV(A13,TABLA,5)))
B14: =SI(A13=1,SI(A14=0,"",BUSCARV(A14,TABLA,3)),SI(A14=1,"UN",BUSCARV(A14,TABLA,2)))
B15: =SI(Y(A15=1,A16=0,A17=0),"CIEN",BUSCARV(A15,TABLA,6))
B16: =SI(A17=0,BUSCARV(A16,TABLA,4),SI(A16=1,"",BUSCARV(A16,TABLA,5)))
B17: =SI(A16=1,SI(A17=0,"",BUSCARV(A17,TABLA,3)),BUSCARV(A17,TABLA,2))
B18: =SI(A18<10,"0","")&DECIMAL(A18,0,VERDADERO)
B5:

=SI(N>=1000000000,DECIMAL(ENTERO(N/1000000000),0,VERDADERO)&",","")&
SI(N>=1000000,DERECHA(DECIMAL(ENTERO(N/1000000),0,VERDADERO),3)&"'","")&SI(N>
=1000,DERECHA(DECIMAL(ENTERO(N/1000),0,VERDADERO),3),"")&","&SI(N>0,DERECHA(
DECIMAL(N,2,VERDADERO),6),"")

B6:

=ESPACIOS(B9&" "&B10&B11&SI(SUMA(A9:A10)>0," MILLONES, ",SI(A11>1," MILLONES,


" ,SI(A11=1," MILLON, ","")))&B12&" "&B13&B14&SI(SUMA(A12:A14)>0," MIL,",SI(SUMA
(A9:A11)>0," ","")))&B15&" "&B16&B17&" Y "&SI(A18>0,B18,"00")&"/100 "&"NUEVOS
SOLES"

La hoja de clculo se deber ver as entonces:

Preparado por Daniel Zegarra Zavaleta

Pg. 30

Manual de Excel Avanzado


4.- Guarde este libro con el nombre Letras
Ahora, cada vez que escriba un nuevo nmero entero o con decimales en la celda
B2, inmediatamente en la celda B6 aparecer su equivalente en letras y redondeado
a dos decimales.
En la celda B5 aparecer el mismo nmero original redondeado a 2 decimales y con
la siguiente puntuacin: un punto para separar decimales, una coma para separar
millares y una comilla simple para separar los millones.
En otros ejercicios ms adelante veremos como se pueden utilizar estos resultados para
confeccionar Facturas, Boletas de Venta y Giro de Cheques.

La Funcin ESPACIOS
Elimina los espacios del texto, excepto el espacio normal que se deja entre palabras.
Use ESPACIOS en texto procedente de otras aplicaciones que pueda contener una
separacin irregular.
Sintaxis
ESPACIOS(Texto)
Texto

Es el texto del que desea quitar espacios innecesarios.

=ESPACIOS( Arriba
El resultado ser:

Per )

Arriba Per

Preparado por Daniel Zegarra Zavaleta

Pg. 31

Manual de Excel Avanzado

3. Validacin de Ingreso de datos


a. Que es la validacin
Es la forma en que Excel impide que ingresen los datos que escribimos en las celdas
(nmeros, textos, fechas y horas, etc.) verificando que estos de encuentren dentro de
lmites especificados previamente. De este modo se impide que se cometan errores
al momento de digitar la informacin.
Por ejemplo:
Impedir ingresar edades de personas que sean mayores a 100 aos.
Impedir que se ingresen votos en una mesa de sufragio mayores a 200 electores
Impedir que se escriban cdigos de artculos que no existen en la lista de precios

b. Cmo validar el ingreso de datos en un rango de celdas


1. Seleccione las celdas que desee restringir.
2. En el men Datos, haga clic en Validacin y elija la ficha Configuracin.
3. En el cuadro Permitir, haga clic en el tipo de datos.
Para especificar slo nmeros, haga clic en Nmero entero o Decimal.
Para especificar fechas u horas, haga clic en Fecha u Hora.

4. Haga clic en el operador que desee en el cuadro Datos y especifique el limite


inferior o superior para los datos, o bien ambos lmites, dependiendo del
operador que se seleccione. Pueden introducirse valores, referencias de celda o
frmulas para los lmites.

Preparado por Daniel Zegarra Zavaleta

Pg. 32

Manual de Excel Avanzado


Si desea permitir que la celda que se est restringiendo est en blanco o si
desea definir lmites que utilicen una referencia de celda, o una frmula que
dependa de celdas que inicialmente estn en blanco, compruebe que la casilla
de verificacin Omitir blancos est activada.
Para hacer obligatorias las restricciones definidas en las celdas en blanco,
tratndolas como si tuvieran ceros, desactive la casilla de verificacin Omitir
blancos.
5. Para que aparezcan mensajes que pidan entradas y que expliquen o impidan las
entradas incorrectas, especifique los tipos de mensajes que desee en las fichas
Mensaje entrante y Mensaje de error.
Cmo hacerlo?
Para omitir la presentacin de mensajes, desactive las casillas de verificacin
Mostrar mensaje al seleccionar la celda en la ficha Mensaje entrante y Mostrar
mensaje de error si se introducen datos no vlidos en la ficha Mensaje de error.
Ejemplo:
Se desea validar un cuadro para que en la columna Cantidad solo permita escribir
nmeros enteros y positivos. Entonces, cuando se trate de escribir en una celda una
cantidad como 7.3 que es un numero decimal, deber aparecer un mensaje de error
como el que se ve a la derecha, impidiendo ingresar este nmero.
1
2
3
4
5
6
7
8
9

A
B
Personal
Cantidad
Empleados
138
Vigilantes
11
Secretarias
24
Gerentes
8
Tcnicos
7.3
Supervisores
Vendedores

Para esto seleccionar el rango B2:B8, llamar al men Datos/Validacin, y elegir las
opciones como se muestran en la siguiente ventana de dilogo:

Preparado por Daniel Zegarra Zavaleta

Pg. 33

Manual de Excel Avanzado

Nota.-

Cuando se especifique el tipo de datos que se permiten, esto no afectar al formato. Para
dar formato a las celdas, como nmeros, fechas u horas, haga clic en el men
Formato/Celdas y, a continuacin, haga clic en la ficha Nmero. Seleccione el formato que
desee en el cuadro Categora y luego seleccione las opciones que desee.
Una frmula para un lmite puede evaluar los datos nicamente en la hoja de clculo en
que se hayan configurado las restricciones. Para utilizar en una frmula los datos de otra
hoja de clculo, o de otros libros, introduzca una referencia de celda para los datos
externos en una celda de la hoja de clculo activa o defina un nombre para los datos
externos en la hoja de clculo activa. La frmula puede hacer referencia a la celda o al
nombre en la misma hoja de clculo. Por ejemplo, si los datos que desea utilizar en una
frmula estn en la celda A6 de la primera hoja de clculo de un libro denominado
Presupuesto.xls, puede definir el nombre DatosVlidos en la hoja de clculo activa para
que sea =[Presupuesto.xls]Hoja1!$A$6 y, posteriormente, introducir una referencia
=DatosVlidos cuando se especifiquen los lmites para los datos.

c. Realizar una auditoria en un rango validado


Puede buscar entradas de celdas que no se ajusten a sus criterios y rodearlas
automticamente con un crculo haciendo clic en el botn Rodear con un crculo
datos no vlidos de la barra de herramientas Auditoria. Para hacer visibles los
botones de Auditoria usar el men: Herramientas/Auditoria/Mostrar barra de
auditoria.
Ejemplo1
1.- En una hoja de clculo escriba una lista de varios nombres de nios y sus
respectivas edades, tal como se muestra en la figura siguiente.

Preparado por Daniel Zegarra Zavaleta

Pg. 34

Manual de Excel Avanzado


Observe que las edades de Laura y Miguel fueron escritas errneamente.
En este cuadro se desea verificar que las edades ya ingresadas de los nios, no
sean mayores de 12 aos. Para esto, haga usted lo siguiente:

2.- Seleccionar el rango B2:B8 y con el men Datos/Validacin, elegir Permitir


Nmeros enteros entre un mnimo de 0, y un mximo de 12.

3.- Luego de validar, en la


barra de herramientas
Auditoria haga un clic
en el botn Rodear con
un crculo datos no

Preparado por Daniel Zegarra Zavaleta

Pg. 35

Manual de Excel Avanzado


vlidos, entonces
incorrectas.

aparecern marcadas con crculos rojos las cantidades

4.- Corrija entonces las edades de ambos nios.


A medida que corrija estas cantidades, observe que irn desapareciendo los
crculos rojos que encerraban a las edades equivocadas.
Ejemplo2
En otro caso; suponga que se tiene un registro de ventas con la relacin de las
facturas emitidas en un mes y se desea verificar que los nmeros de factura no
aparezcan repetidos, en cuyo caso habra que analizar el motivo del error y
corregirlo, ya sea cambiando el numero de la factura por el correcto, o eliminando el
registro de la factura por estar duplicada.
1.- En una hoja en blanco escriba los datos del Registro de Ventas que se muestra
en la imagen siguiente:
A
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

B
C
REGISTRO DE VENTAS

Fecha
02-Oct
02-Oct
03-Oct
03-Oct
03-Oct
03-Oct
03-Oct
04-Oct
04-Oct
04-Oct
05-Oct
06-Oct

N Factura
001-0124
001-0126
001-0126
001-0127
001-0128
001-0129
001-0129
001-0130
001-0131
001-0132
001-0132
001-0134

Monto
S/. 1,306.00
S/.
510.00
S/. 1,364.00
S/.
432.00
S/.
935.00
S/.
399.00
S/.
399.00
S/.
220.00
S/. 1,199.00
S/.
778.00
S/.
257.00
S/.
384.00

Esta factura debera ser la 001-0125

Esta factura se repite y deber eliminarse

La factura de abajo debera ser la 001-0133

2.- En este cuadro seleccionar


todas las celdas con los
nmeros de factura de la
columna B, y con el men
Datos/Validacin se valida
segn como se muestra en
la ventana de dialogo a
continuacin:
La frmula
=B4<>B5
verificar cuando dos
celdas consecutivas se
repitan.

Preparado por Daniel Zegarra Zavaleta

Pg. 36

Manual de Excel Avanzado

3.- Luego de validar, haga clic en el botn de auditoria Rodear con un crculo los
datos no vlidos.
A medida que se vayan
corrigiendo
los
errores
en
los
nmeros de las
facturas, al igual
que en el ejemplo
anterior,
los
crculos
rojos
tambin se irn
desapareciendo.

4. Lneas de Tendencia en los Grficos


a. Utilidad de las lneas de tendencia
Las lneas de tendencia se usan para mostrar grficamente las tendencias de los
datos y analizar los problemas de prediccin. Este anlisis tambin se denomina
anlisis de regresin. Mediante el uso del anlisis de regresin, puede representarse
una lnea de tendencia en un grfico ms all de los datos actuales para predecir los
valores futuros. Por ejemplo, en el siguiente grfico se utiliza una lnea de tendencia
simple que muestra la previsin para cuatro trimestres indicando una clara tendencia
de aumento en los ingresos.
Media mvil.- Tambin se puede crear una media mvil, que suaviza las
fluctuaciones en los datos y muestra la trama o tendencia con ms claridad.

b. Tipos de grfico que admiten lneas de tendencias


Pueden agregarse lneas de tendencia a las series de datos en los siguientes grficos:

de reas 2D no apiladas,

de barras,

de columnas,

de lneas,

de cotizaciones,

de tipo XY (Dispersin), y

Preparado por Daniel Zegarra Zavaleta

Pg. 37

Manual de Excel Avanzado

de burbujas.

No pueden agregarse lneas de tendencia a las series de datos en los grficos 3D,
radiales, circulares, de superficie o de anillos.
Si se cambia un grfico o una serie de datos de modo que ya no permita la lnea de
tendencia asociada (por ejemplo, si se cambia el tipo de grfico por un grfico de
reas 3D o si se cambia la vista de un informe de grfico dinmico o de un informe
de tabla dinmica asociado), se perdern las lneas de tendencia.

c. Agregar una lnea de tendencia a una serie de datos


1.- En el grfico, haga clic en la serie de datos en la que desea agregar la lnea de
tendencia o la media mvil.
2.- En el men Grfico, haga clic en la opcin Agregar lnea de tendencia.
3.- En la ficha Tipo, haga clic en el tipo de lnea de tendencia de regresin o en la
media mvil que desee.

Preparado por Daniel Zegarra Zavaleta

Pg. 38

Manual de Excel Avanzado


Si se selecciona Polinomial, introduzca en el cuadro Orden el valor potencial
ms alto de la variable independiente.
Si se selecciona Media mvil, introduzca en el cuadro Perodo el nmero de
perodos que va a utilizarse para calcular la media mvil.:
Ejemplo
Para analizar las proyecciones en un grfico de lneas; una vez creado el grafico
sealar con el puntero del mouse la lnea y llamar al men contextual con un clic
derecho del mouse, luego elegir la opcin Agregar lnea de tendencia.

En la ventana de dilogo elegir en Tipo de tendencia o regresin la opcin Lineal y


en la ficha Opciones marcar la casilla Presentar ecuacin en el grfico, luego
[Aceptar]. Se ver entonces en el grafico el siguiente resultado:

Preparado por Daniel Zegarra Zavaleta

Pg. 39

Manual de Excel Avanzado


(Si se reemplaza x en la ecuacin por el numero del mes se obtienen los
pronsticos de las ventas de esos meses.)
Si luego de tener la lnea de tendencia en el grafico, se ingresan los valores de venta
de los meses faltantes, la lnea de tendencia as como la ecuacin se ajustaran en el
grfico actualizndose a estos nuevos valores. Posteriormente se puede agregar
formato a los elementos del grafico, as como a la lnea de tendencia y a la ecuacin
en el grafico, tal como se ve en la figura.
Otras formas en las que se puede mostrar el mismo anlisis de ventas con la lnea de
tendencia se muestran a continuacin en los grficos siguientes:
En un grfico de reas:

En un grfico de Barras:

Tenga en cuenta lo siguiente:


Si se agrega una media mvil a un grfico XY (Dispersin), la media mvil se
basar en el orden de los valores X trazados en el grfico. Para obtener el resultado
deseado, puede ser necesario ordenar los valores X antes de agregar una media
mvil.
Preparado por Daniel Zegarra Zavaleta

Pg. 40

Manual de Excel Avanzado


Las lneas de tendencia no se mantienen en los informes de grfico dinmico si se
modifica la vista del grfico o de su informe de tabla dinmica asociado. Antes de
agregar lneas de tendencia u otros elementos de formato a un informe de grfico
dinmico, asegrese de que el diseo es satisfactorio.

5. Uso del botn Cmara Fotogrfica


a. Cmo habilitar el botn Cmara Fotogrfica
Para habilitar este botn, ingrese al men Ver/Barra de herramientas/Personalizar y
en la ficha Comandos, categora Herramientas ubique el botn Cmara y arrstrelo a
las barras de herramientas de la ventana de Excel o ubquelo en la barra de men.

b. Cmo utilizar el botn Cmara Fotogrfica


Este botn de herramientas podr capturar cualquier rango de celdas en el cual
existan datos, grficos o dibujos y convirtiendo dicho rango en una imagen podr
pegarlo en cualquier lugar del documento.
Cmo hacerlo?
1.- Seleccionar el rango de celdas conteniendo los datos u objetos que desea tomar
la foto.
2.- Hacer un clic en el botn Cmara.
3.- Ubicar el puntero en el lugar donde desee revelar la foto y haga nuevamente un
clic.
Al aparecer la foto esta se comporta como cualquier imagen, y entonces podr
cambiar su tamao y posicin a voluntad. O sea que una foto podr ubicarse sobre
un cuadro de Excel, o sobre un grfico o formando parte de un dibujo, incluso podr
agruparse con grficos o dibujos como cualquier imagen sin perder su calidad de
foto.
Nota.-

Si el contenido del rango al que se le ha tomado una foto es modificado, entonces la foto
tambin cambiar su imagen, actualizndose automticamente a esos cambios.

Ejemplo

Esta es
una foto

Preparado por Daniel Zegarra Zavaleta

Pg. 41

Manual de Excel Avanzado


En este ejemplo se ha tomado una foto a las celdas que contienen el tipo de cambio
del dlar y se la ha pegado encima del cuadro de existencias. La foto mantendr
actualizado el valor del dlar cada vez que este sea cambiado.

6. La Programacin en Excel
La palabra MACRO est muy ligada a las hojas de clculo desde hace muchos aos
atrs en la poca en que Lotus 123 reinaba en el mundo de las microcomputadoras de
escritorio. Una MACRO, no es sino una secuencia de ordenes escritas en los archivos
de las hojas de calculo para que se encarguen de realizar automticamente aquellas
acciones que son repetitivas en el manejo de nuestros datos. Esto es, si en un trabajo en
la hoja, es necesarios realizar una secuencia de tareas y mas tarde hay que repetir esta
secuencia otra vez, y luego otra vez; convirtindose esto en una rutina; entonces es
cuando se hace necesario recurrir a una MACRO. O sea, un programa que automatice
las acciones para no tener que hacerlas cada vez nosotros en cada ocasin.
En Lotus123 y en Quattro Pro que fueron dos hojas de calculo muy populares en DOS,
as como en las versiones iniciales de Excel, la programacin de las macro
instrucciones se escriban usando una serie de cdigos o palabras reservadas que eran
propias nicamente de stas aplicaciones. Pero, a partir de la versin 5.0 de Excel,
Microsoft recurre al lenguaje de Visual Basic para escribir sus programas en hojas de
mdulo que se anexan en forma transparente a los libros de Excel, recurriendo para ello
al Editor de Visual Basic para Aplicaciones

a. Uso de la grabadora de macros


A pesar que la programacin se realiza internamente utilizando el lenguaje de Visual
Basic, no es necesario que los usuarios de Excel sepan necesariamente el uso de este
lenguaje. Y esto es as, gracias a que existe la posibilidad de que se puedan grabar
las acciones que necesitamos utilizando para ello una grabadora de macros, la cual
almacena en memoria todas las acciones a grabar, e internamente convierte a estas
en un programa en Visual Basic.
Para crear una macro haciendo uso de la grabadora de macros se siguen los
siguientes pasos:
1.- Llamar al men Herramientas/
Macro/Grabar nueva macro
2.- Escribir un nombre para la
macro a grabar. Este nombre
no deber contener espacios en
blanco.
3.- Al aparecer el mensaje
Grabando en la barra de
estado,
realizar
cuidadosamente y en forma
secuencial, todas las acciones que se desean grabar.

Preparado por Daniel Zegarra Zavaleta

Pg. 42

Manual de Excel Avanzado


4.- Para finalizar la grabacin hacer un clic en el botn:

, o llamar al men

Herramientas/Macro/Finalizar grabacin, con lo cual deber desaparecer el


mensaje Grabando en la barra de estado.
Nota.-

Las macros al ser creadas pueden grabarse en el libro actual, como se puede apreciar en la
ventana de dialogo anterior en la opcin: Este libro , con lo cual la macro solo funcionar
en ese libro; o tambin se pudo elegir en la ventana de dilogo la opcin: Libro de macros
personal, para cuyo caso la macro podra funcionar tambin en todos los libros de Excel;
sin embargo, hay que tener cuidado con esto, pues si se graba en el libro de macros
personal esto har que dicha macro y todas las que se encuentren all sean cargadas en
memoria RAM cada vez que se ingrese a Excel, restando con ello memoria al computador.

Una vez creada, veamos a continuacin como se hace para que la macro funcione:

b. Ejecucin de una macro


Una macro puede ejecutarse con el men Herramientas/Macro/Macros, y en la
ventana de dialogo, seleccionar su nombre y luego elegir el botn Ejecutar.
Sin embargo, un modo mas controlado y fcil de ejecutar una macro es asignndola
a un elemento de imagen, como puede ser a un dibujo de Autoformas, a un botn de
herramientas personalizado o incluso hasta a un grfico.
Para asignar una macro a un botn de Autoformas realizar lo siguiente:

Clic derecho
---------------------------------------------Asignar macro...
-------------------------------

1.- Sealar con el mouse el borde del botn y hacer un clic derecho para llamar al
men contextual
2.- En el men elegir la opcin Asignar macro.
3.- Seleccionar el nombre de la macro de la lista y luego clic en Aceptar.
Ejemplo
Se va ha crear una macro que alinee verticalmente al centro, el contenido de una
celda:

Preparado por Daniel Zegarra Zavaleta

Pg. 43

Manual de Excel Avanzado


1.- Para esto primero escribir en una celda un dato.
1.- Llame al men Herramientas/Macro/Grabar nueva macro y escriba como
nombre de la macro: CentradoVertical
(sin dejar espacio en blanco entre
las 2 palabras), y luego Aceptar.
2.- Al
aparecer
el
mensaje
Grabando en la barra de
estado, realizar la accin de
centrado, esto es: llamar al
men Formato/Celdas y en la
ficha Alineacin elegir en la
opcin Alineacin del texto
Vertical, la alternativa Centrar,
luego elegir el botn Aceptar.
3.- Finalmente terminar la macro
con el botn Detener grabacin
o con el men Herramientas/
Macro/Detener grabacin.
4.- A continuacin dibuje en la hoja
un botn con Autoformas y
haciendo un clic derecho en l,
asgnele
la
macro
CentradoVertical.
5.- Ahora, al escribir en una celda
un dato podr centrar el dato
verticalmente haciendo un clic
en el botn de la macro.

c. Uso del Editor de Visual Basic


Para la macro del ejemplo anterior, el programa o subrutina en el lenguaje de Visual
Basic que se habra generado automticamente, sera el siguiente:
Sub CentradoVertical()
'
' Macro creada por Daniel Zegarra - UNI
'
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlCenter
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
Preparado por Daniel Zegarra Zavaleta

Pg. 44

Manual de Excel Avanzado


End Sub
Este programa se encontrara escrito en una hoja de Modulo insertada dentro del
libro actual de Excel, y para ver esta hoja de mdulo habra que ingresar a la
ventana del Editor de Visual Basic.

d. Para ingresar al Editor de Visual Basic


Se puede hacer de dos formas:
i.

Presionando la combinacin de teclas Alt+F11, o

ii.

Llamando al men Herramientas/Macro/Editor de Visual Basic.

Si al ingresar al Editor de Visual Basic la ventana estuviese totalmente vaca, llamar


al men Ver y elegir la opcin Explorador de Proyectos, o presionar Ctrl+R. Se
ver entonces la siguiente ventana en la pantalla:

En la ventana de Proyecto de la izquierda, haga doble clic en el elemento Modulo1


para abrir la ventana conteniendo el cdigo en Visual Basic de la macro.

e. Modificar una macro en el Editor de Visual Basic


El Editor se comporta en forma semejante a un procesador de texto, en el se pueden
escribir y modificar las instrucciones creadas por la grabadora de macros, as como
escribir a mano nuevas subrutinas en la misma hoja de Modulo1 o insertando
nuevas hojas al proyecto y escribiendo las macros en ellas.

Preparado por Daniel Zegarra Zavaleta

Pg. 45

Manual de Excel Avanzado


Por ejemplo, la macro anterior se la puede modificar borrando algunas lneas que
estn sobrando, con lo cual la macro sera ms eficiente:
Cuando se grab la macro y se ingres a la
ventana de dilogo Formato de celdas,
solo se eligi en ella la opcin Centrar
Verticalmente, pero el resto de las
opciones que se encontraban en la ventana
de dilogo, aunque no se llegaron a elegir
ni modificar en el momento de la
grabacin, si fueron escritas tambin
automticamente por la grabadora de
macros dentro del programa. Estas son las
lneas de la macro que se podran eliminar,
ya que no representan ninguna accin
efectiva dentro del programa. (observe las
lneas de instrucciones sombreadas en gris)
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlCenter
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
Si se eliminan estas lneas sombreadas, as como tambin las instrucciones With y
End With, entonces la macro quedara al final as:
Sub CentradoVertical()
' Macro creada por Daniel Zegarra Z.
Selection.VerticalAlignment = xlCenter
End Sub
Adicionalmente tambin podran eliminarse las lneas de comentarios, que son
aquellas lneas que en la pantalla aparecen escritas con letras de color verde y que se
encuentran precedidas por un apstrofe o comilla simple.
'
' Macro creada por Daniel Zegarra Z.
'
Estas lneas de comentaros no ejecutan dentro del programa ninguna accin, su
finalidad es solamente descriptiva y de utilidad nicamente para el usuario.

Preparado por Daniel Zegarra Zavaleta

Pg. 46

Manual de Excel Avanzado

7. Creacin de Macros con la grabadora de macros


a. Que es la grabadora de macros
Es un programa de Office que se encarga de almacenar todos los pasos y acciones
que se realizan en la pantalla, ya sea usando para ello el teclado o el mouse. Todo lo
que se realice ser grabado como un grupo de acciones que luego podrn repetirse
cuantas veces quiera y en el momento que se desee.
El uso de la grabadora de macros ya se ha explicado en el capitulo 6, as que en este
captulo vamos a ver la solucin de diferentes ejercicios en la hoja de calculo donde
se utilizar para ello la grabadora de macros.

b. Cmo modificar las instrucciones de las macros


Luego de creadas las macros con la grabadora de macros, estas pueden ser
modificadas para optimizar su funcionamiento o para agregar nuevas instrucciones
al programa. Pero esto ya no se puede hacer con la misma grabadora de macros,
sino que hay que recurrir al Editor de Visual Basic
Una manera rpida para modificar una macro es llamando al men
Herramientas/Macro/Macros y seleccionando el nombre de la macro deseada se
hace un clic en el botn de Modificar de la ventana de dialogo.
Una vez dentro del Editor de Visual Basic, se podrn modificar en la hoja de
mdulo las instrucciones de la macro. Aunque para ello sea necesario tener algunos
conocimientos de programacin, en este capitulo se le indicar a usted como lograr
modificar una macro sencilla, y ya luego en los siguientes captulos se ver con mas
detalle como se editan o escriben programas en el editor de Visual Basic.

8. Creacin de Plantillas en Excel


a. Que es una Plantilla
Es un archivo de Excel que contiene un libro que servir de modelo para crear otros
libros semejantes a l, pero con la ventaja de que el archivo Plantilla no correr el
riesgo de daarse durante la creacin de los dems libros.

b. Como se crea una Plantilla


Una vez que se ha diseado el libro que servir de plantilla, se llama al men
Archivo/Guardar como y se lo graba como del tipo Plantilla eligiendo esta
alternativa en la ultima casilla "Tipo de archivo:" de la parte inferior de la ventana
de dilogo Guardar como.
Por defecto las plantillas de guardarn en una carpeta especial llamada a su vez
Plantillas, pero si se desea las plantillas podrn guardarse en cualquier otra carpeta
del disco duro o en un disquette si se desea.

Preparado por Daniel Zegarra Zavaleta

Pg. 47

Manual de Excel Avanzado

Ejercicio N 5: Acciones repetitivas con macros


Hay ocasiones en que se necesita en la hoja de calculo repetir un grupo de acciones
muchas veces para diferentes rangos de celda. En estos casos es cuando las macros
nos sern de gran ayuda.
Suponga que se dispone de una lista diaria de clientes que asisten durante un mes a
realizar sus compras a una zapatera, y se desea ordenar esta lista en grupos
semanales, y cada semana ordenada descendentemente segn la cantidad de clientes
asistentes. Una vez ordenada cada semana en orden descendente poner en negrita y
de color rojo la cantidad maxima de personas que asistieron en cada semana.
Veamos como se soluciona este caso con ayuda de las macros:
1ra Parte: Crear la tabla de clientes que asisten a una zapatera.
1.- En una hoja en blanco escriba lo siguiente:

2.- Seleccionando la celda A5, llame al men Formato/Celdas y en la ficha


Nmero, categora personalizada, disee el siguiente formato en la casilla
Tipo:
ddd dd mmm
La fecha aparecer como: Mi 01 Jun
3.- Luego con el botn
derecho
del
mouse
arrastre el cuadro de
relleno de la celda A5
hasta llegar a la celda
A26, y cuando al soltar
el botn del mouse
aparezca
un
men
contextual, elegir la
opcin Rellenar das de
la semana, para copiar
Preparado por Daniel Zegarra Zavaleta

Pg. 48

Manual de Excel Avanzado


la serie de das laborales del mes de
Junio. (Solo aparecern 5 das
laborables en cada semana)
Luego en la columna B vamos a escribir
la cantidad de personas que asistieron
cada da a la zapatera. Para simular la
cantidad de personas vamos a hacer que
Excel escriba nmeros al azar entre 10 y
150:
4.- Escriba la siguiente formula en la
celda B5:
=10+ENTERO(ALEATORIO()*140)
5.- Ahora copie esta formula haciendo
doble clic en el cuadro de relleno.
Luego convierta el resultado de estas
formulas en valores:
6.- Seleccione el rango B5:B26 y elija
el men Edicin/Copiar, luego en el
men Edicin/Pegado especial,
marque la opcin Valores y Aceptar.
Finalmente [Esc].

2da Parte: Dividir las personas


descendentemente.

en

grupos

semanales

ordenados

Como se explic al principio, se desea una macro que haga lo siguiente:

7.-

Primero seleccione la celda A8.

Preparado por Daniel Zegarra Zavaleta

Pg. 49

Manual de Excel Avanzado


8.-

Llame al men Herramientas/Macro/Grabar nueva macro

9.-

Como nombre para la macro escriba la palabra Grupos y como letra de


mtodo abreviado escriba la
letra "k". Luego Aceptar

10.- Al aparecer el mensaje


"Grabando" en la barra de
estado, verifique que se
encuentre activado el botn
de herramientas Referencia
relativa:

11.- Luego realice los siguientes pasos:

Llamar al menu Insertar/Fila

Seleccionar la celda A7 y presionar las teclas Ctrl+* para seleccionar la


regin actual (A5:B7)

Llamar al men Datos/Ordenar y elegir ordenar por Columna B, en orden


Descendente y verifique que
No se considere tener fila de
encabezamiento. Luego haga
clic en el botn Aceptar.

Seleccionar la celda B5 y
ponerla en Negrita, y de color
de fuente Roja.

Seleccione la celda A14 y haga


un clic en el botn Detener
grabacin.

13.- Guarde el libro con el nombre de


archivo Asistencia.
Con esto ya tendremos ordenado el
primer
grupo
delos
das
correspondientes a la primera semana de Julio. Y como el puntero de celda se
encuentra en A14, solo bastar con presionar las teclas Ctrl+k para ejecutar la macro
y que esta se encargue de ordenar el grupo de la segunda semana, y as
sucesivamente hasta terminar con el resto del mes.

Preparado por Daniel Zegarra Zavaleta

Pg. 50

Manual de Excel Avanzado

Ejercicio N 6: Un control de Caja Chica


Vamos a crear una Plantilla en Excel para llevar el control diario del dinero de una
caja chica. A traves de la plantilla se generarn diariamente archivos que contendrn
los movimiento de dinero de un dia. Tanto la Plantilla que ser un archivo llamado
"Control de Caja", como los archivos diarios de movimiento de caja, sern
almacenados en una misma carpeta llamada "Caja".
1.- En una hoja en blanco disee el cuadro que se muestra a continuacin,
incluyendo los dos botones dibujados con Autoformas que aparecen en la parte
superior derecha (Nueva Linea y Cerrar Caja):

2.- Dle nombre a los siguientes rangos de celda:


E4 Inicial

E10 Final

A8 Linea

3.- Reduzca la altura de la fila 8 tal como se ve en la figura anterior


4.- En la celda E7 escriba la siguiente frmula:
=Inicial+SUMA(C$7:C7)-SUMA(D$7:D7)
5.- En la celda E10 escriba la siguiente frmula:
=Inicial+SUMA(C$7:C8)-SUMA(D$7:D8)
6.- De formato estilo moneda a las celdas E4 y E10
7.- De formato estilo millares a las 3 celdas del rango C7:E7
8.- Guarde ahora el libro con el nombre Control de caja dentro de una carpeta
llamada Caja.

Preparado por Daniel Zegarra Zavaleta

Pg. 51

Manual de Excel Avanzado


Ahora vamos a suponer que la caja tiene un saldo inicial de 1000 soles y que se ha
hecho un primer retiro de 350 de la caja por una orden de compra para artculos
de limpieza.
9.- Escriba 1000 en la celda E4, y en C7 escriba 350. Adems escriba el nombre
del responsable de la caja y la fecha.

A continuacin vamos a crear una macro que se encargue de insertar una nueva fila
en blanco con la formula respectiva en la ultima columna a fin de llevar la cuenta
del saldo de caja. Entonces debe hacer usted lo siguiente.
10.- Llame al men Herramientas/Macro/Grabar nueva macro
11.- Como nombre para la macro escriba la palabra Nueva y luego Aceptar
12.- Al aparecer el mensaje "Grabando" en la barra de estado, realice los
siguientes pasos:

Seleccione en nombre de rango Linea

Llame al menu Insertar/Fila

Seleccione la celda E7 y luego copie con el cuadro de relleno el contenido


de esa celda hacia la celda de abajo

Seleccione la celda A8 y haga un clic en el botn Detener grabacin.

13.- Luego asigne al botn Nueva Linea, la macro Nueva que acaba de crear.
De este modo, cada vez que haga un clic en el botn de esta macro, se insertar una
nueva lnea para registrar un nuevo movimiento de dinero en la caja.
14.- Guarde el libro presionando Ctrl+G.
Para poder ver las instrucciones de la macro que se ha creado hay que ingresar al
Editor de Visual Basic presionando las teclas Alt+F11 y en la hoja de Modulo1
podr verse el siguiente procedimiento Sub:

Preparado por Daniel Zegarra Zavaleta

Pg. 52

Manual de Excel Avanzado


Sub Nueva()
Application.Goto Reference:="Inicial"
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Application.Goto Reference:="Linea"
Selection.EntireRow.Insert
ActiveCell.Offset(-1, 4).Range("A1").Select
Selection.AutoFill Destination:=ActiveCell.Range("A1:A2"), Type:= _
xlFillDefault
ActiveCell.Range("A1:A2").Select
ActiveCell.Offset(1, -4).Range("A1").Select
End Sub

La instruccin:
es equivalente a:

Application.Goto Reference:="Inicial"
Range("Inicial").Select

Ahora vamos ha crear otra macro para que guarde automticamente el libro de
control de caja, dndole como nombre al archivo, la fecha escrita en la celda B4.
15.- Llame al men Herramientas/Macro/Grabar nueva macro
16.- Como nombre para la macro, escriba la palabra Guardar y luego Aceptar
17.- Al aparecer el mensaje "Grabando" en la barra de estado, realice los
sigyuientes pasos:

Llamar al men Archivo/Guardar como

Escribir como nombre: 1 de Julio

Verifique que se est guardando el libro en la carpeta llamada Caja y luego


haga clic en Guardar.

Haga un clic en el botn Detener grabacin.

18.- Luego asigne al botn Cerrar Caja, la macro Guardar que acaba de crear.
Con esto ya tenemos las dos macros que necesitamos en este libro, pero como
supondrn, cuando se ejecute la segunda macro, siempre va ha guardar el libro
actual con el nombre "1 de Julio", a menos que hagamos un cambio en la macro
para que el nombre que le de a los libros de caja sean los contenidos escritos en la
celda B4 en cada ocasin.
Para que esta macro haga lo que deseamos, hay que modificar internamente sus
instrucciones dentro del Editor de Visual Basic; y esto se logra haciendo lo
siguiente:
19.-

Llamar al men Herramientas/Macro/Macros

20.- Seleccionar en la ventana de dialogo el nombre de la macro Nueva y luego


hacer un clic en el botn Modificar que se encuentra a la derecha de la ventana.

Preparado por Daniel Zegarra Zavaleta

Pg. 53

Manual de Excel Avanzado


Esto abrir el Editor de Visual Basic y mostrar en una hoja de mdulo a la macro
Guardar semejante a la que se muestra a continuacin:
Sub Guardar()
'
' Macro grabada el 4/06/2004 por Daniel Zegarra
'
ActiveWorkbook.SaveAs Filename:= _
"C:\Mis documentos\Caja\1 de Julio.xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End Sub

Entonces hay que buscar la instruccin donde se le est poniendo nombre al archivo
y reemplazar el nombre: 1 de Julio, por la instruccin: " & Range("B4") & "
incluyendo las comillas y los operadores de concatenacin &, de la siguiente
manera:
Sub Guardar()
'
' Macro grabada el 4/06/2004 por Daniel Zegarra
'
ActiveWorkbook.SaveAs Filename:= _
"C:\Mis documentos\Caja\" & range("B4") & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End Sub
Nota.-

La ruta de la carpeta Caja quizs no sea la misma que observa en la instruccin anterior,
pues esto depende donde haya usted creado la carpeta Caja En todo caso, usted solo tiene
que modificar en la instruccin, la parte del nombre del archivo y no el nombre de la ruta
donde se ha creado la carpeta Caja. .

Seguidamente vamos a convertir el libro actual (cuyo nombre ahora es 1 de Julio)


en una plantilla de Excel con el fin que nos sirva de modelo para poder crear a partir
de l, diferentes archivos de control de caja para cada da que se desee.
Haga entonces lo siguiente:
21.-

Primero, borre el nombre del responsable de la caja de la celda B3 y


tambin la fecha de la celda B4.

22.-

Seleccione la fila 8 que habamos insertado con la macro Nueva Linea, y


elimnela con el men Edicin/Eliminar (Si habia insertado mas de una
lnea eliminelas tambin) teniendo ciudado de no eliminar la fila que tiene
la altura reducida y que le pusimos el nombre de rango Linea.

23.-

Borre tambin el saldo inicial de 1000 soles en E4 y el retiro de 350 en C7.

Preparado por Daniel Zegarra Zavaleta

Pg. 54

Manual de Excel Avanzado


24.-

Llame ahora al men Archivo/Guardar como, y escriba como nombre para


el archivo: Control de Caja. Luego debajo del nombre del archivo elija
como tipo de archivo Plantilla, y cercirese que se est guardando en la
carpeta Caja. Finalmente haga clic en el botn Guardar.

De este modo se habr creado un archivo de Plantilla de Excel.


25.-

Cierre ahora la ventana de Excel.

Si ahora abre la carpeta Caja ver que existen alli varios archivos, pero el que nos
interesa es el archivo de Plantilla de Excel llamado Control de caja y que tiene un
icono de forma de una libreta con varias hojas desglosables.

Preparado por Daniel Zegarra Zavaleta

Pg. 55

Manual de Excel Avanzado


26.-

Seale el icono de la plantilla y haga doble clic para abrirlo, y luego elija
con un clic la opcin Habilitar macro.

Al abrirse, como ocurre con las plantilla de excel, lo que se observa en la pantalla
es una copia de la plantilla que tendr el nombre Control de caja 1, como puede
verse asi en la barra de ttulo.
27.-

A continuacin llene los datos del responsable, la fecha 2 de Julio por


ejemplo, un saldo inicial y luego varios movimiento de caja, tanto de
ingresos como de retiros.

28.-

Finalmente haga clic en el boton Cerrar Caja para guardar su contenido.

Preparado por Daniel Zegarra Zavaleta

Pg. 56

Manual de Excel Avanzado

Ejercicio - Resultados de una Encuesta


Se desea averiguar cuales son las preferencias de las personas al elegir la marca de
televisores que van a comprar.
Para ello se ha diseado una encuesta con una muestra de varias personas que van a
ser encuestadas en diferentes distritos de la capital de Lima, y de la provincia
constitucional del Callao.
1ra Parte: Diseo de los cuadros de ingreso de datos y clculo de resultados
1.- En la Hoja1 de un nuevo libro disee el cuadro que se muestra a continuacin:

2.- En la Hoja2 del mismo libro anterior disee este otro cuadro de Resultados de
la Encuesta, y luego dle formato a las celdas tal y como se muestra en la
figura siguiente.
3.- Escriba estas formulas en la siguientes celdas:
En I5:

=SUMA(B5:H5)

Luego copie esta formula hacia abajo hasta la fila 33.


En B34:

=SUMA(B5:B33)

copie esta formula hacia la derecha hasta la columna H.


En B35:

=SI(I34=0,0,B34/$I34)

copie tambin esta formula hacia la derecha hasta la columna H.

Preparado por Daniel Zegarra Zavaleta

Pg. 57

Manual de Excel Avanzado


En B35:

=SUMA(I5:I33)

En B35:

=SUMA(B35:H35)

4.- Definir los siguientes nombres de rango en ambas hojas:


En la Hoja1:

B3 Lugar

B4:b10 Datos

En la Hoja2:

A5:A33 Distritos

A4:I35 Cuadro

Preparado por Daniel Zegarra Zavaleta

Pg. 58

Manual de Excel Avanzado


5.- En la Hoja1 escriba tambin el siguiente cuadro de porcentajes con estas
frmulas en sus celdas:
En B13:

=Hoja2!B$35

En B14:

=Hoja2!C$35

En B15:

=Hoja2!D$35

En B16:

=Hoja2!E$35

En B17:

=Hoja2!F$35

En B18:

=Hoja2!G$35

En B19:

=Hoja2!H$35

En B20:

=SUMA(B13:B19)

Como puede verse a travs de las anteriores formulas, este cuadro muestra los
totales acumulados de todos los distritos del cuadro de resultados de la Hoja2, que
como en el aun no hay datos, entonces los porcentajes en la Hoja1 son de 0%. Sin
embargo cuando se empiecen a ingresar los datos de las encuestas, entonces aqu
aparecern los respectivos porcentajes totales.
6.- En la Hoja2 escriba los siguientes datos para el distrito de Ancn:

Preparado por Daniel Zegarra Zavaleta

Pg. 59

Manual de Excel Avanzado

Regrese a la Hoja1 y en el cuadro de porcentajes aparecern automticamente los


resultados para cada una de las marcas de Televisor.
7.- En la Hoja1 seleccione el rango A12:B19 y cree un grfico de columnas como
el que se muestra a continuacin. O si usted lo desea disee cualquiera de los
tipos de grafico que ya conocemos pero que muestre los porcentajes de cada
uno de las marcas de televisor.

8.- Finalmente en la Hoja1


seleccione la celda B3,
llame
al
men
Datos/Validacin y en
la casilla Permitir elija
la opcin Lista, luego
en la casilla Origen
escriba =Distritos, y
luego Aceptar.
9.- Guarde este archivo en
disco con el nombre
Encuesta.

Preparado por Daniel Zegarra Zavaleta

Pg. 60

Manual de Excel Avanzado


2da Parte: Crear una macro para ingresar los datos de las encuestas
1.- En la celda B3 de la Hoja1 elija con la lista desplegable el nombre de uno de los
distritos. Por ejemplo el distrito de Brea.

2.- Seguidamente escriba para Brea las cantidades de personas que al ser
encuestadas dijeron que compraran televisores de cada una de las marcas.
A continuacin vamos a utilizar la grabadora de macros para los datos que se han
escrito para el distrito de Brea en la Hoja1 sean copiados en el cuadro que se
encuentra en la Hoja2.
Esto significa que la macro deber seleccionar el rango de celdas B4:b10 (llamado
Datos), y copiarlos en la Hoja2 y en las celdas que se encuentran a la derecha del
distrito llamado Brea.
3.-

Llame al men Herramientas/Macro/Grabar nueva macro

4.-

Escriba como nombre para la macro la palabra CopiarDatos y luego Aceptar

5.-

Al aparecer el mensaje "Grabando" en la barra de estado, realice los


sigyuientes pasos:

Seleccionar en rango llamado Datos

Hacer un clic en el botn de herramientas Copiar, o sino presione Ctrl+C.

Pasar a la Hoja2 y seleccionar la celda A1.

Preparado por Daniel Zegarra Zavaleta

Pg. 61

Manual de Excel Avanzado

Llamar al men Edicin/Buscar y en la casilla Buscar escriba la palabra


Brea, hacer un clic en el botn Buscar siguiente y luego clic en el botn
Cerrar.

Esto har que el puntero de celda se ubique sobre la celda que contiene el nombre
del distrito de Brea.

Verifique que se encuentre activo el botn de


herramientas Referencia relativa (sino hacer un
clic sobre l para activarlo)

Utilizando el teclado presione una vez la tecla de


desplazamiento a la derecha.

Llamar al men Edicin/Pegado especial, y en la ventana de dilogo elija


la opcin Valores y adems marque la casilla Transponer, luego Aceptar

Ahora nuevamente desactivar el


herramientas Referencia relativa.

Hacer un clic en la celda A1.

Regresar a la Hoja1 y presionar la tecla Esc

Verificar que se encuentre seleccionado el rango llamado Datos (celdas


A4:A10) y escribir la siguiente frmula:

botn

de

=BUSCARV(B$3,Cuadro,FILA(A4)-2,0)
y seguidamente presionar la combinacin de teclas Ctrl+Enter con la
finalidad de que la formula ingrese a la vez en todas las celdas del rango
Datos.

6.-

Seleccionar la celda B3.

Finalmente hacer un clic en el botn Detener grabacin.


Luego asigne la macro CopiarDatos que acaba de crear al grfico que se
encuentra en la Hoja1. Para esto hacer un clic derecho dentro del grfico y

Preparado por Daniel Zegarra Zavaleta

Pg. 62

Manual de Excel Avanzado


con la opcin Asignar macro elija la macro CopiarDatos y Aceptar. Luego
haga un clic en cualquier celda fuera del grfico para liberar su seleccin.
7.Nota.-

Presione las teclas Ctrl+G para guardar el archivo.


Si en la celda B3 se elije el nombre de un distrito, aparecern entonces los datos de la
encuesta de ese distrito que hayan sido copiados en la Hoja2, como ocurre con los distritos
de Ancn y Brea donde ya se copiaron sus datos, y para los dems distritos que aun no
tienen datos aparecern las celdas con los valores de cero. Esto se debe a las frmulas
BuscarV que se escribieron en el rango llamado Datos.
De ese modo se podr saber de que distritos ya se han ingresado los datos de su encuesta y
de cuales otros aun faltan ingresar.

Sin embargo, como la grabadora de macros graba exactamente todas las acciones
que uno realiza, entonces cada vez que se ejecute la macro, sta siempre copiar
los datos de las encuestas para el distrito de Brea e ignor los dems distritos
porque as se grabaron las instrucciones en la macro.
Para modificar esto hay que ingresar al editor de >Visual Basic y alli modificar la
instruccione correspondiente.
8.-

Llamar al men Herramientas/Macro/Macros

9.Seleccionar en la ventana de dialogo el nombre de la macro CopiarDatos y


luego hacer un clic en el botn Modificar que se encuentra a la derecha de la
ventana.
Esto abrir el Editor de Visual Basic y mostrar en una hoja de mdulo a la macro
CopiarDatos semejante a la que se muestra a continuacin:
Sub Macro1()
'
' Macro1 Macro
' Macro grabada el 18/09/2004 por Daniel Zegarra
'
Application.Goto Reference:="Datos"
Selection.Copy
Sheets("Hoja2").Select
Range("A1:I1").Select
Cells.Find(What:="Brea", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:= xlPart, SearchOrder:=xlByRows, SearchDirection:= _
xlNext, MatchCase:=False, SearchFormat:=False).Activate
ActiveCell.Offset(0, 1).Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=True
Range("A1:I1").Select
Sheets("Hoja1").Select
Application.CutCopyMode = False
Selection.FormulaR1C1 = "=VLOOKUP(R3C,Cuadro,ROW(RC[-1])-2,0)"
Range("B3").Select
End Sub

Preparado por Daniel Zegarra Zavaleta

Pg. 63

Manual de Excel Avanzado


10-- Busque la instruccin que contiene el nombre del distrito de "Brea" y
reemplcela por la instruccin Range("Lugar") tal y como se muestra a
continuacin:
Cells.Find(What:= Range("Lugar"), After:=ActiveCell, LookIn:=xlFormulas,
_

11.- Regrese a la Hoja1 de Excel y vuelva a guardar el archivo presionando las


teclas Ctrl+G.

Con esto ya estamos listos para ingresar los datos de la encuesta de cualquier otro
distrito.
Por ejemplo haga lo siguiente:
Elija en la celda B3 el nombre de algn otro distrito que an no tenga datos
(debern aparecer las celdas con los valores en cero). Luego escriba encima de
los ceros, los datos de la encuesta en ese distrito. A continuacin seale con el
mouse el grafico de la Hoja1 y haga un clic para ejecutar la macro, con lo cual
los datos escritos se copiarn en el cuadro de la Hoja2.
A medida que vaya ingresando as los datos de las encuestas de los dems distritos,
el grafico ira mostrando los resultados en porcentajes acumulados de todos estos
distritos.

La Funcin FILA
La sintaxis de la funcin es la siguiente:
=FILA(Referencia)
Preparado por Daniel Zegarra Zavaleta

Pg. 64

Manual de Excel Avanzado


Donde:
Referencia

Es una coordenada de celda o un nombre de rango.

Esta funcin le dice a Excel a partir de que nmero de fila se encuentra ubicada la
referencia.

La Funcin FILAS
La sintaxis de la funcin es la siguiente:
=FILAS(Referencia)
Donde:
Referencia

Es una coordenada de celda o un nombre de rango.

Esta funcin da como respuesta la cantidad de filas que contiene la referencia.


Ejemplos:
=FILA(A6)

Rpta: 6

=FILA(B4)

Rpta: 4

=FILAS(A4:A7)

Rpta: 4

Si el rango A3:B7 tiene el nombre CUADRO:


=FILA(CUADRO)

Rpta: 3

=FILAS(CUADRO)

Rpta: 5

Nota.-

En forma anloga a las dos funciones anteriores tambin se pueden usar las funciones
COLUMNA y COLUMNAS respectivamente.

Ejemplos:
=COLUMNA(A6)

Rpta: 1

=COLUMNA(A3:B7)

Rpta: 1

=COLUMNAS(CUADRO)

Rpta: 2

9. Edicin de Macros en Visual Basic para Aplicaciones


a. Que es Visual Basic para Aplicaciones
Es un lenguaje de programacin por medio del cual se pueden escribir instrucciones
secuenciales y detalladas dentro de uno o varios programas, para lograr as
automatizar el uso de las aplicaciones del paquete Office. A este grupo de
instrucciones escritas para una aplicacin se la conoce como una Macro (Macro
instruccin o grupo de varias instrucciones)

Preparado por Daniel Zegarra Zavaleta

Pg. 65

Manual de Excel Avanzado

b. El Editor de Visual Basic


La escritura de estas instrucciones se realiza con ayuda de un Editor de Visual
Basic, que es una ventana de aplicacin adicional a Excel o a cualquier otra
aplicacin de Office, pero la macro que se crea a travs del Editor ser guardada
conjuntamente con el libro de Excel para el cual se han escrito estas instrucciones.
Para ingresar al Editor de Visual Basic:
Estando en cualquier libro de Excel, llamar al men Herramientas/Macro/Editor
de Visual Basic, o sino presionar las teclas Alt+F11.

Si al ingresar al Editor de Visual Basic, no estuvieran visibles el explorador de


proyectos o la ventana de mdulo, entonces proceda del siguiente modo:
1.- Llamar al men Ver/Explorador de proyectos.
2.- Llamar al men Insertar/Mdulo.
El Explorador de proyectos nos muestra en un rbol de carpetas los diferentes
archivos o libros abiertos en Excel, y dentro de cada libro se pueden apreciar los
objetos que existen en su interior: hojas de clculo, hojas de mdulos, formularios,
etc.
La ventana de Mdulo es donde se escribirn las instrucciones que nos permitirn
crear las Macros en Visual Basic.
Preparado por Daniel Zegarra Zavaleta

Pg. 66

Manual de Excel Avanzado

10. Las instrucciones de Visual Basic


Aclaracin previa:
Si para usted es la primera vez que va ha escribir un programa para computadora,
entonces esto al principio le parecer que es algo complicado, y lo que al principio
vemos escrito dentro de un programa es como leer chino, pero no se desanime; lo
que ocurre es que a pesar de que el computador es una mquina inteligente, sin
embargo, sta no razona como lo hara cualquier persona; as que cuando hay que
darle ordenes al computador hay que establecer ciertas reglas estrictas con el fin de
que entienda claramente que es lo que deseamos que haga.
Por ejemplo
Si en su casa se ha puesto la tetera para hervir agua en una cocina a gas, y comienza
a hervir el agua; entonces usted podra ordenarle a su hijo menor que por favor
apague la cocina.
Si su hijo aun es pequeo, cmo cree que podra apagar la cocina?:
- Comienza a soplar la hornilla hasta que se apaga?
- Hecha agua a la hornilla para apagarla?
- Gira la perilla de encendido para apagar la hornilla?
Usted tendra que ser mas preciso en darle las instrucciones al pequeo para que
pueda apagar la cocina como es debido sin que ocurra ninguna desgracia, pues l
aun no se percata exactamente del peligro que esta accin conlleva.
Pues, el computador tampoco se da cuenta de lo que en realidad esta haciendo, el
solo cumple las ordenes que le damos, de all que estas ordenes deben ser muy
precisas, sin ambigedades para que no lleven a errneas suposiciones por parte del
computador. Es as que primeramente cada orden dada al computador tiene una
forma exacta de escribirse; a esto se conoce como la sintaxis de las instrucciones.
Por ejemplo si en vez de ordenar "apaga la cocina", se le dijese al nio "paga la
cocina". El no va a poder obedecernos porque no conoce como se realiza esa accin
ya que aun no maneja dinero y no sabe como se paga un artefacto. Esto es un error
de sintaxis, las palabras estn mal escritas.
Pero adems las instrucciones deben seguir una cierta lgica adecuada porque si no
tambin se estara incurriendo en un error de lgica al escribir el programa.
Por ejemplo un error de lgica podra ser que se le diga al nio: "apaga la cocina y
luego srveme un caf". La orden aparentemente parece correcta. Pero el nio
podra ir y apagar la luz de la cocina y luego intentar a oscuras servirme un caf.
Esto es un error de lgica. Entonces debimos haber dicho: "apaga la hornilla
derecha de la cocina y luego srveme un caf". Algo as es como funciona la
Preparado por Daniel Zegarra Zavaleta

Pg. 67

Manual de Excel Avanzado


lgica de un computador, y teniendo en cuenta todo esto es que se escriben los
programas de computadora.
Observe que la lgica empleada para dar un grupo de ordenes a un nio cualquiera
en algn lugar de nuestro planeta es independiente de si estas ordenes las damos en
cualquier idioma, ya sea en espaol, o ingls, o ruso o japons; dependiendo del
lugar donde nos encontremos.
La lgica de las computadoras es siempre la misma, el lenguaje que usamos para dar
las instrucciones es la que puede ser diferente; en nuestro caso usaremos el lenguaje
de Visual Basic para Aplicaciones de Office.

Una instruccin de Visual Basic puede incluir palabras clave, operadores,


variables, constantes y expresiones. Todas las instrucciones pertenecen a una de las
tres categoras siguientes:
1. Instrucciones de declaracin, que dan nombre a una variable, constante o
procedimiento y pueden tambin especificar su tipo de datos.
2. Instrucciones de asignacin, que asignan un valor o expresin a una variable o
constante.
3. Instrucciones ejecutables, que inician acciones. Estas instrucciones pueden
ejecutar un mtodo o funcin y pueden saltar o evitar bloques de cdigo. Las
instrucciones ejecutables a menudo contienen operadores condicionales o
matemticos.

a. Continuar instrucciones en mltiples lneas


Una instruccin cabe normalmente en una lnea, pero puede continuarse en la
siguiente lnea utilizando un carcter de continuacin de lnea que es un carcter de
subrayado ( _ ) precedido siempre por un espacio en blanco. En el siguiente
ejemplo, la instruccin ejecutable MsgBox se extiende dos tres lneas:
Sub Mensaje()
Dim Cliente As String
Cliente = "Jos Samuel"
MsgBox Prompt:="Hola " & Cliente, Title:="Cuadro de saludo", _
Buttons:=vbExclamation
End Sub

b. Aadir comentarios
Los comentarios pueden explicar un procedimiento o una instruccin en particular a
cualquier persona que tenga que leer el cdigo. Visual Basic ignora los comentarios
cuando ejecuta los procedimientos. Las lneas de comentario comienzan por un
apstrofe (') o con la palabra clave Rem seguida por un espacio y puede colocarse
en cualquier lugar del procedimiento. Para aadir un comentario a la misma lnea
que ocupa una instruccin, debe insertarse un apstrofe despus de esta, seguido por
Preparado por Daniel Zegarra Zavaleta

Pg. 68

Manual de Excel Avanzado


el comentario. Los comentarios aparecen en pantalla en color verde, color
predefinido.

c. Comprobar errores de sintaxis


Si se presiona la tecla Enter despus de escribir una lnea de cdigo y esta lnea
aparece en pantalla en color rojo (puede que aparezca tambin un mensaje de error),
esto indica que se ha incurrido en un error de sintaxis, o sea la instruccin esta mal
escrita y se debe averiguar cul es el problema en la instruccin y corregirlo.

11. Escribir instrucciones de declaracin


Las instrucciones de declaracin se usan para dar nombre y definir procedimientos,
variables, matrices y constantes. Cuando se declara un procedimiento, variable o
constante, tambin se define su alcance que depende del lugar en que se coloque la
declaracin y de las palabras clave que se usan para ello.
El siguiente ejemplo contiene tres declaraciones.
Sub DarFormato()
Const Limite As Integer = 33
Dim miCelda As Range
End Sub

La instruccin Sub, la instruccin Const y la instruccin Dim, son instrucciones de


declaracin.
La instruccin Sub (con la correspondiente instruccin End Sub) declara un
procedimiento llamado DarFormato. Todas las instrucciones que aparecen entre las
instrucciones Sub y End Sub se ejecutan cuando el procedimiento DarFormato se
ejecuta o se llama.
La instruccin Const declara la constante Limite, especificando el tipo de datos
Integer y un valor de 33.
La instruccin Dim declara la variable miCelda. El tipo de datos es objeto, en este
caso, un objeto Range de Microsoft Excel. Se puede declarar una variable que sea
cualquiera de los objetos que estn accesibles a la aplicacin que se est usando. Las
instrucciones Dim son un tipo de instruccin que se utiliza para declarar variables.
Otras palabras clave utilizadas en las declaraciones son ReDim, Static, Public,
Private y Const.

12. Escribir instrucciones de asignacin


Las instrucciones de asignacin asignan un valor o expresin a una variable o
constante. Las instrucciones de asignacin incluyen siempre un signo igual (=). El
siguiente ejemplo asigna el valor que devuelve la funcin InputBox a la variable
Nombre.

Preparado por Daniel Zegarra Zavaleta

Pg. 69

Manual de Excel Avanzado


Sub Pregunta()
Dim Nombre As String
Nombre = InputBox("Cmo se llama?")
MsgBox "Su nombre es " & Nombre
End Sub

La instruccin Set se utiliza para asignar un objeto a una variable que ha sido
declarada como objeto. La palabra clave Set es necesaria. En el siguiente ejemplo,
la instruccin Set asigna la celda A1 de la Hoja3 a la variable de objeto Celda.
Luego le asigna la propiedad Bold e Italia al objeto Font u finalmente asigna a
Celda el valor 2005.
Sub DarFormato()
Dim Celda As Range
Set Celda = Worksheets("Hoja3").Range("A1")
With Celda.Font
.Bold = True
.Italic = True
End With
Celda.= 2005
End Sub

Las instrucciones que establecen valores propiedad son tambin instrucciones de


asignacin. El siguiente ejemplo asigna la propiedad Bold (negrita) del objeto Font
(fuente) para la celda activa: Como resultado el contenido de la celda activa
aparecer en negrita.
ActiveCell.Font.Bold = True

13. Trabajo con celdas en Visual Basic


Es una tarea comn en Visual Basic especificar una celda o un rango de celdas, y a
continuacin realizar alguna accin en ellas, como ingresar un dato, escribir una
frmula o cambiar el formato. Normalmente esto se realiza en una instruccin que
primero identifica el rango y luego adems cambia una propiedad o aplica un
mtodo sobre ese rango.
Un objeto Range en Visual Basic puede ser una celda individual o un rango de
celdas. Los siguientes temas muestran las maneras ms usuales de identificar y
trabajar con objetos Range.

a. Referencia a celdas y rangos utilizando la notacin A1


La siguiente tabla muestra algunas referencias de estilo A1 utilizando el mtodo
Range.

Preparado por Daniel Zegarra Zavaleta

Pg. 70

Manual de Excel Avanzado


Referencia

Significado

Range("A1")

Celda A1

Range("A1:B4")

Rango A1:B4

Range("A1:B4,E3:F9")

Mltiple reas separadas

Range("A:A")

Toda la columna A

Range("3:3")

Toda la fila 3

Range("A:C")

Columnas de la A a la C

Range("1:5")

Filas de la 1 a la 5

Range("1:1,3:3,8:8")

Mltiples filas 1, 3 y 8

Range("A:A,C:C,F:F")

Mltiples columnas A, C y F

Range("A1:B4","E3:F9")

Equivalente a todo el rango A1:F9

Utilice la propiedad Rows o Columns para trabajar con filas o columnas enteras.
Estas propiedades devuelven un objeto Range que representa un rango de celdas.
La siguiente tabla muestra algunas referencias de fila y columna, utilizando las
propiedades Rows y Columns.
Referencia

Significado

Rows(1)

Fila uno

Rows

Todas las filas de la hoja de clculo

Columns(1)

Columna uno

Columns("A")

Columna uno

Columns

Todas las columnas de la hoja de clculo

b. Para seleccionar celdas y rangos de celdas


Uso de los mtodos:
Range
Select
Activate
Uso de las propiedades:
Selection
ActiveCell
CurrentRegion
Offset

Preparado por Daniel Zegarra Zavaleta

Pg. 71

Manual de Excel Avanzado


Columns, Rows
ClearContents
Uso de la funcin:
Count

Ejercicio N 7: Procedimientos Sub para seleccionar rangos


Vamos a suponer que usted no sabe nada de programacin, asi que vamos a crear
una serie de macros simples para que realicen varias de las acciones a las cuales
estamos acostumbrados a realizar nosotros mismos en la hoja de calculo con el
mouse y el teclado.

1.- En una hoja en blanco escriba los cuadros que se muestran en la imagen
anterior y luego guarde el archivo con el nombre Muebles.
2.- Dle nombre a los siguientes rangos de celda:
A3:C7 Tabla

E3:F7 Precios

B10:D12 Resumen

3.- Ingrese al Editor de Visual Basic con las teclas Alt+F11 y luego inserte una
nueva hoja de mdulo (Men Insertar/Mdulo).
4.- En la hoja de mdulo escriba el siguiente procedimiento Sub:

Preparado por Daniel Zegarra Zavaleta

Pg. 72

Manual de Excel Avanzado

5.- Regrese a la hoja de clculo de Excel y seleccione la celda A1.


6.- Para ejecutar ahora la macro presione las teclas Alt+F8, luego en la ventana
que aparece elegir la macro Prueba con un clic y a continuacin Clic en
Ejecutar.

La macro se ejecutar y mover el puntero a la celda B4:


A continuacin presentamos una serie de ejemplos de procedimientos Sub para
realizar diversos tipos de seleccin de celdas. Para poder observar cual es el efecto
de cada uno de estos ejemplos, escrbalos en la hoja de modulo anterior debajo del
procedimiento Prueba. A medida que los escriba puede nombrar cada procedimiento
como Prueba2, Prueba3, etc. A medida que los vaya escribiendo regrese a la hoja de
Excel y pruebe ejecutarlos con las teclas Alt+F8 y eligiendo la macro que quiera
ejecutar respectivamente. Compare luego sus resultados con las imgenes que aqu
se muestran en cada caso.

Preparado por Daniel Zegarra Zavaleta

Pg. 73

Manual de Excel Avanzado

Ejemplos de procedimientos Sub para seleccionar celdas:


1) Seleccionar la celda B4
Range("B4").Select

2) Seleccionar el rango de celdas A3:C7


Range("A3:C7").Select

3) Seleccionar el rango de celdas A3:C7 y luego convertir a la celda B5 en activa


sin perder la seleccin del rango anterior
Range("A3:C7").Select
Range("B5").Activate

Nota.-

Para seleccionar un rango de celdas, use el mtodo Select. Para activar slo una celda,
puede utilizar el mtodo Activate. Si se activa una celda que se encuentra dentro del rango
seleccionado entonces no se pierde la seleccin, pero si la celda que se activa esta fuera del
rango seleccionado la seleccin se perder y solo quedar seleccionada la celda activa.

4) Seleccionar el rango de celdas cuyo nombre es Tabla


Range("Tabla").Select

5) Seleccionar el rango Tabla y luego seleccionar la primera celda de ese rango.

Preparado por Daniel Zegarra Zavaleta

Pg. 74

Manual de Excel Avanzado


Range("Tabla").Select
ActiveCell.Select

6) Seleccionar los rangos Tabla, Precios y Resumen (rangos separados)


Range("Tabla, Precios, Resumen").Select

7) Seleccionar los rangos desde Tabla hasta Resumen (el resultado es un rango
mayor que incluye Tabla y Resumen, y todas las celdas que se encuentran entre
estos dos rangos separados)
Range("Tabla", "Resumen").Select

8) Seleccionar el rango de celdas de la regin actual, (Regin actual es el rango de


las celdas ocupadas que rodean la celda activa.)
ActiveCell.CurrentRegion.Select

9) Seleccionar el rango A3:C7 y luego "mover la seleccin" 2 filas hacia abajo y


una columna hacia la derecha
Range("A3:C7").Select
Selection.Offset(2,1).Select

Preparado por Daniel Zegarra Zavaleta

Pg. 75

Manual de Excel Avanzado

10) Seleccionar el rango A3:C7 y luego "activar la celda" 2 filas hacia abajo y una
columna hacia la derecha dentro del rango seleccionado
Range("A3:C7").Select
Selection.Offset(2,1).Activate

11) Seleccionar el rango A3:C7 y luego "mover el puntero de celda" 2 filas hacia
abajo y una columna hacia la derecha dentro del rango seleccionado
Range("A3:C7").Select
ActiveCell.Offset(2,1).Select

Preparado por Daniel Zegarra Zavaleta

Pg. 76

Manual de Excel Avanzado


12) Seleccionar la regin actual y luego seleccionar la celda en blanco situada al
final de la primera columna de la regin actual
ActiveCell.CurrentRegion.Select
ActiveCell.Offset(Selection.Rows.Count, 0).Select

13) Seleccionar la regin actual y luego seleccionar la ltima celda ocupada al final
de la primera columna de la regin actual
ActiveCell.CurrentRegion.Select
ActiveCell.Offset(Selection.Rows.Count - 1, 0).Select

14) Suponiendo una tabla con una fila de encabezado, seleccionar la tabla sin
seleccionar la fila de encabezados. Debe haber una celda activada en algn lugar
de la tabla antes de ejecutar el ejemplo.
ActiveCell.CurrentRegion.Select
ActiveCell.Offset(1, 0).Resize(Selection.Rows.Count - 1, _
Selection.Columns.Count).Select

15) Seleccionar la celda B3 y luego seleccionar la ultima celda ocupada al final de


esa columna
Preparado por Daniel Zegarra Zavaleta

Pg. 77

Manual de Excel Avanzado


Range("B3").select
ActiveCell.End(xlDown).Select

La Propiedad End
Desplaza el puntero a la celda situada al final de la regin que contiene el rango fuente.
Equivale a presionar las teclas FIN+FLECHA ARRIBA, FIN+FLECHA ABAJO,
FIN+FLECHA IZQUIERDA o FIN+FLECHA DERECHA.
Sintaxis:
Expresin.End(Direccin)
Donde:
Expresin.-

Objeto a partir del cual se realizar el desplazamiento, (por ejemplo:


ActiveCell, Range("A3"), Selection).

Direccin puede ser una de las siguientes constantes:


xlUp
xlDown
xlToRight
xlToLeft

hacia arriba
hacia abajo
hacia la derecha
hacia la izquierda

Ejemplos del uso de la propiedad End:


1) Selecciona la primera celda superior de la columna E en la regin que contiene
la celda E4
Range("E4").End(xlUp).Select

2) Selecciona la ltima celda de la derecha de la fila 4 en la regin que contiene la


celda E4
Range("E4").End(xlToRight).Select

3) Ampla la seleccin desde la celda E4 hasta la ltima celda ocupada hacia la


derecha

Preparado por Daniel Zegarra Zavaleta

Pg. 78

Manual de Excel Avanzado


Range("E4", Range("E4").End(xlToRight)).Select

Ejercicio N 8: Nombrar rangos, Seleccionar columnas y Borrar


1.- En una hoja en blanco escriba el siguiente cuadro y luego guarde el archivo con
el nombre Destinos.
2.- Ingrese al Editor de Visual Basic con las teclas Alt+F11 y luego de insertar una
nueva hoja de modulo (Men Insertar/Mdulo) al igual que en el ejercicio
anterior, escriba los siguientes procedimientos Sub:
Ejemplos de procedimientos Sub:
1) Definir con el nombre abc al rango seleccionado. (Se supone que previamente
se ha seleccionado un rango como B3:E7)
ActiveWorkbook.Names.Add Name:="abc", RefersTo:=Selection

2) Definir con el nombre abc a la regin actual. (previamente ubicar el punteso de


celda en cualquier celda ocupada)
ActiveWorkbook.Names.Add Name:="abc", RefersTo:=ActiveCell.CurrentRegion

Preparado por Daniel Zegarra Zavaleta

Pg. 79

Manual de Excel Avanzado

Nota.-

Para los dos ejemplos anteriores que nombran un rango como abc, en el primer caso hay
que seleccionar el rango y despus ejecutar la macro. En el segundo caso basta con que el
puntero de celda se encuentre dentro del cuadro y al ejecutar la macro, a todo el cuadro
(Regin actual) se le dar el nombre de rango.

3) Seleccionar la segunda columna del rango llamado abc


Range("abc").Columns(2).Select

4) Seleccionar la segunda columna de la regin actual. (Ubicar previamente el


puntero en cualquier celda dentro del cuadro)
ActiveCell.CurrentRegion.Columns(2).Select

Nota.-

Este ejemplo es semejante al anterior, con la diferencia que funciona para cualquier cuadro
sin importar su tamao, basta con seleccionar una celda del cuadro y cuando se ejecute la
macro se seleccionar solo la 2da columna del cuadro. Observe que la 2da columna del
cuadro no es la columna B, sino en este caso la columna C.

5) Seleccionar toda la columna de la celda activa


ActiveCell.EntireColumn.Select

6) Seleccionar todas las columnas de la seleccion


Selection.EntireColumn.Select

7) Seleccionar todas las columnas de la region actual


ActiveCell.CurrentRegion.EntireColumn.Select

8) Seleccionar las 3 columnas a partir de la celda activa. Suponer que la celda


activa es la B5.

Preparado por Daniel Zegarra Zavaleta

Pg. 80

Manual de Excel Avanzado


ActiveCell.Columns("A:C").EntireColumn.Select

Nota.-

En este ejemplo la referencia "A:C" es considerada como una referencia relativa, o sea que
no indica que se seleccionen las 3 primeras columnas A,B y C de la hoja de calculo, sino
que se seleccionen las 3 primeras columnas de la regin actual.

9) Seleccionar la 3ra columna a partir de la celda activa. Suponer que la celda


activa es la celda B5.
ActiveCell.Columns(3).EntireColumn.Select
Nota.-

En este ejemplo siendo B5 la celda activa, al ejecutarse la macro se seleccionar la tercera


columna a partir de la columna B.

10) Seleccionar todas las columnas del rango abc


Range("abc").Select
Selection.EntireColumn.Select

Preparado por Daniel Zegarra Zavaleta

Pg. 81

Manual de Excel Avanzado


11) Seleccionar las columnas del rango abc y del rango xyz. (rangos separados)
Range("abc, xyz").Select
Selection.EntireColumn.Select

12) Seleccionar dentro de la regin actual la columna de la celda activa. Suponer


que la celda activa es la C4.
ActiveCell.CurrentRegion.Columns(ActiveCell.Column ActiveCell _
.CurrentRegion.Column + 1).Select

13) Borrar el contenido del rango C5:D7


Range("C5:D7").ClearContents

c. Para ingresar datos en celdas y rangos de celdas


Uso de la Propiedad:
Formula
Uso de la funcin:
Date
Cuando se trabaja en la hoja de clculo de Microsoft Excel, usualmente hay que
seleccionar primero una o varias celdas y a continuacin realizar una accin sobre
estos rangos, como escribir valores o darles formato. Pero en cambio, en Visual
Basic normalmente no es necesario "seleccionar" las celdas antes de modificarlas,
bastara nicamente con referirnos a ellas y entonces Visual Basic podr modificar
sus propiedades.

Preparado por Daniel Zegarra Zavaleta

Pg. 82

Manual de Excel Avanzado


Nota.-

Si desea escribir en una celda utilizando Visual Basic, no es necesario seleccionar la celda,
slo necesita devolver el objeto Range y a continuacin asignarle el dato que desee, como
se muestra en los siguientes ejemplos:

Ejercicio N 9: Asignar valores a celdas y rangos


1.- Abra un nuevo libro en blanco, y ubique el puntero en cualquier celda de la
Hoja1.
Ejemplos de procedimientos Sub para asignar valores:
1) Escribir el titulo CUENTAS en la celda A1, luego los ttulos SERVICIOS y
PAGOS en las celdas A3 y B3, y finalmente el nmero 120 en la celda B4.
Range("A1") = "CUENTAS"
Range("A3") = "SERVICIOS"
Range("B3") = "PAGOS"
Range("B4") = 120

Nota.- Cuando se asigna un valor a un objeto la asignacin va de derecha a izquierda, es decir el


valor escrito a la derecha del signo igual es asignado al objeto situado a la izquierda.

2) Las siguientes instrucciones realizan de manera equivalente la misma tarea


anterior. Observe el uso de la propiedad offset para desplazar la referencia de
celda y escribir datos en ella:
Range("A1").select
ActiveCell = "CUENTAS"
ActiveCell.offset(2,0) = "SERVICIOS"
ActiveCell.offset(2,1) = "PAGOS"
ActiveCell.offset(3,1) = 120

Preparado por Daniel Zegarra Zavaleta

Pg. 83

Manual de Excel Avanzado


3) Escribir el nmero 120 en todas las celdas del rango llamado Pagos. (El rango
llamado Pagos es B4:B9)
4) Escribir el contenido de la celda B4 multiplicado por 2, en la celda B9
5) Escribir la funcin SUMA del rango Pagos, en la celda B10, y luego poner en
negrita la celda B10.
6) Escribir la fecha actual en la celda C3
Range("Pagos") = 120
Range("B9") = Range("B4")*2
Range("B10").Formula = "=SUM(Pagos)"
Range("B10").Font.Bold = True
Range("C3") = Date

Nota.-

Cuando se escriben formulas en las instrucciones de Visual Basic, estas formulas debern
estar encerradas entre comillas dobles, los argumentos de las funciones siempre se
escribirn separados con comas y adems los nombres de las funciones debern estar
escritas tal y como se escribiran en la versin en ingls de Excel, es decir los nombres de
funcin no se escriben como las conocemos en espaol, sino en su equivalente segn la
versin original. Por ejemplo:
SUMA

como

SUM

PROMEDIO

como

AVG

CONTAR

como

COUNT

ENTERO

como

INT

BUSCARV

como

VLOOKUP

SI

como

IF

REDONDEAR

como

ROUND

ESBLANCO

como

ISBLANK

Preparado por Daniel Zegarra Zavaleta

Pg. 84

Manual de Excel Avanzado

Nota.-

Si al escribir alguna formula en Visual Basic no se conoce su equivalente en ingls, lo que


hay que hacer es regresar a la ventana de Excel y encender la grabadora de macros, luego
escribir la frmula en espaol en cualquier celda, apagar la grabadora y observar en la
hoja de modulo como el editor de Visual Basic ha escrito su equivalente en la versin en
ingls.

d. Usos del mtodo Select y la propiedad Selection


El mtodo Select activa las hojas y los objetos de las hojas.
La propiedad Selection devuelve un objeto que representa la seleccin actual de la
hoja activa del libro activo.
Antes de utilizar la propiedad Selection, debe activar un libro, o activar o
seleccionar una hoja y luego a continuacin, seleccionar un rango, u otro objeto, con
el mtodo Select.
La grabadora de macros suele crear una macro que utiliza el mtodo Select y la
propiedad Selection. El siguiente procedimiento Sub se cre utilizando la grabadora
de macros, y muestra cmo trabajan juntas Select y Selection.
Sub Macro1()
Range("A3").Select
ActiveCell.FormulaR1C1 = "CLIENTE"
Range("B4").Select
ActiveCell.FormulaR1C1 = "PAGOS"
Range("A3:B3").Select
Selection.Font.Bold = True
End Sub

El siguiente ejemplo en cambio, realiza de manera equivalente la misma tarea


anterior, pero sin activar ni seleccionar las celdas.
Sub Macro2()
Range("A3") = "CLIENTE"
Range("B3") = "PAGOS"
Range("A3:B3").Font.Bold = True
End Sub

Este segundo ejemplo evidentemente es ms simple y a la vez ms eficiente que el


anterior, pues la macro no pierde tiempo desplazando el puntero de celda en la
pantalla para seleccionar ningun rango previamente al ingreso de los datos; la
imagen en la pantalla permanece esttica y solo se vern que aparecen los datos en
las celdas correspondientes.

Preparado por Daniel Zegarra Zavaleta

Pg. 85

Manual de Excel Avanzado

Preparado por Daniel Zegarra Zavaleta

Pg. 86

Manual de Excel Avanzado

Ejercicio N 10: Procedimientos Sub para Cambio de moneda


Caso1:
Se desea crear un procedimiento en Visual Basic para convertir soles a su
equivalente en dlares.
1.- En una hoja en blanco escriba lo siguiente:

2.- Ingrese al Editor de Visual Basic con Alt+F11


3.- Inserte una hoja de modulo con el men Insertar/Modulo
4.- En la hoja de modulo escriba el siguiente procedimiento Sub:
Sub Dolares()
Monto = range("B3")
tcambio = range("B4")
Range("B5") = Monto / tcambio
End Sub

Como puede verse, las instrucciones en este procedimiento hacen lo siguiente:


-

El contenido de la celda B3 lo guarda en la variable Monto

El contenido de la celda B4 lo guarda en la variable Tcambio

Divide el valor de la variable Monto entre la variable Tcambio y el resultado lo


guarda en la celda B5.

4.- Regrese a la hoja de clculo y dibuje un botn como el que se muestra en la


figura anterior (use Autoformas/Formas bsicas/Bisel)
5.- Asigne la macro Dolares a este botn.
Cuando haga un clic en el botn de la macro Dlares, el procedimiento se ejecutar
y aparecer el resultado en la celda B5.
Nota.-

Cuando se ejecuta esta macro, observe que en el contenido de las celdas no existe ninguna
frmula, todos los clculos se realizaron en Visual Basic y en las celdas solamente
aparecen los resultados. Habr otros casos como ya se ver mas adelante en los cuales se
va ha desear que la macro escriba tambin formulas en las celdas.

Preparado por Daniel Zegarra Zavaleta

Pg. 87

Manual de Excel Avanzado

Caso2:
Crear otro procedimiento en Visual Basic para convertir dlares a su equivalente en
soles.
1.- En la misma hoja de clculo anterior borre la celda B3 y escriba un monto en
la celda B5:

2.- Ingrese a la ventana de Visual Basic y debajo del procedimiento anterior


escriba este otro procedimiento Sub:
Sub Soles()
Monto = range("B5")
tcambio = range("B4")
Range("B3") = Monto * tcambio
End Sub

En esta ocasin, las instrucciones de este procedimiento hacen lo siguiente:


-

El contenido de la celda B5 lo guarda en la variable Monto

El contenido de la celda B4 lo guarda en la variable Tcambio

Multiplica el valor de la variable Monto por la variable Tcambio y el resultado


lo guarda en la celda B3.

3.- Regrese a la hoja de clculo y dibuje otro botn para la macro Soles como se
muestra en la figura anterior.
4.- Luego asigne la macro Soles a este segundo botn.
Cuando haga un clic en el botn de la macro Soles, se ejecutar el procedimiento y
los dlares de la celda B5 se convertirn a soles que aparecern en la celda B3.

Preparado por Daniel Zegarra Zavaleta

Pg. 88

Manual de Excel Avanzado


Caso3:
Ahora crear un procedimiento que borre el contenido del rango B3:B5 y luego
seleccione la celda B3.
1.- Ingrese a la ventana de Visual Basic y debajo del procedimiento anterior
escriba este otro procedimiento Sub:
Sub Borrar()
Range("b1:b3").ClearContents
Range("b1").Select
End Sub

2.- En la hoja de clculo dibuje otro botn para la macro Borrar como se muestra
en la siguiente figura:

3.- Luego asigne la macro Borrar a este botn.


Cuando haga un clic en el botn de la macro Borrar, se borraran las celdas B3, B4 y
B5 y se ubicar el puntero de celda en B3.

Preparado por Daniel Zegarra Zavaleta

Pg. 89

Manual de Excel Avanzado

Ejercicio N 11: Procedimientos Sub para Ahorro personal


Caso1:
Se desea crear un procedimiento en Visual Basic para controlar los ahorros en una
cuenta personal.
1.- En una hoja en blanco escriba lo siguiente:

2.- Nombre los siguientes rangos de celda:


B2 Fecha

B3 Anterior

B5 Retiro

B6 Actual

B4 Deposito

2.- Ingrese al Editor de Visual Basic con Alt+F11


3.- Inserte una hoja de modulo con el men Insertar/Modulo y escriba el siguiente
procedimiento Sub:
Sub Ahorro()
Range("Fecha") = Date
Range("Deposito") = InputBox("Ingrese Depsito")
Range("Retiro") = InputBox("Ingrese Retiro")
Range("Anterior") = Range("Actual")
Range("Actual") = Range("Anterior")+Range("Deposito")-Range("Retiro")
End Sub

Las instrucciones en este procedimiento hacen lo siguiente:


-

Guarda la fecha actual en la celda llamada Fecha

La sentencia InputBox mostrar una ventana solicitando que se ingrese el


monto del deposito, y luego almacena este monto en la celda llamada Depsito.

Luego otra ventana solicitar el monto de retiro el cual se almacena en la celda


llamada Retiro. (si no existe un monto de retiro, al aparecer la ventana solicitando el retiro
solo se debe presionar Enter o hacer clic en Aceptar)

Guarda el valor de la celda llamada Actual en la celda llamada Anterior

Preparado por Daniel Zegarra Zavaleta

Pg. 90

Manual de Excel Avanzado


-

Calcula el nuevo saldo actual y lo guarda en la celda llamada Actual

4.- Regrese a la hoja de clculo y dibuje un botn como el que se muestra en la


figura anterior (use Autoformas/Formas bsicas/Bisel)
5.- Luego asigne la macro Ahorro a este botn.
Cuando haga un clic en el botn de la macro Ahorro, ingrese un monto de depsito
y si desea tambin de retiro, y al aceptar aparecern los resultados en la hoja de
clculo.
Nota.-

Este procedimiento tal y como esta diseado, una vez que ya se ha ingresado un depsito y
nos est solicitando ingresar ahora el retiro, no nos da opcin a enmendar el anterior
ingreso si es que hubo un error en l. Ms adelante en otro ejercicio veremos como insertar
instrucciones condicionales que permitan abortar una transaccin o continuar
ejecutndola.

La macro anterior a medida que se realizan movimientos en la cuenta va calculando


el nuevo saldo, pero no lleva un registro de todos los movimientos efectuados.
Para poder guardar cada uno de los depsitos o retiros efectuados da tras da, ser
necesario crear en la misma hoja de clculo un cuadro adicional de 4 columnas que
registre la fecha, los depsitos y retiros, y el saldo final en cada uno de los
movimientos efectuados en la cuenta de ahorros. Para ello haga usted lo siguiente:
6.- Escriba en la hoja de clculo anterior lo siguiente:

7.- Ingrese a la ventana de Visual Basic y al procedimiento anterior agrguele las


siguientes instrucciones:
Sub Ahorro()
Range("Fecha") = Date
Range("Deposito") = InputBox("Ingrese Depsito")

Preparado por Daniel Zegarra Zavaleta

Pg. 91

Manual de Excel Avanzado


Range("Retiro") = InputBox("Ingrese Retiro")
Range("Anterior") = Range("Actual")
Range("Actual")=Range("Anterior")+Range("Deposito")-Range("Retiro")
Range("A9").Select
ActiveCell.CurrentRegion.Select
ActiveCell.Offset(Selection.Rows.Count, 0).Select
ActiveCell = Date
ActiveCell.Offset(0, 1) = Range("Deposito")
ActiveCell.Offset(0, 2) = Range("Retiro")
ActiveCell.Offset(0, 3) = Range("Actual")
MsgBox ("Su saldo Actual es de " & Range("Actual") & " soles")
End Sub

Luego de haber ingresado el depsito o el retiro, y haber calculado el saldo final,


las instrucciones adicionales en este procedimiento hacen lo siguiente:
-

Primero selecciona la celda A9

Selecciona la regin actual

Desplaza el puntero de celda hasta la ultima celda ocupada de la regin actual


y se ubica en una celda vaca de la columna A.

En esa celda vaca de la columna A escribe la fecha actual

Se desplaza una celda a la derecha de A y escribe el monto del depsito

Se desplaza dos celdas a la derecha de A y escribe el monto del retiro

Se desplaza tres celdas a la derecha de A y escribe el saldo final

Finalmente muestra un mensaje en pantalla indicando cual es el monto del


saldo actual en la cuenta.

8.- Regrese a la hoja de clculo y haga un clic en el botn de la macro para


registrar uno o varios movimientos en la cuenta.
Si la macro funciona como se espera, regrese a la ventana de Visual Basic y agregue
al procedimiento los siguientes comentarios con la finalidad de entender mejor cual
es la funcin de cada grupo de instrucciones dentro de la macro. ( Recuerde que los
comentarios deben empezar a escribirse con un apstrofe (). )
Sub Ahorro()
Range("Fecha") = Date
'Solicita datos
Range("Deposito") = InputBox("Ingrese Depsito")
Range("Retiro") = InputBox("Ingrese Retiro")
Range("Anterior") = Range("Actual")
'Calcula el saldo actual
Range("Actual") = Range("Anterior")+Range("Deposito")-Range("Retiro")
'Ubica el puntero al final del registro de movimientos
Range("A9").Select
ActiveCell.CurrentRegion.Select
ActiveCell.Offset(Selection.Rows.Count, 0).Select
'Registra los datos
ActiveCell = Date

Preparado por Daniel Zegarra Zavaleta

Pg. 92

Manual de Excel Avanzado


ActiveCell.Offset(0, 1) = Range("Deposito")
ActiveCell.Offset(0, 2) = Range("Retiro")
ActiveCell.Offset(0, 3) = Range("Actual")
'Muestra un mensaje con el saldo actual
MsgBox ("Su saldo Actual es de " & Range("Actual") & " soles")
End Sub

Preparado por Daniel Zegarra Zavaleta

Pg. 93

Manual de Excel Avanzado

Prctica de Laboratorio N1
Objetivos:

1ra Parte:

Uso de funciones de fecha y formatos de fecha

Funciones SI anidadas, y la funcin ESNUMERO

Crear Formatos personalizados

Uso de Formatos condicionales

Creacin de Tablas dinmicas

Control de Cuentas por Pagar

1. En la Hoja1 de un nuevo libro escribir los datos del cuadro de CUENTAS POR PAGAR
que se observa a continuacin, y cambiar el nombre de la etiqueta de hoja para que se
llame CUENTAS.
Nota.-

Para cambiar el nombre de una etiqueta de hoja, haga doble clic en la etiqueta, escriba el
nombre que quiera darle y luego presione Enter.

Para realizar este ejercicio se est suponiendo que el da actual es el 4 de Junio del
ao 2005. (Si desea cambi la fecha del sistema en su computador para que los clculos coincidan)

Preparado por Daniel Zegarra Zavaleta

Pg. 94

Manual de Excel Avanzado


A travs de este cuadro se desea controlar los pagos que hay que realizar a varios
proveedores con los cuales se tiene contradas varias deudas. Para lograr esto se debe
realizar lo siguiente:
2. En la Hoja2 del libro crear la tabla de meses como se
muestra a la derecha y luego seleccionando el rango A3:B14
darle el nombres de rango MESES.
3. En la hoja CUENTAS, escribir el la celda C4 la siguiente
formula:
=BUSCARV(MES(B4),MESES,2,0)
Luego alinear al centro el resultado de la formula y copiarla
hacia abajo con el cuadro de relleno
En la columna Plazo en das:
Aqu debe calcularse la
cantidad de das que faltan para que
se venza el plazo de pago; y si este
ya est vencido mostrar de color rojo
y
entre parntesis la cantidad de das
vencidos. Este clculo se hace restando la fecha de vencimiento
menos la fecha del da actual. Sin embargo si la deuda ya fue
cancelada, el clculo se har restando la fecha de vencimiento
menos la fecha de pago de la deuda.
4. En la celda D4 de la hoja CUENTAS, escribir la siguiente formula:
=SI(ESNUMERO(I4),B4-I4,B4-HOY())
Luego alinear al centro el resultado de la formula y tambin copiarla hacia abajo con el
cuadro de relleno
5. Seleccione el rango D4:D19 y llamando al men Formato/Celdas, en la ficha Nmero
elegir la categora Nmero, con cero decimales y elegir que las cantidades negativas se
muestren entre parntesis y de color rojo.
Cero
Cero
decimales
decimales

Elegir la
Elegir la
Categora
Categora
Nmero
Nmero

Nmeros negativos entre


Nmeros negativos entre
parntesis y de color rojo
parntesis y de color rojo

Preparado por Daniel Zegarra Zavaleta

Pg. 95

Manual de Excel Avanzado

En la columna Inters:

Calcular aqu el inters que hay que pagar solo cuando se


excede la fecha de pago. El clculo se realizar en esta ocasin
con un inters de tasa efectiva segn la siguiente frmula:
I C (1 i / 360) t C

Donde:

I
C
i
t

: Inters a pagar
: Monto de la deuda
: Tasa de inters (14% anual)
: Das vencidos

6. En la celda F4 de la hoja CUENTAS, escribir la siguiente formula:


=SI(D4<0,E4*(1+F$3/360)^ABS(D4)-E4,)
Luego al resultado de la formula darle el formato de moneda y copiarla hacia abajo con
el cuadro de relleno
Nota.-

Si an no se cumple la fecha de vencimiento del pago, la frmula anterior escribir en la


celda un texto vaco .

En la columna TOTAL:Es la suma del Monto ms el Inters:


7. En la celda G4 de la hoja CUENTAS, escribir la siguiente formula:
=SUMA(E4:F4)
Nota.-

Se usa la funcin SUMA en lugar de la frmula =E4+F4, porque si en la celda F4 hay el


texto vaco, el resultado de la formula dara el mensaje de error #VALOR!. En cambio la
funcin SUMA ignora los textos y solo suma los datos numricos del rango.

En la columna Estado:
Pagado
Vencida
Vence Hoy
Por Vencer

Aqu debern aparecer diferentes mensajes de texto


dependiendo de las condiciones en que se encuentre el pago de
cada deuda. Los mensajes sern los siguientes:
Si existe una fecha de pago en la columna I:
El color del texto deber ser azul.
Si ya se cumpli la fecha de pago:
Fondo de la celda color negro con letras blancas y en negrita
Si la fecha actual coincide con la fecha de vencimiento:
Fondo de la celda color rojo con letras blancas y en negrita
Si la deuda vence dentro de los 7 das a partir del da actual:
Fondo de color amarillo claro y letras en negrita

Para lograr esto, haga usted lo siguiente:

Preparado por Daniel Zegarra Zavaleta

Pg. 96

Manual de Excel Avanzado


8. Seleccione el rango de celdas H4:H19 y llame al men Formato/Formato condicional, y
en la ventana de dialogo elegir las siguientes opciones, y luego Aceptar:

Fuente:
Fuente:
Borde:
Borde:
Tramas:
Tramas:
Fuente:
Fuente:
Borde:
Borde:
Tramas:
Tramas:

Fuente:
Fuente:
Borde:
Borde:
Tramas:
Tramas:

Negrita
Negrita
y color blanco
y color blanco
Contorno
Contorno Rojo
Rojo
Negrita
Negrita
Contorno
Contorno
Amarillo claro
Amarillo claro
Negrita
Negrita
y color blanco
y color blanco
Contorno
Contorno Negro
Negro

9. Seleccionado an el rango H4:H19 utilice el botn de herramientas Color


de fuente y elija el color Azul.

10. Entonces el cuadro deber verse as:

Preparado por Daniel Zegarra Zavaleta

Pg. 97

Manual de Excel Avanzado


11. Finalmente en la celda A1 se debe escribir la siguiente formula para que muestre
siempre all la fecha del da actual:
="CUENTAS POR PAGAR al "&DIA(HOY())&"/"&MES(HOY())&"/"
&AO(HOY())
12. Guarde este archivo con el nombre Cuentas.

2da Parte: Tabla Dinmica para Resumen de Cuentas por Pagar


13. Seleccione una de las celdas del cuadro y llame al men Datos/Informe de tablas y
grficos dinmicos, y disee la siguiente tabla dinmica ubicndola en una hoja nueva:

14. La Tabla dinmica mostrar entonces el resumen acumulado de todas las deudas segn
los proveedores y segn el estado en que se encuentren los pagos.

15. Para terminar vuelva a guardar el archivo haciendo un clic en el botn


Guardar.

Preparado por Daniel Zegarra Zavaleta

Pg. 98

Manual de Excel Avanzado

Prctica de Laboratorio N 2
Objetivos:

1ra Parte:

Uso de nombres de rango en formulas y opciones de men

Filtros avanzados

Validacin de entrada de datos

Empleo de las funciones:


BUSCARV, ESBLANCO, SUMAR.SI, BDMAX.

Creacin de grficos y lneas de tendencia

Uso de la herramienta: Cmara fotogrfica.

Uso de la Grabadora de Macros

Creacin del cuadro Movimientos de Almacn

16. Se va ha confeccionar el siguiente Cuadro de Movimientos de un Almacn de


Vehculos, para lo cual siga los pasos que se indican mas adelante.

Codigo Articulo
HP-101 Automovil
Preparado por Daniel Zegarra Zavaleta

Pg. 99

Manual de Excel Avanzado


17. En una hoja de clculo de Excel escriba solo los ttulos del cuadro Movimientos de
Almacn. Luego dle formato a los ttulos, cpielos hacia la derecha y confeccione el
cuadro de Tabla de Saldos Finales, tal y como se muestra a continuacin:

A
1
2
3
4
5
6
7

B
C
D
MOVIMIENTOS DE ALMACEN

Codigo
HP-101
HP-090
HP-101
HP-115

Articulo
Automovil
Omnibus
Automovil
Camioneta

Fecha Ingreso Salida


03-Ene
10
3
03-Ene
25
05-Ene
4
6
05-Ene
35
3

Codigo
HP-090
HP-101
HP-115
HP-130

H
I
J
K
TABLA DE SALDOS FINALES
Articulo
Omnibus
Automovil
Camioneta
Camin

Fecha
24-Ene
26-Ene
25-Ene
25-Ene

Ingreso Salida Saldo


105
85
20
127
65
62
65
34
31
70
27
43

18. De nombre a los siguientes rangos de celda:


LISTA

A3:E50

TABLA

G3:L7

19. Seleccione el rango A4:A50 y con el men Datos-Validacin, permitir que solo se
ingresen datos segn la lista ubicada en el rango G4:G7. Luego ingrese los cdigos de
vehculos en la columna a utilizando la lista desplegable de validacin de cada celda
20. En la celda B4 escriba la siguiente frmula:
=SI(ESBLANCO(A4);"";BUSCARV(A4;tabla;2;0))
y luego copiarla en el rango B5:B50.
21. Seleccione el rango D4:E50 y valide el ingreso de datos para que solo permita ingresar
cantidades enteras menores o iguales que 50.
22. Llene los datos del cuadro Movimientos de Almacn, con los datos que se muestran en
la pagina anterior. Para ello puede escribirlos directamente en las celdas del cuadro.

2da Parte: Creacin de la Tabla de Saldos Finales y Grfico de


Movimientos por Vehculo
23. Escriba las frmulas en las siguientes celdas:
En
En
En
En

I4
I5
I6
I7

=BDMAX(lista;3;G9:G10)
=BDMAX(lista;3;H9:H10)
=BDMAX(lista;3;I9:I10)
=BDMAX(lista;3;J9:J10)

En J4
=SUMAR.SI($B$4:$B$50;$H4; D$4: D$50)
En K4
=SUMAR.SI($B$4:$B$50;$H4; E$4: E$50)
En L4
=J4-K4
Copie luego estas 3 ltimas frmulas hacia abajo.

Preparado por Daniel Zegarra Zavaleta

Pg. 100

Manual de Excel Avanzado

A
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

Codigo
HP-101
HP-090
HP-101
HP-115
HP-130
HP-090
HP-115
HP-101
HP-090
HP-090
HP-115
HP-130
HP-130
HP-090
HP-101
HP-101
HP-101
HP-130
HP-101
HP-115
HP-090
HP-090
HP-115
HP-101

B
C
D
MOVIMIENTOS DE ALMACEN
Articulo
Automovil
Omnibus
Automovil
Camioneta
Camin
Omnibus
Camioneta
Automovil
Omnibus
Omnibus
Camioneta
Camin
Camin
Omnibus
Automovil
Automovil
Automovil
Camin
Automovil
Camioneta
Omnibus
Omnibus
Camioneta
Automovil

Fecha Ingreso Salida


03-Ene
10
3
03-Ene
25
05-Ene
4
6
05-Ene
35
3
07-Ene
40
08-Ene
5
12
10-Ene
4
10-Ene
45
4
12-Ene
12
13-Ene
28
6
14-Ene
10
15
15-Ene
30
16-Ene
25
17-Ene
10
30
18-Ene
3
18-Ene
50
34
19-Ene
7
20-Ene
2
21-Ene
11
22-Ene
12
23-Ene
21
24-Ene
16
25
25-Ene
10
26-Ene
15

H
I
J
K
TABLA DE SALDOS FINALES

Codigo
HP-090
HP-101
HP-115
HP-130

Articulo
Omnibus
Automovil
Camioneta
Camin

Articulo
Omnibus

Articulo
Automovil

Fecha
24-Ene
26-Ene
25-Ene
20-Ene

Ingreso Salida
105
85
127
65
55
34
70
27

Saldo
20
62
21
43

Articulo Articulo
Camioneta Camin

MOVIMIENTOS POR VEHICULO


150
100
50
0

Omnibus

Automovil

Camioneta

Camin

Ingreso

105

127

55

70

Salida

85

65

34

27

Saldo

20

62

21

43

24. Crear luego el grfico de columnas tal como en la figura anterior. (el grfico no debe
pasar de la fila 22)
25. Guarde el libro en disco dndole al archivo el nombre: Almacn de Vehculos.

3ra Parte: Obtencin del Cuadro de Kardex


26. Obtenga una copia del rango A3:B4 y pguela a partir de la celda G23 .

22
23
24
25
26
27

Codigo
HP-101

Articulo
Automovil

Codigo

Articulo

Obtener Kardex
Fecha

Ingreso

Salida

Saldo

27. En la celda L27 escribir la frmula


=SI(ESBLANCO(G27);"";SUMA(J$27:J27)-SUMA(K$27:K27))
rango L28:L50

y luego copiarla en el

28. Definir los siguientes nombres de rango:

Preparado por Daniel Zegarra Zavaleta

Pg. 101

Manual de Excel Avanzado


CRIT

G23:H24

EXTRAER

G26:K26

29. Ingresar un cdigo en la celda G24 y luego


con el men Datos-Filtro-Filtro avanzado,
escribir lo siguiente en la ventana de dialogo:
30. Haga un clic en Aceptar y observe el resultado
que deber ser igual al cuadro de la pgina 1
de esta prctica.

4ta Parte:

Obtencin del Grfico de Existencia en Almacn

31. A partir de los rangos seleccionados previamente en


forma mltiple I26:I50 y L26:L50, crear el
grfico del tipo Lneas segn como se muestra.
32. Una vez creado el grfico, sealar la lnea graficada
y con un clic derecho llame a su men contextual
para agregar una lnea de tendencia, tal como se
observa en la figura adjunta.
33. Seleccione el rango G23:H24 y con la herramienta
cmara fotogrfica ubique la fotografa de este
rango debajo del titulo del grfico Existencia en
Almacn, como se ve en la figura adjunta.
34. Guarde nuevamente el archivo en disco.

5ta Parte:

Codigo Articulo
HP-101 Automovil

Creacin de una macro para obtener el Kardex de


cada vehculo

35. Con ayuda de la grabadora de macros cree una macro cuyo nombre ser Kardex, para
que realice las siguientes acciones:

Llamar al men Datos/Filtro/Filtro avanzado


Marcar la opcin Copiar a otro lugar

Preparado por Daniel Zegarra Zavaleta

Pg. 102

Manual de Excel Avanzado

En los cuadros de texto correspondientes escribir los nombres LISTA, CRIT y


EXTRAER.
Hacer un clic en el botn Aceptar.

36. Usando Autoformas / Formas bsicas / Bisel de las herramientas de dibujo, cree el
botn Obtener Kardex y luego asgnele la macro anterior.
37. Ahora para probar la macro, ingrese en la celda G24 un nuevo cdigo de vehculo, y
luego haga un clic sobre el botn de la macro. Observe como se obtiene el Kardex del
vehculo ingresado, y tambin como se obtiene su grfica de lneas de Existencia en
Almacn.
38. Guarde nuevamente el archivo en disco.
La macro creada con la grabadora de macros tendra las siguientes instrucciones en Visual
Basic:
(con las teclas Alt + F11 puede ingresar a la ventana del Editor de Visual Basic)
Sub Kardex()
Range("Lista").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"Crit"), CopyToRange:=Range("Extraer"), Unique:=False
End Sub

Preparado por Daniel Zegarra Zavaleta

Pg. 103

Manual de Excel Avanzado

Prctica de Laboratorio N 3
Objetivos:
Disear una tabla de multiplicar para que pueda ser utilizada por un nio que no
necesariamente sepa el uso de Excel.

Usar la grabadora de macros.

Creacin de formatos personalizados

Uso de las funciones:


SI, ELEGIR, CONTAR.SI, ESBLANCO, ENTERO Y ALEATORIO.

Uso del men Pegado especial para convertir frmulas en valores.

Uso de las herramientas para crear Formularios.

Edicin de macros en el Editor de Visual Basic para Aplicaciones.

1. Confeccione la Tabla de Multiplicar siguiendo siguientes instrucciones:

2. En la celda B5 escriba la frmula = B$3 y luego copiarla en el rango B6:B16


3. Llene el rango C5:C16 con nmeros consecutivos del 1 al 12.
4. En la celda C3 escribir el carcter (Alt + 0231) y darle el tipo de letra Wingdings.
Luego alinearlo a lado derecho de la celda
5. Igualmente, escribir en la celda D17 el carcter (Alt + 0232) y darle el tipo de letra
Wingdings.
6. En la celda E5 escribir la formula: =B5*C5 y luego copiarla en el rango E6:E16.
Preparado por Daniel Zegarra Zavaleta

Pg. 104

Manual de Excel Avanzado


7. Luego seleccione el rango C5:C16 y con el men Formato/Celdas/Nmero, cree el
formato personalizado:
Tipo:
"x"* 0 "="
.
8. Defina los siguientes nombres de rango:
A1:J17
TABLA
D5:D16
UNO
F5:F16
CALIFICAR
F17
TOTAL
L5:L16
DESCENDENTE

C5:C16
E5:E16
E17
K5:K16
M5:M16

NUMEROS
DOS
ORDEN
ASCENDENTE
AZAR

9. En el rango AZAR escriba la formula =ENTERO(ALEATORIO()*12)+1

Ascendente

10. Confeccione las macros: Ajustar, Calificar, Borrar y Orden, para que realicen las
siguientes acciones: (use la grabadora de macros).
Ajustar

Seleccionar el rango TABLA.


En la herramienta Zoom elegir Seleccin.
Seleccionar la celda D5.

Calificar

Seleccionar el rango CALIFICAR


Escribir la formula
=SI(ESBLANCO(UNO);"";SI(UNO=DOS;"Bien";"Mal"))

Preparado por Daniel Zegarra Zavaleta

Pg. 105

Manual de Excel Avanzado


y luego presionar Ctrl + Enter
Seleccionar la celda TOTAL
Escribir la formula =CONTAR.SI(CALIFICAR;"Bien") y luego
hacer un clic en el botn Introducir
barra de frmulas.
Seleccionar la celda D5.

que se encuentra en la

Borrar

Seleccionar los rangos CALIFICAR, UNO y TOTAL


Presionar la tecla Suprimir.
Seleccionar la celda D5.

Orden

Seleccionar el rango ASCENDENTE,


Copiar el rango haciendo clic en la herramienta de Copiar.
Seleccionar el rango NUMEROS
Llamar al men Edicin / Pegado especial / Valores y Aceptar.
Presionar la tecla Escape para liberar el rango punteado.
Seleccionar la celda B3, escribir en ella la formula
=ELEGIR(N3;2;4;10;12)
.. y luego presionar la tecla Enter.
Seleccionar la celda D5.

11. Crear los botones AjustarTamao, Calificar y BorrarTodo; y luego asignarles a cada
uno la macro correspondiente.
12. Disear el formulario como se muestra en la figura, conteniendo los elementos
siguientes:

Etiqueta

Con el texto Edad:

Cuadro combinado

Para elegir las edades escritas en el rango N5:N8 y


vinculado a la celda N3.

Cuadro de Grupo

Para encerrar a los botones de opcin

Botones de opcin

Para elegir Ascendente, Descendente o Al azar.


Estos botones de opcin estn vinculados con la
celda E17

Botn Aceptar

Para asignarle la macro ORDEN

13. En la celda K3 escribir la formula:


=ELEGIR(E17,"ASCENDENTE","DESCENDENTE","AZAR")
14. A la derecha de la celda B3 disear un elemento de formulario del tipo Control de
nmero, para que vinculada a la celda B3, se encargue de aumentar o disminuir el

Preparado por Daniel Zegarra Zavaleta

Pg. 106

Manual de Excel Avanzado


valor de esta celda, desde un mnimo de 0 hasta un mximo de 12, y con incrementos
de 1.
15.
Si se ingresa al Editor de Visual Basic para Aplicaciones de Excel, tendremos
macros semejantes a las siguientes::
Sub Ajustar()
Application.Goto Reference:="TABLA"
ActiveWindow.Zoom = True
Range("D5").Select
End Sub
Sub Borrar()
Range("UNO,CALIFICAR,TOTAL").Select
Selection.ClearContents
Range("D5").Select
End Sub
Sub Calificar()
Application.Goto Reference:="CALIFICAR"
Selection.Formula = "=IF(ISBLANK(UNO),"""",IF(UNO=DOS,""Bien"",""Mal""))"
Application.Goto Reference:="TOTAL"
ActiveCell.Formula = "=COUNTIF(CALIFICAR,""Bien"")"
Range("D5").Select
End Sub

Sub Orden()
Application.Goto Reference:="ASCENDENTE"
Selection.Copy
Application.Goto Reference:="NUMEROS"
Selection.PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
Range("B3").Select
Selection.Formula = "=CHOOSE(N3,2,4,10,12)"
Range("D5").Select
End Sub

16.
En el Editor de Visual Basic modifique las 4 primeras instrucciones de la macro
Orden, para que queden de la forma siguientes:
Sub Orden()
Range(Range("K3")).Copy
Range("NUMEROS").PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
Range("B3").Formula = "=CHOOSE(N3,2,4,10,12)"
Range("D5").Select
End Sub

17. Una vez que las macros se ejecuten sin errores, ocultar las columnas E, K, L, M y N.
18. A la celda TOTAL darle el siguiente formato personalizado:
Preparado por Daniel Zegarra Zavaleta

Pg. 107

Manual de Excel Avanzado


[=1]0 "Buena";0 "Buenas" .
19. Finalmente Guardar el Libro con el nombre Tabla de Multiplicar.

Como Usar La Tabla De Multiplicar


En el cuadro de formulario elegir la edad que tiene el nio que va ha practicar la Tabla,
y el orden en que se desea que aparezcan los nmeros a multiplicarse. Luego hacer un
clic en el botn Aceptar.
La macro seleccionar entonces la tabla de multiplicar segn la edad del nio. Sin
embargo si uno desea podr luego seleccionar otra tabla haciendo clic en los botoncitos
de aumentar o disminuir nmero a la derecha de la celda B3.
A continuacin el nio deber escribir (en la columna D) las respuestas
correspondientes a cada multiplicacin.
Una vez que termine de contestar deber hacer un clic en el botn Calificar para saber
cuantas respuestas fueron buenas.
Utilizar el botn BorrarTodo para borrar las respuestas y las calificaciones obtenidas, y
poder contestar las multiplicaciones otra vez nuevamente.

Preparado por Daniel Zegarra Zavaleta

Pg. 108

Manual de Excel Avanzado

Prctica de Laboratorio N 4
Objetivos:
Se van ha confeccionar y controlar en diferentes hojas de un Libro los siguientes
cuadros:

Lista de Precios.

Lista de Clientes

Boleta de Venta

Registro de Ventas

Una empresa distribuidora de artefactos elctricos desea controlar y registrar sus ventas
por Boleta. Para esto dispone de una lista de precios y una relacin de varios clientes
con quienes realiza regularmente sus ventas de artefactos.

El modelo de la Boleta de Venta que se muestra a continuacin deber permitir hacer


las siguientes acciones en la pantalla:
o El nmero correlativo de la boleta as como la fecha actual debern aparecer
automticamente o que tambin si se desea puedan escribirse.
o Poder elegir el nombre de una lista de clientes para ponerlo en la boleta.
o Al elegir un cliente, su direccin deber aparecer automticamente en la boleta
o Los precios de los artculos aparecern en la boleta al elegir sus cdigos.
o Si el monto de la compra supera los 5000 soles se calcular un descuento del
10%, sino el descuento ser solo del 5%.
o Como los precios de la lista ya incluyen el 19% de impuesto (IGV), la boleta
deber calcular el total del IGV.
Para la boleta que se muestra ms adelante:
En la boleta puede verse el monto de la compra:
Como no supera los 5,000 el descuento es del 5%:
El Total de la venta es la diferencia de ambos:
Y el IGV incluido en este total es:

3,205.00
160.25
3,044.75
486.14

o Finalmente la boleta deber mostrar el total de la venta no solo en nmeros, sino


tambin este mismo total expresado en letras. Pero este total deber aparecer
automticamente en la boleta apenas este sea calculado:
Preparado por Daniel Zegarra Zavaleta

Pg. 109

Manual de Excel Avanzado


Son: TRES MIL, CUARENTICUATRO Y 75/100 NUEVOS SOLES
Nota.-

La conversin del monto en letras ser obtenida con la ayuda del archivo LETRAS.XLS que
fue realizado en un ejercicio previo incluido en este manual.

Antes de confeccionar la Boleta de ventas, primero empezaremos por hacer la lista de


precios y la lista de los clientes.

1ra Parte:

Creacin de la Lista de Precios

39. En una hoja de clculo de


Excel, a la cual se le pondr
el nombre Precios, escriba la
siguiente lista de precios, tal
y como se muestra a
continuacin en la figura.
40. En esta hoja, definir los
siguientes nombres de rango:
A4:A14 CODIGO
A3:C14 PRECIOS

Preparado por Daniel Zegarra Zavaleta

Pg. 110

Manual de Excel Avanzado

2da Parte: Creacin de la Lista de Clientes


41. En otra hoja de clculo del mismo libro actual, la cual tendr como nombre Clientes,
escriba la siguiente relacin tal y como se muestra a continuacin:

42. En esta hoja, definir los siguientes nombres de rango:


A4:A10 LCLIENTE

3ra Parte:

A3:C10 RCLIENTE

Creacin de la Boleta de Venta

43. En otra hoja a la cual se le llamar Boleta, disear el modelo de la boleta con los ttulos,
colores de relleno, bordes y anchos de columna tal y como se muestra en la figura:

Preparado por Daniel Zegarra Zavaleta

Pg. 111

Manual de Excel Avanzado


Luego en esta hoja se deber hacer lo siguiente:
44. Seleccionar las celdas B3:C3 y unirlas con el botn de Combinar y centrar, a
continuacin darle a esta celda el nombre de rango CLIENTE. Luego validar esta celda
con el men Datos/Validacin para que permita mostrar una lista cuyo origen sea el
rango: =LCLIENTE.
45. Unir B4:C4 con Combinar y centrar y luego all escribir la frmula:
=SI(ESBLANCO(Cliente),"",BUSCARV(Cliente,RCliente,2,0))
Luego darle a esta celda el nombre de rango DIRECCION.
46. A la celda E2 darle el nombre de rango NBOLETA, y luego crear para esta celda el
formato personalizado siguiente:
"001-"0000
47. A la celda E3 darle el nombre de rango FECHA, y a continuacin escribir en esta celda
la funcin =HOY(). Finalmente darle el formato de fecha: dd/mm/aa.
48. Seleccionar el rango B7:B16 y con el men Datos/Validacin permitir ingresar una lista
cuyo origen sea el rango llamado =CODIGO.
49. En la celda C7 escribir la formula:
=SI(ESBLANCO(B7),"",BUSCARV(B7,PRECIOS,2,0))
Luego copiar esta formula hacia abajo con el cuadro de relleno hasta la fila 16.

Preparado por Daniel Zegarra Zavaleta

Pg. 112

Manual de Excel Avanzado


50. En la celda D7 escribir la formula:
=SI(ESBLANCO(B7),"",BUSCARV(B7,PRECIOS,3,0))
Luego copiar esta formula hacia abajo con el cuadro de relleno hasta la fila 16.
51. : En la celda E7 escribir la formula:
=SI(ESBLANCO(B7),"",A7*D7)
Luego copiar esta formula hacia abajo con el cuadro de relleno hasta la fila 16.
52. El rango D7:E16 deber tener el formato de estilo millares, y las celdas D7 y E7 el
formato de estilo moneda.
53. En la celda E17 escribir la formula =SUMA(D7:D14) y darle el formato estilo moneda.
54. :En la celda D18 escribir la formula:
=SI(E17<5000,5%,10%)
55. :En la celda E18 escribir la formula:
=REDONDEAR(E17*D18,2)
56. :En la celda D19 escribir 19% y luego darle el formato personalizado: "IGV" 0%
57. :En la celda E19 escribir la formula:
=REDONDEAR(Total*D19/(1+D19),2)
58. :En la celda E20 escribir la formula:
=E17-E18
59. Luego en esta hoja Boleta, definir los siguientes nombres de rango:
A7:B16 DATOS

E19 IGV

E20 TOTAL

60. Finalmente guarde este archivo con el nombre Boleta de Venta.

4ta Parte:

Traer la hoja que convierte nmeros en letras

61. Teniendo en la pantalla el archivo Boleta de


venta.xls, abrir el archivo Letras.xls
62. Llamar al men Ventana/Organizar y eligiendo la
opcin Horizontal, hacer un clic en Aceptar.
Las dos ventanas con los archivos Letras.xls y Boleta
venta.xls se acomodarn una encima de la otra en
forma horizontal

de

63. Seleccionar la etiqueta llamada Convertidor del


archivo Letras y presionando la tecla de Ctrl.
arrastrar dicha etiqueta hacia la otra ventana para obtener as una copia de esta hoja en

Preparado por Daniel Zegarra Zavaleta

Pg. 113

Manual de Excel Avanzado


el archivo Boleta de Venta, la que se ubicar a la derecha de la hoja Clientes. (ver imagen
adjunta). Luego cerrar el archivo Letras.xls.
64. Al quedar una sola ventana en la pantalla (del archivo Boleta de Venta) volver a llamar
al men Ventana/Organizar y elegir Aceptar, para que la ventana ocupe toda la pantalla
nuevamente.

Con [Ctrl] y el Mouse


Con [Ctrl] y el Mouse
arrastrar esta etiqueta
arrastrar esta etiqueta
de hoja hacia la otra
de hoja hacia la otra
ventana.
ventana.

65. En la Hoja Convertidor, verificar que la celda B6 tenga el nombre de rango LETRAS.
66. En la celda B2 de la hoja Convertidor, escribir la formula: =TOTAL
67. En la hoja Boleta, seleccionar las celdas B17:C19 y unirlas con el botn de Combinar y
centrar. Luego alinear esta celda con el men Formato/Celdas y en la ficha alineacin
elegir alinear horizontalmente a la Izquierda, y verticalmente a la parte Superior.
68. Escribir en la celda B17 la formula: =LETRAS.
Esto har que el valor numrico de la celda E20 aparezca convertido en letras en la
celda B17.
69. Vuelva a guardar el archivo Boleta de venta presionando las teclas Ctrl+G.
Ahora podr escribir cantidades en la columna A y elegir cdigos de artculos en la
columna B, y entonces ver que la boleta se calcular automticamente.

Preparado por Daniel Zegarra Zavaleta

Pg. 114

Manual de Excel Avanzado

5ta Parte:

Creacin del Registro de Ventas

Cada vez que se realiza una venta y se calcula una Boleta de Venta, los datos de esta
boleta debern copiarse en un Registro de Ventas. Los datos que all se deben copiar son
los siguientes: el N de la boleta, la Fecha, El nombre del Cliente, el monto del IGV y el
monto total de la Boleta.
70. En otra hoja a la cual se le llamar Registro, escribir los ttulos tal y como se muestra
en la figura. Luego al rango A4:A100 dle el nombre de rango NBOL.

Para copiar los datos de cada Boleta en el Registro de Ventas, se va a recurrir a una
Macro con el fin de automatizar esta tarea que es repetitiva para vada vez que se realiza
una venta.

Crear la macro que Registra una Boleta de Venta


71. Ingrese al Editor de Visual
Basic con las teclas
Alt+F11.
72. Llame
al
menu
Insertar/Modulo, y en la
ventana del Modulo1 que
aparece en la pantalla
escriba
la
siguiente
Subrutina para la Macro
Registrar:
73. Regrese a la ventana de
Excel y en la hoja Boleta
dibuje al lado derecho con
Autoformas/Formas
bsicas/Bisel, un botn para
la macro.
74. Luego sobre este boton haga un clic derecho con el mouse y asignele la macro
Registrar

Preparado por Daniel Zegarra Zavaleta

Pg. 115

Manual de Excel Avanzado

Crear la macro que prepara una Nueva Boleta de Venta


75. En la ventana del Editor de Visual Basic, en la misma hoja del Modulo1 y debajo de la
subrutina Registrar escribir la siguiente subrutina llamada NuevaBoleta:

76. Regrese a la ventana de Excel y en la hoja Boleta dibuje al lado derecho con
Autoformas/Formas bsicas/Bisel, otro botn para esta segunda macro.
77. Luego sobre este boton haga un clic derecho con el mouse y asignele la macro
NuevaBoleta
78. Vuelva a guardar el archivo Boleta de Venta presionando las teclas Ctrl+G.
79. Haga un clic en el botn de la macro NuevaBoleta y a continuacin ingrese los datos
para calcular la siguiente Boleta de Venta:

Preparado por Daniel Zegarra Zavaleta

Pg. 116

Manual de Excel Avanzado


80. Luego haga un clic en el botn de la macro Registrar. Con esto, la macro habr copiado
los datos de la Boleta en el Registro de Ventas, y `para verificar que esto fue as, vea en
la hoja Registro si se han copiado los datos.
La hoja Registro deber mostrar lo siguiente:

81. De este modo, pruebe hacer varias boletas de venta diferentes y cada vez que haga una
nueva, cpiela en el registro de ventas utilizando en cada caso el botn de la macro
correspondiente.
82. Recuerde al final volver a guardar el archivo Boleta de Venta presionando las teclas
Ctrl+G para que queden guardadas todas las facturas registradas en el archivo Boleta
de Ventas.
Nota.-

Cuando en Visual Basic se escribe una frmula y dentro de la formula existen comillas,
entonces estas comillas hay que escribirlas en forma duplicada Por ejemplo en la funcin:
"=IF(ISBLANK(Cliente),"""",VLOOKUP(Cliente,RCliente,2,0))"

Nota.-

Si en Visual Basic se desea usar directamente una funcin de Excel, como por ejemplo:
Application.WorksheetFunction.Max(Range("NBOL")) + 1 , como se puede ver la funcin
MAX de Excel se escribe precedida de la instruccin Application.WorksheetFunction.

Preparado por Daniel Zegarra Zavaleta

Pg. 117

Manual de Excel Avanzado

Cdigos ASCII para caracteres especiales:


Alt + 35
Alt + 38
Alt + 40
Alt + 41
Alt + 60
Alt + 61
Alt + 62
Alt + 64
Alt + 91
Alt + 92
Alt + 93
Alt + 94
Alt + 123
Alt + 124
Alt + 125
Alt + 126

#
&
(
)
<
=
>
@
[
\
]
^
{
|
}
~

Alt
Alt
Alt
Alt
Alt
Alt
Alt
Alt
Alt
Alt
Alt
Alt
Alt
Alt
Alt
Alt

+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

129
157
159
160
130
161
162
163
164
165
166
167
168
171
172
176

Alt + Enter.Ctrl + Enter.-

Para escribir en la siguiente lnea dentro de la celda actual.


Para escribir un mismo dato simultneamente en todas las celdas
previamente seleccionadas.
Ctrl + asterisco.Para seleccionar la regin actual. (Llmese regin a un grupo
rectangular de celdas ocupadas consecutivamente).
Ctrl + G.Guarda el documento actual en el mismo destino donde fue
guardado la ltima vez.
Ctrl + espacio.Selecciona ntegramente todas las columnas del rango
seleccionado.
Shift + espacio.Selecciona ntegramente todas las filas del rango seleccionado.
Ctrl + Shift + espacio.- Selecciona ntegramente todas las celdas de la hoja actual.
Ctrl + Shift + ; .Escribe la fecha actual en la celda activa.
Ctrl + Shift + : .Escribe la hora actual en la celda activa, pero como un dato del tipo
texto.
Ctrl + flecha.Desplaza el puntero de celda hasta la ltima celda ocupada en la
direccin de la flecha.
Ctrl + Shift + flecha.- A partir de la celda actual selecciona todas las celdas hasta la
ltima celda ocupada en la direccin de la flecha.

Preparado por Daniel Zegarra Zavaleta

Pg. 118