Escolar Documentos
Profissional Documentos
Cultura Documentos
Suite Ofimtica
Avanzado
2007
www.edutecno.com
Excel 2007
Suite Ofimtica
Disposiciones generales
I.- Con la finalidad de optimizar el aprendizaje de nuestros estudiantes y prestar un mejor
atencin, Edutecno dispuso de una serie de normas que todos los participantes deben respetar.
Esto asegurar una mejora continua tanto del desarrollo de nuestras clases como una optimizacin
de los conocimientos entregados a los alumnos.
www.edutecno.com
Excel 2007
Suite Ofimtica
Contenido
DISPOSICIONES GENERALES ........................................................................................ 2
CONTENIDO ..................................................................................................................... 3
INTRODUCCIN ............................................................................................................... 5
CONSOLIDAR ................................................................................................................... 6
OPCIONES DE ESQUEMA ............................................................................................... 9
CREAR ESQUEMAS..................................................................................................................... 10
BORRAR ESQUEMAS .................................................................................................................. 13
OPTIMIZANDO USANDO BUSCAR OBJETIVO Y SOLVER ........................................... 14
BUSCAR OBJETIVO ......................................................................................................................... 14
SOLVER .......................................................................................................................................... 16
INSTALACIN DE COMPLEMENTO SOLVER ............................................................................... 16
USO DE SOLVER ......................................................................................................................... 16
INFORMES ................................................................................................................................. 19
ESCENARIOS POSIBLES CON ADMINISTRADOR DE ESCENARIOS ......................... 21
SOLVER Y EL ADMINISTRADOR DE ESCENARIOS ....................................................................... 23
VALIDACIN ................................................................................................................... 24
CONFIGURACIN DE UNA VALIDACIN ........................................................................................ 24
MENSAJES...................................................................................................................................... 26
FORMATO CONDICIONAL ............................................................................................. 28
APLICACIN DE UN FORMATO CONDICIONAL .............................................................................. 28
MANEJO DE DATOS EN MSEXCEL ............................................................................... 31
FILTROS.......................................................................................................................................... 31
FILTRO AVANZADO .................................................................................................................... 31
FUNCIONES DE FORMULARIO .................................................................................................... 34
BOTONES ................................................................................................................................... 35
FUNCIONES DE BSQUEDA ........................................................................................................... 35
FUNCIONES DE BASE DE DATOS .................................................................................................... 39
www.edutecno.com
Excel 2007
Suite Ofimtica
RANGO DE CRITERIOS................................................................................................................ 39
BDSUMA, BDPROMEDIO, BDCONTAR ....................................................................................... 40
TABLAS DINMICAS ...................................................................................................... 43
MS-QUERY ..................................................................................................................... 46
MACROS ......................................................................................................................... 53
EL GRABADOR DE MACROS ........................................................................................................... 54
EJECUTAR UNA MACRO................................................................................................................. 56
MTODO ABREVIADO................................................................................................................ 56
FICHA PROGRAMADOR, OPCIN MACROS ............................................................................... 56
EL LENGUAJE VBA .......................................................................................................................... 57
EL EDITOR DE VISUAL BASIC ...................................................................................................... 57
DESCRIPCIN DEL LENGUAJE .................................................................................................... 59
COLORES DISTINTIVOS .............................................................................................................. 61
ANLISIS DE LA MACRO ANTERIOR ........................................................................................... 61
OTRAS INSTRUCCIONES DE MACROS ............................................................................................ 63
ESTRUCTURAS DE CONTROL ......................................................................................................... 67
IF ................................................................................................................................................ 68
SELECT CASE .............................................................................................................................. 68
www.edutecno.com
Excel 2007
Suite Ofimtica
Introduccin
El objetivo final de cualquier curso de MSExcel 2007 avanzado es construir macros que permitan
automatizar tareas frecuentes y complejas.
Sin embargo, es importante tener en cuenta que la mejor macro no siempre es una macro:
Esto implica que se debe apartar la idea (que muchas personas tienen), de considerar las macros como
herramientas casi mgicas con las que podemos conseguir resultados extraordinarios. Ya estas
personas tendern a tratar de resolver cualquier tarea que parezca compleja por medio de macros.
ste es un lamentable error, ya que en la mayora de las ocasiones existen herramientas de
MSExcel que pueden realizar nuestros requerimientos en forma ms sencilla, rpida y eficiente que
si se construyera una macro.
Por esto, en una primera etapa nos abocaremos al estudio de algunas herramientas que nos
evitarn la construccin de algunas macros en el futuro.
Tambin se ver, en una segunda parte, el proceso de construccin de macros y su utilidad
prctica para automatizar las tareas ms comunes y complejas.
Para efectos prcticos se entender una secuencia de instrucciones separados por
/ como la secuencia de instrucciones en un men. As si se seala:
ejecute de la ficha Insertar/Nombre/Crear
es equivalente a
ejecute de la ficha principal Insertar, dentro de ste seleccione la opcin Nombre y
luego en ste Crear.
www.edutecno.com
Excel 2007
Suite Ofimtica
Consolidar
Es frecuente en MSExcel encontrar libros que contienen una misma tabla repetida en varias hojas.
Estas tablas es la informacin de detalle que luego servir para construir una tabla resumen.
Tambin es posible que las tablas a partir de las cuales se construir el resumen se encuentren
ubicadas en la misma hoja.
En ambos casos podemos hacer uso de la funcin Consolidar, la que nos permite generar una tabla
resumen a partir de dos o ms tablas de detalle. El nico requisito para usar esta funcin es que
las tablas que contienen los datos a resumir tengan idntica estructura, tanto en columnas como
en filas.
www.edutecno.com
Excel 2007
Suite Ofimtica
Una vez que aparece este cuadro, los pasos a seguir son los siguientes:
c) Seleccionar la funcin con la cual se construir la tabla resumen (Suma, Contar,
Promedio, Mnimo, Mximo, etc.)
d) Seleccionar la casilla Referencia, y luego marcar el rango A2:C9 en la Hoja1 y
presionar el botn Agregar.
Repetir este paso con las Hojas 2 y 3.
e) En la seccin Usar rtulos en, seleccionar Fila superiory Columna izquierda
f) Seleccionar la opcin Crear vnculos con los datos de origen
g) Presionar Aceptar
Las opciones Usar rtulos en le indican a MSExcel que dichos datos no deben ser
operados pero s copiados a la tabla resumen. La opcin Crear vnculos con los
datos de origen permite que la tabla resumen se actualice automticamente cada
vez que se efecta un cambio en los datos base. Esta opcin, sin embargo, no puede
ser utilizada cuando los datos de origen se encuentran en la misma hoja donde se
pretende dejar la tabla resumen.
Luego de estos pasos, en la Hoja 4 aparecer una tabla de la misma estructura que
la anterior, pero cuyos datos consistirn en el resultado de la funcin que hayamos
aplicado a los datos de origen, y cuyo aspecto es el siguiente:
Los nmeros de las filas de MSExcel se encuentran saltados (2, 6, 10, 14, etc.), lo
que indica que existen filas que no se estn mostrando:
www.edutecno.com
Excel 2007
Suite Ofimtica
Interprete +
como
para ver ms
www.edutecno.com
Excel 2007
Suite Ofimtica
Opciones de esquema
Al usar la herramienta Consolidar (tambin en Subtotales) habr notado que aparecen algunos
botones a la izquierda de los ttulos de fila, y en la parte superior izquierda de la hoja, botones de
nivel de esquema, que en el ejemplo anterior van desde el 1 al 2.
Los botones de esquema, por lo general, slo son aprovechados por los usuarios cuando utilizan
las dos herramientas que los generan, sin saber que pueden ser obtenidos manualmente, al
solicitarlo a MSExcel.
En la planilla siguiente, utilizaremos estas opciones:
Aqu, por ejemplo, (en la ltima columna) tenemos un Total Final que, en su clculo, depende de
todas las columnas numricas que estn a la derecha de Fecha.
Por lo tanto, podramos desear poder ocultar las columnas intermedias para ver un resumen,
(cuando estimemos conveniente) consistente en slo el Total Final junto al da de la operacin.
De la misma forma, podemos querer ocultar el detalle diario para ver, solamente, los totales de
ese da.
www.edutecno.com
Excel 2007
Suite Ofimtica
Crear Esquemas
Observe que junto a la fila 10 aparece un botn de Esquema que actualmente tiene
el signo menos (-)2. Al presionar ese botn, el detalle del da 22 se oculta, y MSExcel
slo nos muestra el Total Da que nosotros hemos calculado.
www.edutecno.com
Excel 2007
Suite Ofimtica
c) Repita el mismo procedimiento para las filas 11 a 16 para obtener el resultado que
se muestra en la imagen siguiente:
d) Ahora podemos seleccionar desde la fila 4 a 17 (es decir, el detalle de ambos das,
ms los subtotales de cada uno de ellos) y volver a seleccionar la ficha
Datos/Agrupar Con esto obtendremos en un slo grupo todo el detalle, pero
adems se completan los niveles de esquema en la parte superior hasta llegar al
nmero 3:
Tal como en las herramientas de MSExcel que usan esquemas, aqu el nivel 1
muestra solamente el Total General, el nivel 2 muestra los subtotales, y el nivel 3
muestra todos los detalles.
Ahora bien, en las columnas la situacin es un poco ms compleja: Monto, Tasa y Plazo son datos
que, si bien estn relacionados conceptualmente, son completamente independientes entre ellos:
La Cuota est calculada en base a la funcin financiera PAGO, que utiliza como
parmetros los tres valores anteriores.
El Total parcial se obtiene de multiplicar la cuota por el plazo.
Hurfanos 863 Piso 2, Santiago.
+56 (2) 439 88 00
www.edutecno.com
Excel 2007
Suite Ofimtica
Note que, al estar centrado dentro de la planilla el ttulo Crditos Colocados, MSExcel no
permite seleccionar un grupo de columnas. Para solucionar esto es necesario seleccionar el ttulo,
y a travs de la ficha Inicio, deshabilitar la casilla Combinar celdas.
Una vez seleccionadas las columnas, debe ir a la ficha Datos/Agrupar. El resultado debiera ser
similar al de la imagen siguiente:
www.edutecno.com
Excel 2007
Suite Ofimtica
Al no existir una relacin matemtica entre las columnas como la que se da entre las filas, MSExcel
asume que lo que deseamos hacer es extender el esquema recin construido para que abarque
dos columnas ms.
La nica forma de solucionar el problema es desagrupar (cortar) el grupo construido. Para ello:
a) Seleccionar la columna en la que se quiere desagrupar (cortar) el grupo. En nuestro
ejemplo, se trata de la columna F.
Seleccionar dentro de la ficha Datos/ Desagrupar.
Una vez seleccionada la opcin y presionado Aceptar, obtendremos el siguiente resultado:
Ahora, tal como desebamos al comienzo, tenemos en un grupo las celdas que determinan el
Total, y en otro el Seguro. Al ocultar los detalles, obtendremos:
Borrar Esquemas
Para eliminar esquemas que se han creado, basta con seleccionar las columnas o filas incluidas en
el grupo a eliminar.
Una vez realizado esto, debe ir a la ficha Datos/Desagrupar. Con esto, el grupo desaparece, junto a
los botones de esquema que MSExcel haba generado.
www.edutecno.com
Excel 2007
Suite Ofimtica
Buscar Objetivo
La herramienta Buscar Objetivo permite alcanzar un valor determinado de una celda (que contiene
una frmula) modificando el valor contenido en otra celda de la que tiene dependencia, ya que al
estar relacionada directa o indirectamente, MSExcel por medio de iteraciones puede una formula
o funcin, con la primera.
Para entender el funcionamiento de esta herramienta se desarrollar el siguiente ejemplo:
www.edutecno.com
Excel 2007
Suite Ofimtica
e) En para cambiar la celda haga un click en la que celda que se desea tome un valor
determinado. En este ejemplo, se debe hacer click en la celda B8, que es la que
contiene el costo de la Regin 5.
Con esto buscamos cambiar el valor de la celda objetivo, E3, desde 4.420,9 a 4.000.
Pero este ajuste lo realizaremos cambiando el valor de la celda B8, cambiando
(bajando) su costo.
f)
www.edutecno.com
Excel 2007
Suite Ofimtica
Solver
Como se mencionaba en el prrafo precedente, Solver es una herramienta que cumple similares
funciones que Buscar objetivo, pero es ms compleja, permitiendo solucionar problemas como los
descritos ms arriba.
Puede ser, sin embargo, que en algunos casos no aparezca la opcin Solver en la ficha
Herramientas. Esto es porque no se ha instalado la opcin. Solver es un Complemento que por
defecto est desintalada por ser una herramienta de carcter avanzado.
Uso de Solver
Para ver el funcionamiento de esta herramienta, construiremos la siguiente tabla:
Esta tabla contiene las siguientes formulas, en
las siguientes celdas:
Valor de Venta
=B4*B19
Costo de Venta
=B4*B20
Ganancia Bruta
=B6-B7
Total Gastos
=SUMA(B10:B12)
Ganancia Neta
=B8-B13
www.edutecno.com
Excel 2007
Suite Ofimtica
Lo que se desea es:
Ajustar el margen de ganancia de 8% a 12% (Objetivo),
Cambiando los valores de las celdas Unid. Vendidas, Sueldos y Publicidad
(variables o como lo seala MSExcel Celdas cambiantes).
Para resolver esto:
a) Seleccionar la celda B17 (celda activa), que es la que contiene el valor que
deseamos cambiar, y que est relacionada con las celdas ya mencionadas3.
b) Seleccionar la ficha Datos/Solver, lo que har aparecer el siguiente cuadro de
dilogo:
c) En la casilla Celda objetivo confirme la celda cuyo valor desea modificar (si la
seleccion previamente debera ser la B17.
d) En la casilla Valor de la celda objetivo dispone de las opciones Mximo, Mnimo
y Valores de:. Aqu debe seleccionar la opcin que ms se ajuste a la resolucin
del problema para el ejemplo es Valores de.
e) En la casilla Cambiando las celdas se debe hacer click en las celdas que desea
cambiar para obtener el valor objetivo.
Cada vez que selecciona una celda, debe presionar ";" lo que indicar que son
celdas separadas. Tambin es posible seleccionar, si fuese necesario, un rango
completo.
f)
Estos son los datos mnimos necesarios para el funcionamiento de Solver, por lo
que se debe presionar Resolver. Esto har aparecer el siguiente cuadro:
Esta seleccin slo ayuda a que est preseleccionada en el cuadro de dilogo Solver
www.edutecno.com
Excel 2007
Suite Ofimtica
Restricciones
Una de las grandes diferencias entre Solver y Buscar objetivo es que Solver permite darle a
MSExcel restricciones que limiten los cambios que har a las celdas.
En nuestro ejemplo, podemos pedirle a MSExcel que deseamos modificar la celda margen de
ganancia a 12%, cambiando el precio del producto, el cual no debe, sin embargo, superar los 42.
www.edutecno.com
Excel 2007
Suite Ofimtica
Mayor que
Igual a
<=
Menor que
"ent"
"bin"
Informes
Solver nos entrega, adems, la posibilidad de obtener tres tipos de informes:
informes de Resultados
informes de Sensibilidad
informes de Lmites
Estos se obtienen al seleccionarlos en el cuadro de dilogo final de Solver (ver Ilustracin 5 Cuadro de
Dilogo Resultados de Solver pgina 18)
Cada uno de estos informes puede ser pedido cada vez que se ejecuta Solver,
independientemente si usamos la solucin propuesta o restablecemos los valores originales, y en
cada ocasin se crea una nueva hoja con el nombre del informe con un nmero correlativo.
El informe de Respuestas
El informe de Respuestas nos indica cul es la celda objetivo, su valor original y el valor conseguido
por Solver. Nos muestra, adems, los valores originales y finales de las celdas que hemos pedido
que cambie, y adems nos muestra las restricciones que hubisemos solicitado, y el grado de
divergencia con el resultado final.
www.edutecno.com
Excel 2007
Suite Ofimtica
Reporte: Muestra una lista con la celda objetivo y las celdas ajustables con sus
valores originales y sus valores finales, las restricciones y la informacin acerca de
las mismas.
Informe de Sensibilidad
Facilita informacin acerca de la sensibilidad de la solucin a que se realicen pequeos cambios en
la frmula definida en el cuadro Definir celda objetivo del cuadro de dilogo Parmetros de
Solver o de las restricciones. No se genera este informe para los modelos que tengan restricciones
enteras.
En modelos no lineales, el informe facilita los valores para las gradientes y los multiplicadores de
Lagrange. En los modelos lineales, el informe incluye costos reducidos, otros precios, coeficiente
de objetivos (con aumentos y disminuciones permitidos) y rangos de restricciones hacia la
derecha.
Reporte: muestra el gradiente reducido (precio sombra) de cada variable y los
multiplicadores de Lagrange (indicador de holgura de restriccin) para cada
restriccin
El informe de Lmites
El informe de Lmites es vlido slo cuando hemos sujeto alguna celda a restriccin. En este caso,
este informe nos muestra cul habra sido el valor de la celda objetivo de cumplir con el lmite
inferior y/o superior que hubisemos puesto como restriccin.
Reporte: Muestra una lista con la celda objetivo y las celdas ajustables con sus
valores correspondientes, los lmites inferior y superior de cada variable que hacen
posible una solucin factible, as como los valores del objetivo. No se genera este
informe para los modelos que tengan restricciones enteras. Los lmites inferior y
superior son los lmites de cada variable que hacen una solucin factible (que
cumpla las restricciones)
www.edutecno.com
Excel 2007
Suite Ofimtica
Por medio del botn Agregar se comienzan a definir los nuevos escenarios, a travs del siguiente
cuadro de dilogo:
www.edutecno.com
Excel 2007
Suite Ofimtica
Los valores que aparecen son los que actualmente contiene la celda. Debern ser modificados de
acuerdo a los valores que deseamos que tome nuestro escenario. Estas casillas slo aceptan
valores, y no referencias.
Podemos repetir los pasos anteriores para crear ms de un escenario con el fin de analizar
mltiples combinaciones de datos.
Si lo que se desea es modificar un escenario ya existente, se debe seleccionar dicho escenario en la
lista que nos entrega el Administrador, y enseguida presionar el botn Modificar. MSExcel nos
mostrar el cuadro que indica las celdas cambiantes con sus valores (ver figura anterior).
Hurfanos 863 Piso 2, Santiago.
+56 (2) 439 88 00
www.edutecno.com
Excel 2007
Suite Ofimtica
Si, por el contrario, se desea eliminar un escenario, se debe seleccionar este escenario y luego
presionar el botn Eliminar.
www.edutecno.com
Excel 2007
Suite Ofimtica
Validacin
En MSExcel es posible condicionar el ingreso de datos dentro de una planilla, de acuerdo a ciertos
criterios. Estas condiciones se aplican por medio de una Validacin.
El Cuadro de Dilogo anterior, permite establecer las condiciones que impondremos en la celda
cada vez que se ingresen datos en las celdas seleccionadas.
La opcin Cualquier valor, que viene por omisin, implica que las celdas seguirn funcionando
como lo hacen normalmente en MSExcel. Es decir, aceptarn cualquier valor (incluidos textos) que
deseemos ingresar.
La opcin Nmero entero slo permite ingresar nmeros, los que no pueden ser fraccionarios (el
nmero 5,42, por ejemplo, no estara permitido). En caso de seleccionar esta opcin, debe
establecer otras restricciones, como el nmero mnimo, mximo, o el intervalo dentro del cual
debe encontrarse el valor para ser aceptado.
Decimal permite ingresar nmeros que contengan decimales. Al igual que en el caso anterior,
debemos establecer el intervalo dentro del cual debe encontrarse el nmero para ser aceptado.
Hurfanos 863 Piso 2, Santiago.
+56 (2) 439 88 00
www.edutecno.com
Excel 2007
Suite Ofimtica
La opcin Lista nos permite establecer una lista de posibles valores (limitar los datos a una lista),
que se debe indicar como rango, y luego, en la celda para la cual establecimos esta validacin,
genera una lista desplegable que permite seleccionar el elemento a ingresar.
Como puede ver, en el cuadro de dilogo aparece la casilla Origen. En ella debemos ingresar el
rango en el cual se encuentran los componentes de la lista que permitiremos en esta celda, que en
nuestro caso corresponde al rango A2:A5.
A la derecha, puede ver las casillas Omitir blancos, que al estar seleccionada, acepta el ingreso
de celda vaca como vlida. La casilla Celda con lista desplegable, al estar seleccionada, mostrar
una lista desplegable en la celda para que podamos seleccionar el tem de la lista. Una vez
establecidos los parmetros, al presionar activar la celda C1 mostrar un botn de lista que al
presionar, se ver as:
www.edutecno.com
Excel 2007
Suite Ofimtica
La opcin de validacin Fecha slo permitir datos de este tipo. Al seleccionar esta opcin se debe
establecer un intervalo. Lo mismo ocurre cuando seleccionamos la opcin Hora.
Longitud del texto nos permite establecer cul ser el tamao mnimo o mximo que debe tener
un texto para ser aceptado (medido en caracteres) o bien, el intervalo dentro del cual debe
encontrarse la cantidad mencionada.
Mensajes
Las opciones de validacin de MSExcel permiten dos tipos de mensajes: el mensaje de entrada y el
mensaje de error.
El mensaje de entrada debe ser establecido en la ficha Mensaje entrante en el cuadro de dilogo
de Validacin.
Este mensaje puede incluir cualquier frase o palabra que el usuario establezca, y ser mostrado
cada vez que se seleccione la celda.
Habitualmente se utiliza para incluir mensajes de advertencia que le indiquen al usuario el tipo de
dato que se espera introduzca.
Los mensajes de error, que se establecen en la ficha Mensaje de error del cuadro de dilogo
Validacin, nos permiten establecer qu mensaje le ser mostrado al usuario cada vez que ingrese
un dato no permitido. Al igual que el anterior, este mensaje admite cualquier texto que queramos
fijar.
En caso de no establecer ningn mensaje de error, MSExcel usa el mensaje que trae incorporado,
que se muestra a continuacin:
El mensaje anterior se gener porque el texto ingresado en la celda C1 no forma parte de la lista
A2:A5 que configuramos inicialmente
www.edutecno.com
Excel 2007
Suite Ofimtica
Como ha podido ver, las opciones de validacin pueden ser de mucha utilidad cuando necesitamos
que los datos de nuestros usuarios respondan a ciertas caractersticas y no sean ingresados de
manera arbitraria. Adems, permiten evitar errores en las frmulas, al obligar al usuario a ingresar
nmeros que sean vlidos para los clculos ingresados en nuestra planilla.
www.edutecno.com
Excel 2007
Suite Ofimtica
Formato Condicional
Un formato condicional es una propiedad que se le da a la celda que consiste en que se puede
personalizar un formato dependiente del valor contenido en alguna celda u condicin lgica que
resulte de una funcin.
El formato se limita a las cualidades de formato celda, por lo que la altura de fila o ancho de
columna no son considerados
Dentro de las alternativas aparecen para nmeros (entre, mayores, menores, etc)
www.edutecno.com
Excel 2007
Suite Ofimtica
www.edutecno.com
Excel 2007
Suite Ofimtica
www.edutecno.com
Excel 2007
Suite Ofimtica
Filtros
Los filtros son herramientas de manejo de datos que nos permiten seleccionar informacin dentro
de una base, para su anlisis. Dentro de los filtros, existen dos tipos que difieren en sus
caractersticas y manejo:
Autofiltro (Curso Intermedio)
Filtro Avanzado, que es lo que revisaremos a continuacin.
Filtro Avanzado
Filtro Avanzado nos permite, al igual que Filtro, seleccionar registros en una tabla de MSExcel. El
Filtro Avanzado, entre otras mejoras, cuenta con:
La posibilidad de rescatar el resultado de lo filtrado y copiarlo en otro lugar del
libro.
Adems es posible seleccionar slo algunos campos o columnas del total original.
www.edutecno.com
Excel 2007
Suite Ofimtica
Parte
Pre
cio
Emp
resa
Locali
dad
123
1.230 Log
Madrid
213
126
134
142
150
158
166
114
218
230
196
140
2.190
3.425
3.490
3.555
3.620
3.685
3.750
3.280
1.221
1.230
1.230
2.190
Madrid
Madrid
Sevilla
Sevilla
Parla
Parla
Sevilla
Madrid
Sevilla
Parla
Parla
Sevilla
Parte
Pre
cio
>2200
Parte
Log
Car
Log
Car
Car
Mun
Mun
Car
Log
Log
Log
Mun
Emp
resa
Locali
dad
Empresa
Accin:
La primera opcin que encontramos es la Accin que el Filtro va a realizar. Las posibilidades son:
filtrar la lista sin moverla a otro lugar (que es lo que hace el Autofiltro),
copiar a otro lugar. Permite dejar intacta nuestra base original y obtener en otro
lugar el resultado del filtro (rango de destino).
www.edutecno.com
Excel 2007
Suite Ofimtica
Rango de Lista
Una vez que hemos seleccionado la segunda accin, debemos indicarle el Rango de la Lista. Para
indicarlo con el puntero podemos presionar el botn que contiene la flecha diagonal de color rojo,
lo que minimizar el cuadro de dilogo, permitindome seleccionar el rango.
Rango de criterios
A continuacin se debe indicar el rango de criterios. Este rango est compuesto, en todos los
casos, por un encabezado que debe ser copia fiel del encabezado de la base, ms los criterios que
queremos que MSExcel use para filtrar.
Estas son las dos lneas que encontramos a continuacin de la base. En este caso, el nico campo
que contiene un criterio para filtrado es el campo Precio, del cual seleccionaremos slo aquellas
Partes cuyo valor sea inferior a 2.200.
Pre
cio
Emp
resa
>2200
Locali
dad
Madrid
o bien:
Parte
Pre
cio
Emp
resa
Locali
dad
>2200
Madrid
www.edutecno.com
Excel 2007
Suite Ofimtica
Caso 1
En el primer caso, por estar >2200 y Madrid en la misma fila, MSExcel mostrar aquellos
registros cuyo
{ precio sea mayor a 2.200} Y {cuya localidad sea Madrid}.
Caso 2
En el segundo caso, al estar en filas distintas, MSExcel mostrar aquellos registros cuyo
{precio sea mayor a 2.200} O {cuya localidad sea Madrid}.
Funciones de Formulario
Pese a lo equvoco del nombre, estas funciones de MSExcel permiten administrar una base de
datos, tanto para agregar o eliminar registros como para seleccionar un grupo de registros a travs
de algn criterio.
Para acceder a estas funciones debemos estar posicionados en cualquier celda de las que
componen la base de datos, para luego buscar de la cinta de comandos personalizados
Formulario. Esto nos mostrar la siguiente ventana:
www.edutecno.com
Excel 2007
Suite Ofimtica
Como puede verse, las fichas que aparecen en la ventana corresponden a los nombres de los
campos de nuestra base de datos. Las casillas con informacin que vemos al lado de las fichas
corresponden a los datos del primer registro de la base de datos.
La barra de desplazamiento vertical que se encuentra entre los datos y los botones nos permite
movernos a travs de los registros que componen la base.
El mensaje 1 de 36, que aparece sobre el botn Nuevo indica que el registro que vemos es el
primero de un total de 36 registros disponibles.
Podemos realizar modificaciones a los datos que componen el registro en forma inmediata.
Botones
Nuevo
Eliminar
Restaurar
Buscar
Criterios
Cerrar
Los criterios de seleccin de registros pueden ser puestos para un slo campo o para varios
campos simultneamente. As, por ejemplo, podemos seleccionar a aquellos que trabajen en el
departamento Diseo, y en la seccin Fax.
Al establecer criterios, la barra de desplazamiento dejar de moverse a travs de todos los
registros, para hacerlo slo a travs de los registros que cumplen con los criterios establecidos. Los
botones Buscar comenzarn a trabajar de la misma forma.
Funciones de Bsqueda
Las funciones de bsqueda son pequeas funciones que nos permiten, a travs de un dato, buscar
la informacin correspondiente en la base. Esta informacin corresponder a un registro puntual
de la base de datos.
Existen dos de estas funciones, Buscar Vertical y Buscar Horizontal, las que trabajan en forma casi
idntica.
www.edutecno.com
Excel 2007
Suite Ofimtica
www.edutecno.com
Excel 2007
Suite Ofimtica
APELLIDO
NOMBRE
CARGO
1234-5
PEREIRA
NANCY
ASISTENTE COMERCIAL
6789-1
CAUDILLO
JOSE LUIS
REPRESENTANTE
1011-2
HURTADO
YVONNE
REPRESENTANTE
9834-6
FABRE
JULIAN
REPRESENTANTE
5694-8
LATORRE
JEANNINE
REPRESENTANTE
5364-8
KAPLAN
PATRICIA
ASISTENTE COMERCIAL
1012-7
SIYAMA
FRANCISCO
REPRESENTANTE
6548-9
KAPLAN
JULIAN
ASISTENTE COMERCIAL
Ordene enseguida la tabla por RUT (Para esto, debe seleccionar la tabla, ir a la ficha
Datos/Ordenar, y luego indicar que desea hacerlo por RUT).
Si cre la tabla a partir de la celda A1, escriba lo siguiente a partir de la celda A15:
rut:
apellido:
nombre:
cargo:
www.edutecno.com
Excel 2007
Suite Ofimtica
Ahora podemos copiar la formula al resto de las celdas (nombre y cargo), pero cuidando de
cambiar el indicador de columna (3 para nombre y 4 para cargo). Veremos entonces que,
junto a los textos, aparecen los datos correspondientes al Rut que hemos anotado en celda B15.
Podemos cambiar este RUT, y veremos que la informacin mostrada en las celdas cambia, de
acuerdo al RUT que hayamos ingresado.
En la funcin antes indicada aparecer una opcin llamada Ordenado, ste nos permitir una
mejor bsqueda y entrega de informacin al momento de usar BUSCARV. En el ejemplo anterior
se uso la opcin de FALSO, ya que buscara un valor exacto en la Matriz de Bsqueda, sta es la
ms utilizada, pero en este capitulo veremos el uso de la otra opcin, VERDADERO.
Para ver el desempeo de la opcin, construya la siguiente tabla:
SUELDO
BASE
UBIC.
Sucursal 2
693.520
Sucursal 1
276.485
Casa Matriz
338.453
Sucursal 2
451.715
Sucursal 2
418.791
Casa Matriz
194.927
Sucursal 1
483.466
Casa Matriz
264.145
BONO
BONO
100.000
10%
200.000
300.000
400.000
500.000
600.000
12%
15%
17%
20%
25%
www.edutecno.com
Excel 2007
Suite Ofimtica
Si observa el ejercicio no existen valores exactos para los sueldos base buscados, por lo que
BUSCARV deber entregar los valores ms prximos debajo de lo graduado en la tabla menor, esto
es por ejemplo:
Si se desea buscar el porcentaje de $190.000 y existe una graduacin de 10% para los sueldos entre
$100.000 y $199.999, BUSCARV le dar este porcentaje y no el 20% de la siguiente graduacin,
independiente que este ms cerca del $200.000 que de $100.000.
En la celda C2 (junto a $693.520), escriba lo siguiente:
=BUSCARV(B2;$A$11:$B$17;2;VERDADERO)
En la celda aparecer el valor correspondiente a este Sueldo Base, o sea, 25%
Para el caso que nuestra base tenga una estructura en filas (las filas representan los campos y las
columnas los registros), debemos verificar que la fila en la que deseamos buscar datos sea la
primera, y que se encuentre ordenada de menor a mayor. Enseguida, la formula a utilizar es la
siguiente:
=BUSCARH(valor_a_buscar;matriz_de_busqueda;indicador_de_fila)
Como esta base no contiene los campos en columnas sino en filas, el ltimo no corresponde al
nmero de columna, sino a la fila de la cual deseamos extraer los datos.
Rango de Criterios
Las funciones de Base de Datos requieren para su operatoria que exista, adems de la base de
datos, una zona donde se encuentre el nombre del campo al cual deseamos aplicar alguna
condicin, el que debe ser idntico al nombre del campo en la base de datos (para evitar
problemas con esto, se recomienda copiar el nombre del campo desde la base de datos al rango
de criterios). Bajo este rtulo ir el criterio que utilizaremos para realizar nuestros clculos.
Para revisar estas funciones utilizaremos la planilla mostrada a continuacin.
Hurfanos 863 Piso 2, Santiago.
+56 (2) 439 88 00
www.edutecno.com
Excel 2007
Suite Ofimtica
En la celda H1 de la planilla, escriba o copie el rtulo SALARIO, puesto que sobre ese campo
aplicaremos nuestros criterios. Bajo esta celda escriba >35000, que es el criterio que
utilizaremos.
La parte superior de la planilla debiera verse como muestra la imagen de la pgina siguiente:
De ahora en adelante, las celdas H1 y H2 sern nuestro rango de criterios. Todas las operaciones
que realicemos considerarn slo los registros que cumplan con la condicin SALARIO mayor que
35.000.
En estas operaciones pueden utilizarse mltiples criterios para una misma funcin. En ese caso, el
rango de criterios debe construirse de la forma ya indicada, agregando hacia la derecha los
nombres de los campos que llevarn criterios.
www.edutecno.com
Excel 2007
Suite Ofimtica
En la seccin izquierda del cuadro de dilogo, que muestra las categoras en las cuales estn
clasificadas las funciones de MSExcel, seleccionamos Base de Datos. Aparecern, a la derecha,
las funciones de dicha categora, ordenadas alfabticamente.
Busque y seleccione la funcin BDSUMA. Al presionar Aceptar, se abre el siguiente cuadro de
dilogo, que nos pide los parmetros que esta funcin requiere.
En la casilla Base_de_datos se debe ingresar el rango que contiene la base de datos completa,
incluyendo los encabezados de los campos (si ha usado un nombre de rea para definir el rango de
la base de datos, puede escribirlo en la casilla, recordando no usar comillas). En nuestro caso, el
rango de la base de datos es A1:F37.
La casilla Nombre_de_campo nos pregunta por el nombre del campo que contiene los valores
que, en este caso, deseamos sumar. El nombre del campo debe ser escrito entre comillas. Si lo
desea, tambin tiene la posibilidad de usar el nmero que ocupa la columna a calcular dentro de la
base de datos. Este nmero no debe ir en comillas. En nuestro caso, entonces, podemos usar
indistintamente el nmero 5 (puesto que los sueldos estn en la quinta columna de la base de
datos), o bien SALARIO.
Finalmente, debemos indicar, en la casilla Criterios, el rango de criterios que deseamos utilizar, y
que, en nuestro caso, corresponde al rango H1:H2.
La ventana debiera aparecer de la siguiente forma:
www.edutecno.com
Excel 2007
Suite Ofimtica
Una vez que hemos completado la informacin, presionamos el botn Aceptar. En la celda H5
debiera aparecer el valor $ 238.800, que es la suma de todos aquellos sueldos mayores a $ 35.000.
Para calcular el promedio de esos sueldos, debemos ubicarnos en primer lugar en la celda H6 y
luego llamar al Asistente de funciones. En la categora Base de Datos debemos seleccionar la
funcin BDPROMEDIO. Esta funcin nos pedir los mismos parmetros que la funcin anterior, y
que, en este caso al menos, son los mismos ya ingresados. Es decir, base de datos es A1:F37, la
columna a sumar es SALARIO o 5, y los criterios se encuentran en H1:H2. Una vez ingresada la
informacin y ya presionado el botn Aceptar, obtendremos el valor $ 39.800.
Para finalizar, realizamos exactamente la misma operacin, pero ahora con la funcin BDCONTAR.
A travs de ella sabremos el nmero de personas cuyo salario es superior a $ 35.000 es de 6.
www.edutecno.com
Excel 2007
Suite Ofimtica
Tablas Dinmicas
Si se construye la tabla siguiente, podremos ver que los clculos que aparecen en la parte inferior
presentan ciertas dificultades a la hora de ser realizados:
Producto
Lcteos
Lcteos
Verduras
Lcteos
Lcteos
Verduras
Verduras
Lcteos
Verduras
Lcteos
Verduras
Lcteos
Verduras
Lcteos
Lcteos
Lcteos
Verduras
Verduras
Lcteos
Total ventas
A
o
1992
1992
1992
1992
1992
1992
1992
1992
1993
1993
1993
1993
1993
1993
1993
1993
1993
1993
1993
Me
s
Ago
Dic
Jul
Jul
Jun
Oct
Oct
Oct
Apr
Dic
Dic
Ene
Feb
Feb
Mar
Mar
Oct
Sep
Sep
Ventas
4.873
7.686
797
7.612
5.575
8.165
7.191
3.338
450
2.733
7.047
6.544
4.923
8.076
8.751
2.741
6.955
2.956
75
Vende
dor
Regin
2.730
5.563
3.868
3.656
9.970
983
39
1.695
9.265
2.790
9.888
9.550
8.160
3.670
1.773
6.290
8.722
1.242
3.216
Buchanan
Davolio
Buchanan
Buchanan
Davolio
Buchanan
Davolio
Davolio
Davolio
Davolio
Davolio
Davolio
Davolio
Davolio
Buchanan
Davolio
Buchanan
Buchanan
Buchanan
Norte
Norte
Norte
Sur
Este
Sur
Norte
Oeste
Este
Oeste
Oeste
Oeste
Sur
Sur
Oeste
Norte
Este
Oeste
Este
93.070
1992
1993
96.488
Total unidades
Ventas Davolio Norte
Ventas Davolio Sur
Ventas Davolio Este
Ventas Buchanan Norte
Ventas Buchanan Sur
Ventas Buchanan Este
Unida
des
17.618
12.999
6.025
5.670
15.777
7.030
14.877
5.575
5.670
15.777
2.741
12.999
450
7.030
Como se ve, en el cuadro resumen inferior se pretende conocer las ventas divididas por Vendedor,
y a su vez divididas por regin. Estas, finalmente, se dividen por ao. Estos clculos, como se
puede imaginar, son bastante complejos y tediosos de realizar, puesto que es necesario ir
seleccionando celda por celda hasta obtener el resultado buscado. Este procedimiento puede
originar que se comentan errores al seleccionar las celdas, los que a simple vista podran no ser
notados, pero luego ser bastante significativos.
En lugar de hacer este tipo de clculos, entonces, podemos utilizar las tablas dinmicas. sta es,
seguramente, una de las herramientas ms poderosas y verstiles que MSExcel posee para el
www.edutecno.com
Excel 2007
Suite Ofimtica
anlisis de datos. Adems, es bastante sencilla de usar, puesto que cuenta con asistente que nos
gua a travs de los cuatro pasos necesarios para llegar a nuestra tabla.
Para comenzar a construirla, debemos ir a Insertar/Tabla Dinmica. Aparecer entonces el
siguiente cuadro de dilogo:
Este es el primer paso de un total de dos, y consiste en indicar el origen de los datos con los cuales
se construir la tabla. La opcin por omisin un rango, de habernos ubicado dentro de la base de
datos aparece marcado automaticamente. Tambin se pueden usar datos externos (como una
base de datos Dbase, Foxpro, Etc.), rangos que hayan sido usados con una funcin Consolidar u
otra Tabla Dinmica. Una vez indicado el origen de los datos, se presiona el botn Siguiente >.
Panel de Tabla
Dinmica
Vista de Tabla
Dinmica
Para disear la tabla dinmica de toman los campos de la tabla y se van ubicando en los distintos
sectores fila, columna, datos o valores los elementos que se usarn,
www.edutecno.com
Excel 2007
Suite Ofimtica
La seccin PAGINA har que ese campo, por ejemplo Ao, sea convertido en una lista desplegable,
la que nos muestra los aos disponibles. Al seleccionar alguno de ellos, el contenido de la tabla
cambiar para mostrarnos slo los datos correspondientes a ese Ao. Tambin se incluye, en la
lista desplegable, la opcin (Todos), que nos mostrar toda la informacin, independiente del
Ao.
La seccin COLUMNA nos permite ubicar los campos que deseamos que nuestra tabla muestre
ordenados en columnas. Puede ser ubicado ms de un campo en esta seccin. De ubicar ms de
un campo, el primer campo ubicado aparecer subdividido por el segundo. De ubicar un tercer
campo, ste subdividir, a su vez, al segundo.
La seccin FILA funciona exactamente igual que la seccin COLUMNA, con la diferencia que los
datos puestos all estarn ordenados en filas.
La seccin DATOS sirve para ubicar los campos que deseamos que la tabla muestre como
resultado o valor.
www.edutecno.com
Excel 2007
Suite Ofimtica
MS-Query
Microsoft Query se usa para recuperar datos desde un origen de datos externo.
Puede utilizar Microsoft Query para crear una consulta y recuperar los datos que desee de un
origen de datos externo. Por ejemplo, puede recuperar datos de Microsoft MSExcel acerca de un
producto especfico por regin. Tambin puede crear una consulta sencilla utilizando el Asistente
para consultas o puede crear una ms compleja utilizando las funciones avanzadas de Microsoft
Query.
Para utilizar Microsoft Query con el fin de recuperar datos externos, debe:
Tener acceso a un origen de datos externo Si los datos no se encuentran en su equipo local, es
posible que tenga que pedir una contrasea, un permiso de usuario o cualquier otra informacin
acerca de cmo conectarse a la base de datos al administrador de la base de datos externa.
Para trabajar en este capitulo usaremos 2 Hojas de un Libro de MSExcel.
Hoja 1 llamada Datos Personales
www.edutecno.com
Excel 2007
Suite Ofimtica
En una Hoja nueva iniciaremos la opcin de MS-Query. sta se encuentra en la barra de men
Datos/Obtener datos externos/Nueva Consulta de base de datos...
Aparecer la siguiente ventana con opciones para obtener orgenes de datos externos.
Hurfanos 863 Piso 2, Santiago.
+56 (2) 439 88 00
www.edutecno.com
Excel 2007
Suite Ofimtica
Veremos el Asistente para Consultas activado para comenzar a trabajar, mostrndonos los dos
libros (base1 y base2), recuerde que estos corresponden a los nombres rango que asignamos a las
tablas en las 2 hojas.
Veremos en la parte izquierda de esta ventana los nombres rangos con un + el que nos permitir
si lo presionamos ver los diferentes ttulos de la tabla, repetir lo mismo para la base 2.
Seleccionaremos para la base1 los campos NOMBRE, DIRECCIN, CIUDAD, PAS y de la base2
CARGO, TELFONO y FAX.
www.edutecno.com
Excel 2007
Suite Ofimtica
Para enviar los campos al rea de la derecha de la pantalla podemos hacer doble click sobre la
descripcin. Luego de seleccionar presionaremos SIGUIENTE.
Podremos observar la siguiente ventana de advertencia que nos indicara que no existe una
relacin para las dos tablas que estamos trabajando y que deberemos unirla o relacionarlas
manualmente. Las descripciones o nombre de titulo que nos permitirn la unin o relacin ser el
NOMBRE, nica manera de relacionar que para un NOMBRE existe una direccin y que para ese
mismo NOMBRE existe un cargo.
Presionaremos ACEPTAR para relacionar las dos tablas.
www.edutecno.com
Excel 2007
Suite Ofimtica
Como la tabla no esta relacionada nos muestra la unin de filas (registros) de ambas tablas 10 x 10
(base1 x base2), esto es 100 filas.
Para que nos entregue la unin de todos los campos o columnas (ttulos) debemos relacionar o
unir las dos tablas por el campo NOMBRE de la siguiente manera:
Presione NOMBRE de la base1 y sin soltarlo parece en el NOMBRE de la base2, luego suelte el Click
y vera una lnea delgada uniendo las dos tablas.
Ahora se vern las filas de informacin correspondiente a las dos tablas unidad en la consulta o
Query (10 filas de informacin).
Hurfanos 863 Piso 2, Santiago.
+56 (2) 439 88 00
www.edutecno.com
Excel 2007
Suite Ofimtica
Por otra parte, antes de insertar la nueva tabla resultante en nuestro nuevo archivo (libro)
podemos generar algn criterio especial para estos datos. Si presionar el botn de Ocultar o
Mostrar los Criterios (
ventana de MS-Query.
rea de Criterios
Por ultimo al cerrar la MS-Query nos preguntara en que celda de nuestro nuevo archivo (libro)
deseamos situar los datos provenientes de nuestra consulta.
www.edutecno.com
Excel 2007
Suite Ofimtica
Seleccionaremos la que viene activada en la ventana Hoja de clculo existente, en la posicin $A$1
y luego presionaremos ACEPTAR.
Aparecer en nuestra hoja los siguientes datos:
www.edutecno.com
Excel 2007
Suite Ofimtica
Macros
En palabras sencillas, una macro es una serie de rdenes que el usuario da a Microsoft MSExcel,
con el fin de automatizar ciertas tareas.
Estas rdenes estn escritas en un cdigo especial, derivado del lenguaje de programacin ms
potente que posee Microsoft: Visual Basic for Applications. Este lenguaje est orientado a objetos,
lo que quiere decir que cada cosa que nosotros vemos en la planilla de clculo MSExcel es un
objeto que posee ciertas propiedades a las que se pueden asignar distintos valores. Sobre estos
objetos, adems, podemos ejecutar diversas acciones.
As, por ejemplo, un grupo de celdas (rango) es un objeto que, por ejemplo, puede ser
seleccionado, o bien, puede ser cambiada la fuente (tipo de letra) de esa seleccin. En el primer
caso, se trata de una accin (seleccionar) y en el segundo se trata de una propiedad a la que
asignamos un valor.
Dicho ahora entonces, en trminos ms tcnicos, una macro es una serie de instrucciones en
lenguaje VBA (Visual Basic for Applications), las que consisten en acciones sobre un objeto o en el
cambio de alguna de sus propiedades.
Para obtener una macro, sin embargo, no es necesario en un nivel bsico escribir cada una de
las instrucciones de VBA. MSExcel incluye una herramienta para el trabajo de macros que
simplifica tremendamente la tarea. Se trata del Grabador de Macros. Esta herramienta almacena,
desde que se activa hasta que se detiene, todas las acciones que realicemos en MSExcel, al tiempo
que las va traduciendo a lenguaje VBA. Luego esta macro puede ser ejecutada por el usuario, lo
que har que MSExcel repita, en el mismo orden y secuencia, las instrucciones almacenadas
durante el proceso de grabacin.
Este sistema de generacin de macros es bastante til cuando no se poseen los conocimientos
suficientes, pero al replicar solamente acciones ya realizadas, es absolutamente rgido y bastante
limitado.
Es por estas razones que en un primer momento revisaremos el Grabador de macros, con el fin de
poder utilizar esta herramienta para construir, al menos, la base de nuestra macro, para ms
adelante ver el uso de variables, de controles, cuadros de dilogo y estructuras de control, que nos
permitirn darle a la macro toda la flexibilidad que necesita.
www.edutecno.com
Excel 2007
Suite Ofimtica
El Grabador de Macros
En MSExcel existen dos caminos para construir una macro. El primero, y el ms sencillo, es utilizar
el Grabador de macros de MSExcel. ste permite ejecutar una serie de pasos, los que son
registrados para luego ser reproducidos en el mismo orden y secuencia original.
La reproduccin de los pasos realizados durante la grabacin de la macro es estricta, por lo que si
realizamos n acciones equivocadas antes de realizar lo que desebamos originalmente, esas n
acciones equivocadas se repetirn cada vez que ejecutemos nuestra macro. Dado este mtodo
particular de trabajo, se recomienda confeccionar una pauta, tan detallada como sea posible, de
las acciones a ejecutar, para evitar errores durante la grabacin de la macro y que sta realice
acciones innecesarias o repetitivas.
Para trabajar con las macros debemos activar la ficha Programador y eso se hacen entrando a las
opciones de Excel y dando el tiquet en Show Developer tab in the Ribbon, como se muestra en la
imagen
Para conocer el grabador de macros, construiremos una macro que permita dar formato a los
ttulos de nuestras planillas.
En la celda A1 de una hoja en blanco escriba lo siguiente:
Bajo este ttulo se encuentra nuestra planilla imaginaria, la cual abarca hasta la columna F. Por lo
tanto, queremos que el formato del ttulo sea: centrado entre las columnas A y F, letra Comic Sans
www.edutecno.com
Excel 2007
Suite Ofimtica
MS4, tamao 18, cursiva, de color azul, y el fondo de las celdas en color amarillo. Antes de aplicar
el formato, entonces, activaremos el grabador de macros de la siguiente forma:
a) Seleccione el rango A1:F1 (que es el rango al que aplicaremos el formato).
b) Ejecute de la ficha Herramientas/Macro/Grabar nueva macro.
Aparecer la siguiente ventana:
En la primera casilla, debemos escribir el nombre que daremos a la macro. Este nombre puede ser
cualquier palabra que no sea utilizada por MSExcel (por ejemplo, si estamos haciendo una macro
para imprimir, no podemos usar el nombre Imprimir, pero s cualquier otra palabra similar). En la
casilla para mtodo abreviado debemos presionar Control ms alguna tecla particular. Esto har
que cada vez que presionemos Control + tecla la macro se ejecute. La casilla Guardar macro en:
nos entrega las siguientes opciones:
o
Este libro, lo que hace que la macro sea parte del libro que estamos
usando. Esto impide que podamos utilizar la macro cuando este libro se
encuentre cerrado.
o Libro de macros personal. Este libro se abrir, en forma oculta, cada vez
que iniciemos Microsoft MSExcel, con lo que la macro estar siempre
disponible para ser usada en todos los libros.
o Libro Nuevo, que ubica la macro en un nuevo libro. Tiene las mismas
desventajas que la primera opcin.
No siempre la mejor opcin es guardar las macros en el libro personal de macros, puesto que ste
usar espacio en memoria, lo que har trabajar ms lento el equipo, y en ocasiones la macro est
hecha para trabajar precisamente en un libro particular y no es vlida para otros libros (por
ejemplo, una macro que realice complejos clculos a partir de cierta informacin particular).
La descripcin es un comentario que no tiene ms incidencia que, a la hora de ver un listado de las
macros disponibles podamos ver una leyenda que nos permita identificar cada macro.
Una vez ingresada toda la informacin, presionamos el botn Aceptar. En la barra de estado
aparecer el mensaje Grabando
www.edutecno.com
Excel 2007
Suite Ofimtica
Ahora debemos centrar el texto en el rango A1:F1, ejecutar la ficha Inicio/Formato/Celdas, y all
escoger la ficha Fuente. Debe indicar, entonces, la letra Comic Sans MS, el estilo Regular Cursiva,
el tamao 18 y el color azul. Una vez hecho esto, presionar Aceptar. Enseguida seleccionar, en la
barra de herramientas, el color de fondo amarillo. Nuestro rango debiera aparecer as:
Mtodo abreviado
El mtodo abreviado slo puede ser asignado al momento de iniciar el grabador de macros. ste
consiste en una tecla, que presionada junto a Control (tambin se puede usar la combinacin
Control+Mays+Letra) nos permite ejecutar inmediatamente una macro.
www.edutecno.com
Excel 2007
Suite Ofimtica
El lenguaje VBA
Como vimos en la seccin anterior, nuestra macro funcionar sin que hayamos escrito una sola
lnea de comandos (llamada tambin lnea de cdigo). Sin embargo, cada accin realizada durante
la grabacin, como mencionamos en la introduccin, se traduce en una instruccin VBA.
Este lenguaje es una derivacin, especialmente creada para los programas miembros de Office, del
lenguaje de programacin Visual Basic. Por lo tanto, las macros son programas construidos por
Excel (cuando usamos el grabador) o por nosotros mismos.
www.edutecno.com
Excel 2007
Suite Ofimtica
Ahora bien, estos programas se escriben en una parte especial de Excel llamada Editor de Visual
Basic. A este se puede acceder a travs de la opcin Macro de la ficha Herramientas. Al llamarlo,
tendremos acceso a la siguiente ventana:
La parte superior contiene la barra de Men del Editor de Visual Basic, que contiene todas las
opciones que podemos utilizar en esta seccin. Inmediatamente ms abajo encontramos la barra
de herramientas, que contiene botones que permiten un acceso ms rpido a las mismas opciones
contenidas en la barra de men.
www.edutecno.com
Excel 2007
Suite Ofimtica
mdulos. Sin embargo, para fines de orden, en el caso de proyectos grandes que incluyen muchas
macros, es posible generar los mdulos que deseemos y distribuir en ellos nuestras macros (Para
insertar un mdulo, simplemente tiene que ir a la ficha Insertar y escoger Mdulo).
La ventana que aparece inmediatamente abajo es la que nos muestra las propiedades del objeto
que tengamos seleccionado. En la imagen precedente podemos ver que el objeto seleccionado en
la ventana Proyecto es Mdulo 1, y en la ventana inferior vemos que su nica propiedad es
(Name) (Nombre), la que actualmente tiene el valor Mdulo 1, el que puede ser cambiado por
el usuario.
En la ventana de la derecha podemos ver el contenido, en trminos de cdigo, del mdulo 1, el
que consiste precisamente en la macro creada a travs del grabador. En esta ventana podemos
escribir al igual que en cualquier procesador de palabras bsico, utilizando el teclado y algunos
comandos como Cortar, Copiar y Pegar. Para agilizar la escritura de cdigo, el Editor de Visual
Basic nos va presentando ayuda a travs de una pequea ventana emergente que contiene los
nombres de las instrucciones y su sintaxis:
No todas las propiedad se encuentran divididas en subpropiedades, y las que s los estn
no necesariamente poseen las mismas. Esto variar, entonces, de una propiedad a otra.
Hurfanos 863 Piso 2, Santiago.
+56 (2) 439 88 00
www.edutecno.com
Excel 2007
Suite Ofimtica
Otro ejemplo:
Range(A1:F1).Select
Donde Range(A1:F1) indica que el objeto es el rango comprendido entre las celdas A1 y F1,
mientras que Select es la accin a realizar sobre ese objeto. En este caso, seleccionarlo.
A pesar de lo sealado, existen ciertas instrucciones que tienen su sintaxis propia, la que ser
revisada ms adelante.
Adems de las macros de comandos (macros que ejecutan y automatizan tareas) existen
macros de funcin, que realizan el clculo que el usuario haya estipulado, a partir de
determinados parmetros. En esos casos los parmetros van en parntesis.
Hurfanos 863 Piso 2, Santiago.
+56 (2) 439 88 00
www.edutecno.com
Excel 2007
Suite Ofimtica
Colores distintivos
VBA utiliza ciertos colores para distinguir las palabras que conforman nuestra macro.
El texto de color negro seala a los objetos, las propiedades, sus valores y las acciones que
indicamos VBA debe realizar.
El texto en color azul seala palabras claves de macros que representan instrucciones precisas.
As, por ejemplo, al escribir IfThen (SiEntonces), ambas palabras aparecern en color azul.
Estas palabras corresponden a palabras reservadas que no pueden ser utilizadas como nombres
de variables o nombres de macros.
El texto en color rojo nos indica que hemos cometido algn error en la sintaxis o que esta se
encuentra incompleta. Por lo general, va acompaado de un mensaje emergente de error.
Finalmente, el texto en color verde nos seala que se trata de un comentario que no tiene
incidencia en la ejecucin y funcionamiento de la macro.
Sub form()
'
' form Macro
' Macro grabada por EDUTECNO
'
' Acceso directo: Ctrl+Mays+F
'
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.ShrinkToFit = False
.MergeCells = False
End With
Selection.Merge
With Selection.Font
.Name = "Times New Roman"
.FontStyle = "Negrita Cursiva"
.Size = 18
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 5
End With
With Selection.Interior
www.edutecno.com
Excel 2007
Suite Ofimtica
30
31
32
33
34
.ColorIndex = 6
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End With
End Sub
(Hemos numerado las lneas slo para fines explicativos. Las macros en VBA no utilizan nmeros
de lnea)
Como ya vimos, la lnea 1 indica el comienzo de la macro.
Las lneas 2, 3, 4, 5, 6 y 7 son comentarios agregados por el grabador de macros que incluyen el
mtodo abreviado de ejecucin y el nombre que aparezca como propietario de Excel.
En la lnea 8 aparece una estructura de control denominada With, que en realidad incluye todo el
grupo de lneas hasta la nmero 15, donde encontramos End With. Este grupo lo que hace es
abreviar la escritura de la macro, ya que como vemos, a continuacin de la palabra With se
encuentra el objeto Selection. Podemos ver que las lneas 9 a 14 comienzan por un punto,
omitiendo el objeto. Lo que hace With es indicarles a las lneas siguientes que el objeto con que
trabajan es el se encontraba a continuacin de With, y ese es el que deben utilizar. Por ejemplo,
podemos ver en la siguiente tabla las mismas lneas de macros con y sin With:
Utilizando With
With Selection
.HorizontalAlignment=xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.ShrinkToFit = False
.MergeCells = False
End With
Sin utilizar With
Selection.HorizontalAlignment=xlCenter
Selection.VerticalAlignment = xlBottom
Selection.WrapText = False
Selection.Orientation = 0
Selection.ShrinkToFit = False
Selection.MergeCells = False
Como vemos en la tabla 2, en todas las lneas fue necesario anteponer el objeto Selection,
mientras que en la primera slo lo agregamos a continuacin de With.
Las lneas interiores del With realizan lo que puede ser fcilmente traducible. As, la lnea 9
establece que la propiedad Alineacin Horizontal (HorizontalAlignment) tiene el valor centrado
(otros valores pueden ser xlLeft (Izquierda), xlRight (Derecha).
La lnea 10 asigna el valor Abajo (xlBottom) a la propiedad Alineacin Vertical (VerticalAlignment).
Otros valores son xlTop (Arriba) y xlCenter (Centrado).
La lnea 11 nos dice que la propiedad Ajustar Texto (WrapText) es Falsa (False). El otro valor
puede ser True (Verdadero).
La lnea 12 indica que la orientacin del texto (Orientation) es 0, correspondiendo este nmero a la
cantidad de grados con relacin al plano horizontal. Otros valores pueden ser cualquier nmero
entero entre 90 y 90.
La lnea 13 asigna el valor Falso (False) a la propiedad Reducir hasta Ajustar (ShrinkToFit). El otro
valor puede ser True (Verdadero).
Por ltimo, la lnea 14 dice que no se deben combinar las celdas de dicho rango. El otro valor
posible es Verdadero (True).
www.edutecno.com
Excel 2007
Suite Ofimtica
Como podemos ver, las propiedades que en las ventanas de Excel aparecen con casillas de
verificacin, tambin estn disponibles en las macros, a travs de su nombre en Ingls y su valor
representado por True (seleccionada) y False (no seleccionada).
La lnea 16 indica que las celdas de la seleccin deben ser combinadas (accin similar a la del
botn Combinar Celdas de la barra de herramientas Formato.
La lnea 17 abre un nuevo With, esta vez con el objeto Selection y la propiedad Font. Esto quiere
decir que las lneas siguientes, a partir del punto, hacen referencia a subpropiedades de la
propiedad Font.
La lnea 18 asigna el valor Times New Roman a la subpropiedad Name. Otros valores para esto
son cualquier nombre de fuente disponible en el equipo.
La lnea 19 asigna el estilo Negrita Cursiva a la subpropiedad FontStyle. Los otros valores
disponibles son cualquier nombre de estilo vlido en nuestro equipo (Los ms frecuentes son:
Regular, Negrita, Cursiva y Negrita Cursiva).
La lnea 20 asigna el valor 18 al tamao de letra. Los otros valores disponibles son cualquier
tamao de fuente vlido, generalmente entre 8 y 72.
La lnea 21 indica que el texto no ir tachado (StrikeThrough). El otro valor posible corresponde a
True, que seala que el texto s debe ir tachado.
Las lneas 21 y 22 indican que las propiedades superndice (Superscript) y subndice (Subscript)
son falsas. El otro valor posible, para ambas, es True (Verdadero).
Las lneas 24 y 25 nos sealan que los efectos Contorno (OutlineFont) y Sombra (Shadow) no
deben aplicarse. Al igual que en los casos anteriores, el otro posible valor, para ambas, es True
(Verdadero).
La lnea 26 seala que el texto no va subrayado, mientras que la lnea 27 seala que el color es 5
(VBA maneja cdigos internos de colores).
La lnea 28 indica que se ha dejado de trabajar con el objeto Selection, propiedad Fuente.
La lnea 29 seala que se trabajar con el objeto Selection, propiedad Interior. La lnea 30 asigna
al color de la celda (trama) el nmero 6, equivalente al amarillo. La lnea 31 asigna el diseo de la
trama como Slido, y la lnea 31 asigna el valor Automtico a la propiedad Color de diseo.
Para terminar, la lnea 33 cierra el ltimo With abierto, y la lnea 34 da trmino a la macro.
Uso de Variables
Las variables son espacios de memoria reservados que almacenan un valor que puede cambiar,
cuyo origen puede estar en el usuario, o bien ser el fruto de un clculo realizado en forma interna
por la macro. Las variables en VBA pueden ser de diversos tipos, dependiendo del tipo de dato que
vayan a almacenar y pueden ser o no declaradas, es decir, podemos decirle a Excel que existen
antes de usarlas, o bien omitir este paso y usarlas directamente. Es conveniente, sin embargo,
declararlas, puesto que de lo contrario Excel le asignar un tipo especfico de variables que ocupa
ms recursos de los necesarios.
www.edutecno.com
Excel 2007
Suite Ofimtica
Declaracin de Variables
Para declarar una variable, slo basta con escribir la sentencia Dim, seguida del nombre de la
variable, a continuacin la palabra As y luego el tipo de variable. Es decir:
Dim nombre As Tipo
Los tipos de variables disponibles en Excel son los siguientes:
Boolean, permite slo valores True (verdadero) y False (Falso). Es una variable de carcter lgico.
Integer es una variable que permite guardar nmeros de tipo entero (sin decimales), y de corto
alcance.
Long crea variables que, al igual que la anterior, slo contiene enteros, pero de mayor longitud que
Integer.
Currency puede contener datos numricos con formato moneda, con dos decimales.
Single contiene nmeros fraccionarios, pero al igual que Integer, de menor longitud.
Double puede contener nmeros fraccionarios, pero de mayor longitud que los Single.
Date puede contener datos tipo fecha, en el formato DD/MM/AA7.
String se usa para variables que van a contener texto, cuya longitud puede ser variable. Almacena
hasta 63000 caracteres.
String*x define una variable de tipo texto, pero cuya longitud est determinada por el nmero que
definamos en x.
Variant puede almacenar cualquier tipo de dato sealado en los tipos anteriores.
Por ejemplo, para definir una variable que va a contener nombres, podramos escribir:
Dim nomb As String
Donde nomb es el nombre de la variable y String le indica que contendr cadenas de texto.
Asignacin de valores a una variable
Como sealbamos ms arriba, una variable puede obtener su valor como resultado de un clculo
realizado por la misma macro, o desde el usuario.
En el primer caso, la forma de la instruccin es la siguiente:
Variable = Operacin
Por ejemplo:
saldo = 3500 2700
En el segundo caso existen, entre otras, dos posibilidades: obtener el valor a travs de un cuadro
de dilogo u obtener el valor a partir de una determinada celda. La primera posibilidad ser
analizada ms adelante, cuando revisemos el funcionamiento de las macros con cuadros de
dilogo. La segunda empero, funciona de la siguiente manera:
Range(celda).Select
Variable = ActiveCell
Por ejemplo:
Range(A1).Select
nomb = ActiveCell
La primera lnea es necesaria, a pesar de no tener directa relacin con la asignacin de valor de
una variable, ya que primero debemos decirle a Excel que fije su atencin en la celda que
necesitamos. Enseguida, al estar seleccionada, el objeto pasa a tener otro nombre (ActiveCell) y
luego se realiza la asignacin de valor.
Las variable almacena la informacin en ese formato, pero la mostrar, en alguna celda, de
acuerdo al formato que esta tenga.
Hurfanos 863 Piso 2, Santiago.
+56 (2) 439 88 00
www.edutecno.com
Excel 2007
Suite Ofimtica
Cabe sealar que si la asignacin se realiza al revs (ActiveCell = nomb, por ejemplo), estaremos
traspasando a la celda el valor que actualmente tiene la variable.
Nota: es importante destacar que para el adecuado funcionamiento de la macro, los textos deben
ser digitados en la misma forma en que se encuentran en la figura precedente.
Deber, tambin, seleccionar el rango A2:A10 y asignarle el nombre Fuentes. Al rango B2:B5 el
nombre Estilos. El rango C2:C12 debe llevar el nombre Tamaos, y el rango D2:E11 el nombre
Colores8.
Luego, en la Hoja1 de nuestro libro, debemos crear la siguiente planilla, con la ayuda de la barra
de Herramientas Formulario9:
www.edutecno.com
Excel 2007
Suite Ofimtica
=INDICE(FUENTES;A41;1)
=INDICE(ESTILOS;A42;1)
=INDICE(TAMAOS;A43;1)
=INDICE(COLORES;A44;2)
=INDICE(COLORES;A45;2)
En las celdas sealadas en la tabla debern aparecer los tems seleccionados en las listas
desplegables, a excepcin de los colores, puesto que veremos slo sus cdigos.
Ahora, seleccione la subopcin Grabar nueva macro dentro de la opcin Macro de la ficha
Herramientas. El nombre de la macro ser macrovar. No asigne ningn mtodo abreviado y pdale
que guarde la macro en Este libro.
Cuando la macro se est grabando, seleccione el rango A1:G1 y luego vaya a la ficha Formato. En
este men, seleccione la opcin Celdas. Vaya a la ficha Fuentes y all asigne una fuente, un estilo,
un tamao y un color, sin importar cuales. Luego vaya a la ficha Tramas y seleccione cualquier
color de fondo. Presione Aceptar y detenga el grabador de macros.
Ahora vaya a la ficha Herramientas, seleccione la opcin Macro y dentro de ella la opcin Macros.
Pinche en macrovar y presione el botn Modificar. Elimine las lneas intiles de la macro, hasta que
quede como esta:
Range("A1:G1").Select
With Selection.Font
.Name = "Albertus Xb (W1)"
.FontStyle = "Negrita"
.Size = 9
.ColorIndex = 20
End With
With Selection.Interior
.ColorIndex = 5
End With
End Sub
No se preocupe por lo que aparece al lado derecho de cada signo igual, pues ser distinto
dependiendo de lo que usted haya escogido en las fichas Fuentes y Tramas de la opcin Celdas
de la ficha Formato.
10
www.edutecno.com
Excel 2007
Suite Ofimtica
Range("A1:G1").Select
With Selection.Font
.Name = nomf
.FontStyle = estf
.Size = tamf
.ColorIndex = colfuente
End With
With Selection.Interior
.ColorIndex = colfondo
End With
End Sub
Esta modificacin har que, al ejecutarse la macro, esta asigne a la muestra el formato de acuerdo
a los valores que se encuentran en las celdas B41, B42, B4, B44 y B45. Y si recordamos el
comienzo del ejercicio, esas celdas son las que reciben informacin a partir de lo seleccionado en
las listas desplegables.
Ahora, pinche con el botn derecho del Mouse sobre el botn creado y seleccione la opcin
Asignar Macro. Aparecer una ventana con todas las macros que poseemos, entre las que
debemos seleccionar macrovar.
Seleccione los tems que desee en las listas desplegables y luego presione el botn.
Estructuras de Control
(Nota: Las palabras en parntesis cuadrados son opcionales, y pueden ser omitidos o agregados
de acuerdo a las necesidades de cada macro).
Como ya sabemos, una macro es una serie de instrucciones, las que se ejecutarn ante una orden
del usuario, siempre en el mismo orden. Esto es lo que puede verse a travs del grabador de
Hurfanos 863 Piso 2, Santiago.
+56 (2) 439 88 00
www.edutecno.com
Excel 2007
Suite Ofimtica
macros: cuando ejecutamos una macro que fue grabada, incluso los errores que cometimos
durante la grabacin se repiten, en los mismos momentos en que los incluimos en la macro.
Sin embargo, y dada la naturaleza de algunas macros, existe la necesidad de alterar el
funcionamiento de la macro, para que, ante distintas situaciones, reaccione de distinta manera.
Esto puede hacerse a travs de ciertos bloques de instrucciones, que conducen el flujo de
ejecucin de un programa de acuerdo a ciertas condiciones. Estos bloques de estructuras son las
denominadas estructuras de control.
If
Sin duda una de las estructuras de control ms conocida es If. Esta permite que nuestra macro
verifique si una condicin se cumple, lo que desencadenar ciertas acciones.
La sintaxis de esta estructura es la siguiente:
If condicin-1 Then
[instrucciones-1]
[ElseIf condicin-2 Then
[instrucciones-2]]
[Else
[instrucciones-n]]
End If
Si se cumple condicin-1 se ejecuta el bloque de instrucciones instrucciones-1. Si no se cumple
condicin-1 pero s se cumple condicin-2, entonces se ejecuta el bloque de instrucciones
intrucciones-2. Se pueden seguir agregando subcondiciones ElseIf , y si no se cumple ninguna de
ellas, entonces se ejecuta el bloque de instrucciones instrucciones-n que est dentro de Else.
Ejemplo:
If result >= 4 Then
MsgBox(Aprobado)
Else
MsgBox(Reprobado)
End If
Select Case
Select Case se utiliza en aquellas situaciones en que una variable puede tener distintos valores, y
cada valor, en cada caso, gatillar acciones distintas.
La sintaxis de esta funcin es la siguiente:
Select Case expresin
Case lista_de_valores-1
Instrucciones-1
[Case lista_de_valores-2
instrucciones-2]
[Case Else
instrucciones-n]
Hurfanos 863 Piso 2, Santiago.
+56 (2) 439 88 00
www.edutecno.com
Excel 2007
Suite Ofimtica
End Select
Esta funcin compara el valor de expresin con todos los posibles valores listados en
lista_de_valores-1, lista_de_valores-2, etc. Si encuentra una coincidencia con algn valor dentro de
una de estas listas, ejecuta el bloque de instrucciones correspondiente a la lista de valores en
donde encontr el valor coincidente; en caso de no haber ninguna coincidencia, ejecuta el bloque
de instrucciones instrucciones-n que est dentro de Case Else.
Ejemplo:
Select Case result
Case 0 To 3
MsgBox(Examen en Marzo)
Case 4, 5, 6
MsgBox(Aprobado)
Case 7
MsgBox(Aprobado con distincin!!)
Case Else
MsgBox(Nota no Vlida)
End Select
www.edutecno.com