Computacion e Informatica PDF
Computacion e Informatica PDF
Computacion e Informatica PDF
TÉCNICOS Y
ADMINISTRADORES
INDUSTRIALES
FASCÍCULO DE APRENDIZAJE
COMPUTACIÓN E
INFORMÁTICA
Parte I
CÓDIGO: 89001210
Contenido
ANÁLISIS DE DATOS I.............................................................................................................. 1
FORMATO COMO TABLA .............................................................................................................. 2
Lista de datos ...................................................................................................................... 2
Estructura de una lista de datos.......................................................................................... 2
Uso de las tablas de datos .................................................................................................. 2
Ordenar datos ..................................................................................................................... 8
FILTRO DE DATOS..................................................................................................................... 14
Filtro personalizado ........................................................................................................... 16
Filtro múltiple ..................................................................................................................... 17
Quitar un Filtro................................................................................................................... 18
Utilizar estilos rápidos y crear estilos de formato de tabla ................................................ 18
HERRAMIENTAS DE DATOS ........................................................................................................ 25
Texto en columnas ............................................................................................................ 25
Quitar duplicados .............................................................................................................. 30
VALIDACIÓN DE DATOS ............................................................................................................. 32
Restringir el ingreso de datos ........................................................................................... 32
Validar con intervalo de números...................................................................................... 32
ANÁLISIS Y SI ........................................................................................................................... 37
Uso del administrador de escenarios ................................................................................ 38
Buscar Objetivo ................................................................................................................. 44
Tabla de datos................................................................................................................... 45
Tabla de datos de una variable ......................................................................................... 45
Tablas de datos de dos variables ..................................................................................... 48
CONSOLIDACIÓN DE DATOS Y REFERENCIA 3D .......................................................................... 49
Cuando consolidar datos de varias hojas ......................................................................... 49
Consolide por fórmula ....................................................................................................... 50
REFERENCIAS 3D .................................................................................................................... 55
CUESTIONARIOS ...................................................................................................................... 58
FUNCIONES FINANCIERAS .................................................................................................... 59
GENERALIDADES SOBRE EXCEL EN EL MUNDO DE LOS NEGOCIOS ............................................... 60
USO DE FUNCIONES FINANCIERAS ............................................................................................. 60
Consideraciones del índice de inflación ............................................................................ 60
Tasa nominal ..................................................................................................................... 62
Tasa efectiva (i’) ................................................................................................................ 63
Préstamo de un banco: Función PAGO ........................................................................... 64
Valor presente de la inversión/pagos futuros: Función VA ............................................... 68
Valor futuro de la inversión: Función VF ........................................................................... 70
Número de pagos de inversión: Nper ............................................................................... 73
Función TASA ................................................................................................................... 75
Tasa interna de retorno (TIR)............................................................................................ 76
DESARROLLO DE PROYECTOS CON FUNCIONES FINANCIERAS ..................................................... 78
Comprar frente a un leasing.............................................................................................. 78
Calcular la tasa interna de devolución para un flujo de liquidez no periódico .................. 82
Calcular la tasa interna de devoluciones múltiples ........................................................... 83
CUESTIONARIOS ...................................................................................................................... 84
ANÁLISIS DE DATOS II........................................................................................................... 85
HERRAMIENTAS DE ANÁLISIS ESTADÍSTICO................................................................................ 87
Tendencia lineal de ajuste perfecto automáticamente...................................................... 87
Tendencia geométrica de forma automática..................................................................... 88
Tendencia lineal o geométrica de forma manual .............................................................. 89
Agregar una línea de tendencia a un gráfico .................................................................... 90
Proyectar valores .............................................................................................................. 93
Uso de cuadros de Histogramas para el cálculo de frecuencias individuales y
acumulativas ..................................................................................................................... 96
DEFINICIÓN Y RESOLUCIÓN DE PROBLEMAS CON SOLVER ......................................................... 101
Generalidades sobre Solver............................................................................................ 101
Carga del programa de complemento Solver ................................................................. 101
Cómo configura Solver .................................................................................................... 104
Modificación de forma de búsqueda de soluciones en Solver ........................................ 105
Desarrollo de casos tipo utilizando Solver ...................................................................... 106
CUESTIONARIOS .................................................................................................................... 108
FORMULARIOS ...................................................................................................................... 109
ACTIVACIÓN DE LA FICHA PROGRAMADOR ................................................................................ 110
DISEÑO DE FORMULARIOS ...................................................................................................... 111
Mostrar y ocultar elementos ............................................................................................ 111
Trabajando con Controles ............................................................................................... 112
Uso de los controles de formulario.................................................................................. 113
CUESTIONARIOS .................................................................................................................... 129
MACROS ................................................................................................................................. 130
MACROS................................................................................................................................ 131
Definición......................................................................................................................... 131
Editor de Visual Basic ..................................................................................................... 131
Para que se utilizan las Macros ...................................................................................... 132
Macros VBA con Excel .................................................................................................... 133
Ventajas........................................................................................................................... 133
SEGURIDAD DE MACROS ........................................................................................................ 134
Los Macrovirus ................................................................................................................ 134
Ayudar a proteger archivos de virus en macros ............................................................. 135
Firmas digitales ............................................................................................................... 136
Lista de editores de confianza ........................................................................................ 137
Advertencias acerca de plantillas y complementos instalados ....................................... 137
GRABAR UNA NUEVA MACRO .................................................................................................. 138
EDITAR UNA MACRO UTILIZANDO VISUAL BASIC ....................................................................... 140
ELIMINAR MACROS ................................................................................................................. 141
REFERENCIAS RELATIVAS....................................................................................................... 141
Diferencia entre celda relativa y absoluta ....................................................................... 142
USO DE MACROS EN FORMULARIOS ........................................................................................ 142
PLANTILLAS CON FORMULARIOS Y MACROS ............................................................................. 148
Crear Plantillas personalizadas ....................................................................................... 150
Utilizar Plantillas personalizadas..................................................................................... 151
DESARROLLO DE PROYECTOS CON MACRO Y FORMULARIOS..................................................... 151
CUESTIONARIOS .................................................................................................................... 158
PROGRAMACIÓN CON VBA ................................................................................................. 159
INTRODUCCIÓN AL VISUAL BASIC ............................................................................................ 160
FUNDAMENTOS DE PROGRAMACIÓN VBA ................................................................................ 162
Estructura Secuencial. .................................................................................................... 162
Estructura Condicional. ................................................................................................... 163
Sentencia selección-caso................................................................................................ 165
Estructura Repetitiva. ...................................................................................................... 167
LA VENTANA DEL EDITOR DE VISUAL BASIC .............................................................................. 170
Terminología de Visual Basic.......................................................................................... 171
Programación por eventos .............................................................................................. 172
Convenciones para los nombres de los objetos ............................................................. 172
Formularios ..................................................................................................................... 173
Editando Código .............................................................................................................. 174
CREACIÓN Y USO DE PROCEDIMIENTOS ................................................................................... 175
Procedimientos................................................................................................................ 175
Procedimientos de Evento .............................................................................................. 175
Procedimientos Generales .............................................................................................. 176
Procedimientos Sub ........................................................................................................ 176
Procedimientos Function ................................................................................................. 177
Ámbito de las variables. .................................................................................................. 177
Formas de declaración de variables en un proyecto VB. ............................................... 178
Sentencia Dim ................................................................................................................. 178
Sentencia PRIVATE ........................................................................................................ 178
Sentencia PUBLIC .......................................................................................................... 178
Sentencia GLOBAL ......................................................................................................... 178
Sentencia STATIC........................................................................................................... 178
Resumen de declaración de variables ............................................................................ 179
Forma de conocer el tipo de una variable. Función TypeName ..................................... 179
OBJETOS PROPIEDADES, MÉTODOS Y EVENTOS ....................................................................... 180
Control Etiqueta (Label) .................................................................................................. 180
Control Cuadro de Texto (Textbox)................................................................................. 181
Control Botón de Comando (Commandbutton) .............................................................. 181
Estableciendo Propiedades ............................................................................................ 182
DEFINICIÓN DE VARIABLES, TIPOS DE DATOS Y CONSTANTES .................................................... 183
Option Explicit .................................................................................................................. 183
Tipos de Variables........................................................................................................... 183
Declaración de variables ................................................................................................. 184
Tipos de variables ........................................................................................................... 184
a. Variables Alfanuméricas.............................................................................................. 185
b. Variable Numéricas ..................................................................................................... 185
c. Variable Date ............................................................................................................... 186
d. Variable Boolean ......................................................................................................... 186
Constantes ...................................................................................................................... 186
Operadores ..................................................................................................................... 187
CONSTRUCCIONES: IF – THEN, SELECT CASE ......................................................................... 188
Condicional simple. If .. then ........................................................................................... 188
Condicional doble If...Then...Else ................................................................................... 189
Condicional múltiple Select Case.................................................................................... 190
BUCLES FOR … NEXT, W HILE .. DO ........................................................................................ 192
Do...Loop ......................................................................................................................... 193
For...Next......................................................................................................................... 194
For Each...Next ............................................................................................................... 194
TRABAJAR CON RANGOS DE CELDA ......................................................................................... 196
Utilizando la notación A1 ................................................................................................. 196
Hacer referencia a celdas utilizando números de índice ................................................ 196
Hacer referencia a filas y columnas ................................................................................ 197
Hacer referencia a celdas utilizando una notación abreviada ........................................ 198
Hacer referencia a rangos con nombre........................................................................... 198
Hacer referencia a un rango con nombre ....................................................................... 198
Ejecutar un bucle en las celdas de un rango con nombre .............................................. 199
Hacer referencia a celdas en relación con otras celdas ................................................. 200
Hacer referencia a celdas usando un objeto Range ....................................................... 200
Hacer referencia a todas las celdas de la hoja de cálculo .............................................. 201
Hacer referencia a varios rangos .................................................................................... 201
Usar la propiedad Range ................................................................................................ 201
Usar el método Union...................................................................................................... 201
Usar la propiedad Areas.................................................................................................. 202
Bucles en un rango de celdas ......................................................................................... 202
Seleccionar y activar celdas............................................................................................ 203
Usar el método Select y la propiedad Selection ............................................................. 204
Seleccionar celdas en la hoja de cálculo activa .............................................................. 204
Activar una celda en una selección................................................................................. 205
Trabajar con rangos 3D................................................................................................... 205
Trabajar con la celda activa ............................................................................................ 206
Mover la celda activa....................................................................................................... 206
Seleccionar las celdas que rodean la celda activa ......................................................... 207
TRABAJO CON LIBROS Y HOJAS ............................................................................................... 207
Hacer referencia a hojas por número de índice .............................................................. 207
Hacer referencia a hojas por su nombre ......................................................................... 207
AÑADIR MÓDULOS VBA .......................................................................................................... 208
TRABAJAR CON USERFORMS .................................................................................................. 208
USO DE CONTROLES DE FORMULARIO...................................................................................... 209
Control Marco (Frame) .................................................................................................... 209
Control Casilla de Verificación (CheckBox) .................................................................... 209
Control Botón de Opción (OptionButton) ........................................................................ 210
Control Cuadro de Lista (ListBox) ................................................................................... 211
Control Cuadro Combinado (ComboBox) ....................................................................... 212
FUNCIONES VBA INPUTBOX, MSGBOX ................................................................................... 215
Función MsgBox() ........................................................................................................... 215
Función InpuBox() ........................................................................................................... 215
METODO GETOPENFILENAME , GETSAVEASFILENAME ............................................................ 215
Función GetOpenfilename () ........................................................................................... 215
Función GetSaveAsFileName ......................................................................................... 217
CREAR Y ABRIR LIBRO ............................................................................................................ 217
Crear un libro nuevo ........................................................................................................ 217
CUESTIONARIOS .................................................................................................................... 218
EJERCICIOS UTILIZANDO MACRO, FORMULARIO Y VBA ............................................................ 219
FUNCIONES PERSONALIZADAS ......................................................................................... 230
USO DE MÓDULOS PARA FUNCIONES ....................................................................................... 231
Ventajas........................................................................................................................... 231
Características ................................................................................................................ 231
USO DE ARGUMENTOS EN LAS FUNCIONES ............................................................................... 232
EJECUTAR UNA FUNCIÓN ........................................................................................................ 233
Recursividad.................................................................................................................... 234
CONTROLES ACTIVE X ........................................................................................................... 235
CUESTIONARIOS .................................................................................................................... 246
Capítulo
Análisis de Datos I
En este capítulo trataremos:
Herramientas de datos
Consolidación y referencias 3D
F. Griffith
Medalla de oro olímpica
SENATI-Computación e Informática 1
Microsoft Office Excel 2007
Lista de datos
Una lista de datos es un conjunto de registro formado por filas y columnas.
Las filas representan los registros de datos
Las columnas representan los campos de datos
Registros
2 SENATI-Computación e Informática
Paso a Paso: Agregar el comando formulario a la barra de herramientas
de acceso rápido
Hacer clic en la
opción Personalizar
SENATI-Computación e Informática 3
Microsoft Office Excel 2007
Seleccionar
“Formulario …”
4 SENATI-Computación e Informática
s de I
3. Seleccionar al celda A2
4. Hacer clic en el botón Formulario
SENATI-Computación e Informática 5
Microsoft Office Excel 2007
6 SENATI-Computación e Informática
s de datos II
Ingrese “SoftPlus”,
nombre del cliente a
localizar
SENATI-Computación e Informática 7
Microsoft Office Excel 2007
Ordenar datos
La ordenación de los registros nos permite ver y comprender mejor los datos, así como a
organizarlos y encontrarlos más fácilmente y a tomar decisiones más eficaces.
Se puede ordenar los registros por: Texto, números, fechas u horas, color de celda, color
de fuente o icono, por una lista personalizada, filas, por más de una columna o fila,
ordenar una columna en un rango de celdas sin afectar a las demás.
8 SENATI-Computación e Informática
s de datos II
I
Hacer clic en
el botón
“Ordenar”
5. Se muestra el siguiente cuadro de diálogo
SENATI-Computación e Informática 9
Microsoft Office Excel 2007
Seleccionar columna
“NombreProducto”
10 SENATI-Computación e Informática
s de datos II
SENATI-Computación e Informática 11
Microsoft Office Excel 2007
12 SENATI-Computación e Informática
s de datos II
Seleccionar columna
Seleccionar columna “FechaPedido” como segundo
“NombreProducto” como tercer criterio de ordenación
criterio de ordenación
SENATI-Computación e Informática 13
Microsoft Office Excel 2007
Filtro de datos
El filtrado de datos constituye un método fácil y rápido para encontrar subconjuntos de
datos en una lista y trabajar con ellos.
Cuando se filtra una lista sólo visualizará las filas que cumplen un conjunto de
condiciones de búsqueda llamado criterios.
A diferencia de la ordenación, la filtración no reorganiza las listas. La filtración oculta
provisionalmente las filas que no desea mostrar.
Cuando Excel filtra las filas, la hoja de cálculo se coloca en el modo de filtración. En
este modo se podrá editar, dar formato, efectuar representaciones gráficas e imprimir la
lista de subconjuntos sin tener que reorganizarla o moverla.
14 SENATI-Computación e Informática
s de datos II
6. Hacer clic en el autofiltro grado y desactive las casillas del 2do. Al 6to. Grado,
de tal forma que sólo se muestre alumnos del 1er. Grado.
Desactive las
casillas del 2do.
Al 6to. grado
SENATI-Computación e Informática 15
Microsoft Office Excel 2007
Filtro personalizado
Se utiliza para especificar condiciones utilizando operadores booleanos.
16 SENATI-Computación e Informática
s de datos II
Pensiones de alumnos
con valor entre 200 y 350.
Filtro múltiple
Se utiliza para especificar múltiples condiciones
SENATI-Computación e Informática 17
Microsoft Office Excel 2007
Quitar un Filtro
Para mostrar en su tabla todos los registros, debe quitar los filtros aplicados.
18 SENATI-Computación e Informática
s de datos II
Seleccionar uno
de los estilos
mostrados
SENATI-Computación e Informática 19
Microsoft Office Excel 2007
20 SENATI-Computación e Informática
s de datos II
Hacer clic en el
botón “Nuevo
estilo de tabla …”
Hacer clic en el
botón “Formato”
SENATI-Computación e Informática 21
Microsoft Office Excel 2007
Elegir donde
Hacer clic en la aplicará los
ficha “Bordes” bordes
Elegir el estilo
de línea
Elegir color
Elegir color de
fondo
Elegir efecto de
relleno
22 SENATI-Computación e Informática
s de datos II
5. Del grupo de opciones “Personalizada” hacer clic derecho sobre la que desea
modificar
SENATI-Computación e Informática 23
Microsoft Office Excel 2007
Elegir “Primera
franja de fila”
Seleccionar
color de fondo
24 SENATI-Computación e Informática
s de datos II
10. Repita el procedimiento para modificar cada uno de los elementos de la tabla
Herramientas de datos
Excel presenta un conjunto de herramientas de datos entre las cuales tenemos: Texto en
columnas, validación de datos, análisis Y si. Las cuales describiremos a continuación.
Texto en columnas
Si copia datos de otro programa y lo pegarlo en Microsoft Excel, Excel puede
comprimir varias columnas de datos a una sola columna. Puede utilizar el comando de
texto en columnas para colocar cada una de las columnas de datos en una celda
(Columna independiente)
SENATI-Computación e Informática 25
Microsoft Office Excel 2007
Debido a que el
texto se separa
con comas, elegir
la opción
“Delimitados”
26 SENATI-Computación e Informática
s de datos II
Elegir coma
como separador
Elegir
“Texto”
SENATI-Computación e Informática 27
Microsoft Office Excel 2007
Debido a que el
texto se separa con
comas, elegir la
opción
“Delimitados”
28 SENATI-Computación e Informática
s de datos II
Elegir “Espacio”
como separador
Elegir
“Texto”
Celda a partir de
donde se colocaran
los datos
SENATI-Computación e Informática 29
Microsoft Office Excel 2007
Quitar duplicados
Es posible eliminar valores duplicados de una lista utilizando la herramienta quitar
duplicados.
2. Ordenar la lista por el campo que desea eliminar los datos duplicados
Hacer clic en
el botón
Ordenar
30 SENATI-Computación e Informática
s de datos II
SENATI-Computación e Informática 31
Microsoft Office Excel 2007
Validación de datos
Si desea asegurarse de que se introducen los datos correctos en una hoja de cálculo,
puede especificar qué datos son válidos para cada celda o cada rango de celdas. Puede
restringir los datos a un tipo determinado (como números enteros, números decimales o
texto) y definir límites en las entradas válidas. Puede especificar una lista de entradas
válidas o limitar el número de caracteres en las entradas.
32 SENATI-Computación e Informática
s de datos II
2. Seleccionar las celdas C4:C13 para agregarle una restricción, que acepte sólo
como datos los números: 1 hasta 120.
3. Elegir la ficha ,
Hacer clic en la
ficha
“Configuración”
Elegir “Números
enteros”
Elegir “Entre”
Ingresar “1” como mínimo y
“120” como máximo.
SENATI-Computación e Informática 33
Microsoft Office Excel 2007
34 SENATI-Computación e Informática
s de datos II
2. Seleccionar las celdas E4:E13 para agregarle una restricción, que acepte sólo
como datos fechas: entre 1/1/1965 hasta 1/1/1980
3. Elegir la ficha ,
Elegir “Fecha”
Elegir “Entre”
Ingresar “1/1/1965” como mínimo y
“1/1/1980” como máximo.
SENATI-Computación e Informática 35
Microsoft Office Excel 2007
Escribir mensaje
36 SENATI-Computación e Informática
s de datos II
Análisis Y si
Permite crear escenarios para realizar predicciones. Por ejemplo, puede realizar análisis
y si para crear dos presupuestos donde en cada uno de ellos se supone un cierto grado de
ingresos. O, puede especificar un resultado que desea que genere una fórmula y, a
continuación, determinar qué conjuntos de valores generarán dicho resultado.
Excel proporciona varias herramientas diferentes para ayudar a realizar el tipo de
análisis que se ajuste a sus necesidades.
SENATI-Computación e Informática 37
Microsoft Office Excel 2007
Componentes de un escenario
Un Modelo con Escenarios nombrados debe tener:
- Un grupo claro de uno o más valores de entrada
- Un grupo claro de uno o más valores resultantes que deberán cambiar basado
en las entradas.
38 SENATI-Computación e Informática
s de datos II
Escriba “Mejor
opción”
Seleccione el bloque
de celdas B15:B18
Hacer clic en el
botón “Aceptar”
SENATI-Computación e Informática 39
Microsoft Office Excel 2007
40 SENATI-Computación e Informática
s de datos II
Hacer clic en el
botón “Aceptar”
11. Del cuadro de diálogo valores del escenario especifique según la gráfica
mostrada
SENATI-Computación e Informática 41
Microsoft Office Excel 2007
42 SENATI-Computación e Informática
s de datos II
SENATI-Computación e Informática 43
Microsoft Office Excel 2007
Buscar Objetivo
En el caso de que conozca el resultado deseado de una fórmula sencilla, pero no la
variable que determina el resultado, podrá utilizar la función Buscar objetivo. Al
realizar una búsqueda de objetivo, Microsoft Excel varía el valor de celda
específica hasta que una fórmula dependiente de dicha celda devuelve el resultado
deseado.
Hacer clic en el
botón análisis Y si.
Fórmula que
calcula el pago
mensual Valor que
queremos pagar
mensualmente
Valor a
localizar
44 SENATI-Computación e Informática
s de datos II
Tabla de datos
Una tabla de datos es un rango de celdas que muestra cómo afecta el cambio de
algunos valores de las fórmulas a los resultados de las mismas.
Las tablas de datos constituyen un método abreviado para calcular varias
versiones en una sola operación, así como una manera de ver y comparar los
resultados de todas las variaciones distintas en la hoja de cálculo.
SENATI-Computación e Informática 45
Microsoft Office Excel 2007
Seleccionar
celdas A8:B18
46 SENATI-Computación e Informática
s de datos II
Hacer clic en el
botón análisis Y si.
SENATI-Computación e Informática 47
Microsoft Office Excel 2007
Agregar el siguiente
cuadro a su hoja
Hacer clic en el
botón análisis Y si.
48 SENATI-Computación e Informática
s de datos II
Monto prestado
Tasa de interés
Montos prestados
Tasas
de
interés Monto a pagar
mensual
SENATI-Computación e Informática 49
Microsoft Office Excel 2007
Si desea... Entonces…
Organizar los datos de todas las hoja de cálculo en orden Consolide por posición
y ubicación idénticos.
Organizar los datos de forma diferente en las hoja de Consolide por categorías
cálculo independientes pero utilizar los mismos rótulos
de fila y de columna para que la hoja de cálculo maestra
pueda hacer coincidir los datos.
50 SENATI-Computación e Informática
s de datos II
g. Escriba una fórmula con una referencia 3D que utilice una referencia a
un rango de nombres de hojas de cálculo.
Por ejemplo, para consolidar datos en las celdas A2 desde Ventas hasta
Marketing inclusive, en la celda A2 de la hoja de cálculo maestra tendría
que escribir lo siguiente:
SENATI-Computación e Informática 51
Microsoft Office Excel 2007
2. Se quiere consolidar las ventas de las sucursales de: Miraflores, Surco y San
Borja en la hoja de Totales.
3. Hacer clic en la ficha ,
La casilla de verificación “Crear vínculos con los datos de origen” permiten que
la hoja de totales se actualice, cuando realice cambios en las hojas orígenes.
52 SENATI-Computación e Informática
s de datos II
SENATI-Computación e Informática 53
Microsoft Office Excel 2007
54 SENATI-Computación e Informática
s de datos II
NOTAS
Al establecer fórmulas los nombres de las hojas se específica entre
comillas y luego un signo de admiración, ejemplo:
'BAL2005'!C6 hace referencia a la celda C6 de la hoja BAL2005.
Al establecer fórmulas también puede especificarlas como rango de
hojas, separándolos con dos puntos pero solamente especificando las
comillas simples al inicio y final del rango de hojas, luego un signo de
admiración que indica que son nombres de hojas, ejemplo:
=SUMA('BAL2005:BAL2007'!C6) hace referencia a la celda C6 del
rango de hojas BAL2005 hasta BAL2007; esto quiere indicar a la suma
del valor de las celda C6 de las hojas BAL2005, BAL2006 y BAL2007.
Referencias 3D
Una referencia a la misma celda o al mismo rango (rango: dos o más celdas de una hoja.
Las celdas de un rango pueden ser adyacentes o no adyacentes.) en varias hojas se
denomina referencia 3D. Una referencia 3D es un método útil y cómodo de hacer
referencia a varias hojas de cálculo que siguen el mismo patrón y a las celdas de cada
hoja de cálculo que contienen el mismo tipo de datos para, por ejemplo, consolidar los
datos presupuestarios de diferentes departamentos de la organización.
SENATI-Computación e Informática 55
Microsoft Office Excel 2007
Ejemplo 1
La Empresa Corp. Perú desea realizar un consolidado de los ingresos y/o inversión de
las áreas de ventas, marketing y recursos humanos.
PASOS
1. Crear las hojas BAL5, BAL6 y BAL7 con el diseño sugerido.
2. Crear la hoja CONSOLIDADO con el diseño sugerido.
3. Especificar la fórmula de referencia 3D en la celda C6
4. =SUMA('BAL5:BAL7'!C6)
5. Luego copiar la fórmula y observar que ha sucedido.
NOTAS
56 SENATI-Computación e Informática
s de datos II
Función Descripción
SUMA Suma números.
PROMEDIO Calcula el promedio (media aritmética) de números.
SENATI-Computación e Informática 57
Microsoft Office Excel 2007
Cuestionarios
58 SENATI-Computación e Informática
Capítulo
Funciones Financieras
En este capítulo trataremos:
SENATI-Computación e Informática 59
Microsoft Office Excel 2007
Hiperinflación.
Phillip Cagan lo definió como el proceso que comienza en aquel mes donde el alza de
los precios excede el 50% , y concluye en el mes previo en que el alza mensual de los
precios cae debajo de este nivel y permanece por debajo al menos durante un año.
Inflación anual de más de 12000%.
60 SENATI-Computación e Informática
Financieras
Causas de la inflación
Existen diferentes explicaciones sobre las causas de la inflación. De hecho parece
que existen diversos tipos de procesos económicos diferentes que producen
inflación, y esa es una de las causas por las cuales existen diversas explicaciones:
cada explicación trata de dar cuenta de un proceso generador de inflación
diferente, aunque no existe una teoría unificada que integre todos los procesos. De
hecho se han señalado que existen al menos tres tipos de inflación:
Como se mide
Índice de precios al consumidor (IPC): diseñado para registrar las variaciones en
el poder adquisitivo del promedio de la población (sobre la base de una canasta de
productos de consumo representativa).
En ambos casos aislamos el efecto de las cantidades ya que nos interesa el cambio
en precios.
SENATI-Computación e Informática 61
Microsoft Office Excel 2007
Extraído del documento publicado por el profesor: Juan F. Castro del Departamento de
Economía de la Universidad del Pacífico
Tasa nominal
Conocida también como tanto por uno o simplemente como tasa de interés, es la
ganancia que genera un capital de $1 en un año; o sea, es igual a la centésima
parte de la razón o tanto por ciento (ganancia producida por un capital de $100 en
un año).
Generalizando, cuando el tiempo “n” y el período en que está expresada la tasa “i”
coinciden con la capitalización, se dice que la tasa i es nominal.
62 SENATI-Computación e Informática
Financieras
M2 = M3
C (1 + i’) n = C (1 + i/m) n m
1 + i’ = (1 + i/m) m (Simplificamos C y n.)
I’ = (1 + i/m) m – 1 (Despejamos I’.)
SENATI-Computación e Informática 63
Microsoft Office Excel 2007
= (1 + ($B$4/B9)) ^ B9 -1
= (1 + ($B$4/B8)) ^ B8 -1
Argumentos
Tasa. Es el tipo de interés del préstamo.
Nper. Es el número total de pagos del préstamo. La Tasa y Nper deben
expresarse en la misma unidad de tiempo (Ambas trimestrales, anuales,
etc.)
Va. Es el valor actual o lo que vale ahora la cantidad total de una serie de
pagos futuros, también se conoce como el principal.
64 SENATI-Computación e Informática
Financieras
Fórmulas financieras
Vencida
Anticipada
Tasa 30%
SENATI-Computación e Informática 65
Microsoft Office Excel 2007
Se considera como
negativo por ser un
desembolso
66 SENATI-Computación e Informática
Financieras
Vf = 10,000
Tasa 12%
SENATI-Computación e Informática 67
Microsoft Office Excel 2007
Sintaxis
VA(tasa; nper; pago; vf; tipo)
Argumentos
Tasa
Es la tasa de interés por período. Por ejemplo, si obtiene un préstamo
para una motocicleta con una tasa de interés anual del 10% y efectúa
pagos mensuales, la tasa de interés mensual será del 10%/12 ó 0,83%. En
la fórmula escribiría 10%/12, 0,83% ó 0,0083 como tasa.
Nper
Es el número total de períodos en una anualidad. Por ejemplo, si obtiene
un préstamo a cuatro años para comprar un automóvil y efectúa pagos
mensuales, el préstamo tendrá 4*12 (ó 48) períodos. La fórmula tendrá
48 como argumento nper.
Pago
Es el pago que se efectúa en cada período y que no cambia durante la
vida de la anualidad. Por lo general, el argumento pago incluye el capital
y el interés pero no incluye ningún otro cargo o impuesto. Por ejemplo,
los pagos mensuales sobre un préstamo de $10.000 a cuatro años con una
68 SENATI-Computación e Informática
Financieras
Vf
Es el valor futuro o el saldo en efectivo que desea lograr después de
efectuar el último pago. Si el argumento vf se omite, se asume que el
valor es 0 (por ejemplo, el valor futuro de un préstamo es 0). Si desea
ahorrar $50.000 para pagar un proyecto especial en 18 años, $50.000
sería el valor futuro. De esta forma, es posible hacer una estimación
conservadora a cierta tasa de interés y determinar la cantidad que deberá
ahorrar cada mes.
Tipo
Es el número 0 ó 1 e indica el vencimiento de los pagos.
Defina tipo como Si los pagos vencen
0 u omitido Al final del período (Rentas vencidas)
1 Al inicio del período (Rentas anticipadas)
Fórmulas financieras
Flujo Vencido
Flujo Anticipados
SENATI-Computación e Informática 69
Microsoft Office Excel 2007
70 SENATI-Computación e Informática
Financieras
Sintaxis
VF(tasa; nper; pago; va; tipo)
Argumentos
Tasa
Es la tasa de interés por período. Por ejemplo, si obtiene un préstamo
para una motocicleta con una tasa de interés anual del 10% y efectúa
pagos mensuales, la tasa de interés mensual será del 10%/12 ó 0,83%. En
la fórmula escribiría 10%/12, 0,83% ó 0,0083 como tasa.
Nper
Es el número total de períodos en una anualidad. Por ejemplo, si obtiene
un préstamo a cuatro años para comprar un automóvil y efectúa pagos
mensuales, el préstamo tendrá 4*12 (ó 48) períodos. La fórmula tendrá
48 como argumento nper.
Pago
Es el pago que se efectúa en cada período y que no cambia durante la
vida de la anualidad. Por lo general, el argumento pago incluye el capital
y el interés pero no incluye ningún otro cargo o impuesto. Por ejemplo,
los pagos mensuales sobre un préstamo de $10.000 a cuatro años con una
tasa de interés del 12% para la compra de una motocicleta, son de
$263,33. En la fórmula escribiría -263,33 como el argumento pago.
Va
Es el valor actual de la cantidad total de una serie de pagos futuros. Si el
argumento va se omite, se considerará 0.
Tipo
Es el número 0 ó 1 e indica el vencimiento de los pagos.
Defina tipo como Si los pagos vencen
0 u omitido Al final del período (Rentas vencidas)
1 Al inicio del período (Rentas anticipadas)
SENATI-Computación e Informática 71
Microsoft Office Excel 2007
72 SENATI-Computación e Informática
Financieras
Paso a Paso: Nper en función del valor presente, con renta constante
vencida
1. Nper en función del valor presente puede calcularse conociendo el importe de
la renta constante vencida, o de la renta constante anticipada, que amortiza el
préstamo.
2. Con cuántas cuotas trimestrales vencidas, pueden cancelarse un préstamo de
$ 9,000 el mismo que devenga una tasa efectiva trimestral del 5% y se
amortizará con pagos uniformes de $ 2500 cada 90 días.
Va=9000
Nper=?
Tasa=5% tasa=5% tasa5%
pago= -2500 pago= -2500 pago= -2500
SENATI-Computación e Informática 73
Microsoft Office Excel 2007
Paso a Paso: Nper en función del valor presente, con renta constante
anticipada
1. Nper en función del valor presente puede calcularse conociendo el importe de
la renta constante vencida, o de la renta constante anticipada, que amortiza el
préstamo.
2. Con cuántas cuotas trimestrales anticipadas, pueden cancelarse un préstamo
de $ 9,000 el mismo que devenga una tasa efectiva trimestral del 5% y se
amortizará con pagos uniformes de $ 2500 cada 90 días.
Va=9500
Nper=?
Tasa=5% tasa=5% tasa5%
pago= -2500 pago= -2500 pago= -2500
74 SENATI-Computación e Informática
Financieras
Va=9500
Nper=?
Tasa=5% tasa=5% tasa5%
pago= -2500 pago= -2500 pago= -2500
Función TASA
Devuelve la tasa de interés por período de una anualidad. TASA se calcula por
iteración y puede tener cero o más soluciones. Si los resultados consecutivos de
TASA no convergen en 0,0000001 después de 20 iteraciones, TASA devuelve el
valor de error #¡NUM!
Argumentos
Nper
Es el número total de períodos de pago en una anualidad.
Pago
Es el pago que se efectúa en cada período y que no puede cambiar
durante la vida de la anualidad. Generalmente el argumento pago incluye
el capital y el interés, pero no incluye ningún otro arancel o impuesto.
Va
Es el valor actual de la cantidad total de una serie de pagos futuros.
Vf
Es el valor futuro o un saldo en efectivo que desea lograr después de
efectuar el último pago. Si el argumento vf se omite, se asume que el
valor es 0 (por ejemplo, el valor futuro de un préstamo es 0).
SENATI-Computación e Informática 75
Microsoft Office Excel 2007
Tipo
Es el número 0 ó 1 e indica el vencimiento de los pagos.
Defina tipo como Si los pagos vencen
0 u omitido Al final del período (Rentas vencidas)
1 Al inicio del período (Rentas anticipadas)
Estimar
Es la estimación de la tasa de interés.
Si el argumento estimar se omite, se supone que es 10%.
Si TASA no converge, trate de usar diferentes valores para el argumento
estimar. TASA generalmente converge si el argumento estimar se
encuentra entre 0 y 1.
Sintaxis
TIR(valores; estimar)
76 SENATI-Computación e Informática
Financieras
Argumentos
Valores
Es una matriz o referencia a celdas que contengan los números para los
cuales se desea calcular la tasa interna de retorno.
El argumento valores debe contener al menos un valor positivo y uno
negativo para calcular la tasa interna de retorno.
TIR interpreta el orden de los flujos de caja siguiendo el orden del
argumento valores. Asegúrese de introducir los valores de los pagos e
ingresos en el orden correcto.
Si un argumento matricial o de referencia contiene texto, valores lógicos
o celdas vacías, esos valores se ignoran.
Estimar
El un número que el usuario estima que se aproximará al resultado de
TIR.
Microsoft Excel utiliza una técnica iterativa para el cálculo de TIR.
Comenzando con el argumento estimar, TIR reitera el cálculo hasta que
el resultado obtenido tenga una exactitud de 0,00001%. Si TIR no llega a
un resultado después de 20 intentos, devuelve el valor de error #¡NUM!
En la mayoría de los casos no necesita proporcionar el argumento estimar
para el cálculo de TIR. Si se omite el argumento estimar, se supondrá que
es 0,1 (10%).
Si TIR devuelve el valor de error #¡NUM!, o si el valor no se aproxima a
su estimación, realice un nuevo intento con un valor diferente de estimar.
SENATI-Computación e Informática 77
Microsoft Office Excel 2007
Proveedor Usuario
del activo del activo
Como se gestiona
- El futuro usuario, busca al proveedor del activo que necesita solicitando
cotizaciones
- Una vez elegido el proveedor se dirige a la entidad financiera de Leasing
llevándole la información
- La sociedad de Leasing, compra el activo y se lo alquila al cliente
usuario
78 SENATI-Computación e Informática
Financieras
SENATI-Computación e Informática 79
Microsoft Office Excel 2007
=$F$6
80 SENATI-Computación e Informática
Financieras
SENATI-Computación e Informática 81
Microsoft Office Excel 2007
Sintaxis
TIR.NO.PER(valores;fechas;estimar)
Valores
Es una serie de flujos de caja que corresponde a un calendario de pagos
determinado por el argumento fechas. El primer pago es opcional y
corresponde al costo o pago en que se incurre al principio de la inversión.
Si el primer valor es un costo o un pago, debe ser un valor negativo.
Todos los pagos sucesivos se descuentan basándose en un año de 365
días. La serie de valores debe incluir al menos un valor positivo y un
valor negativo.
Fechas
Es un calendario de fechas de pago que corresponde a los pagos del flujo
de caja. La primera fecha de pago indica el principio del calendario de
pagos. El resto de las fechas deben ser posteriores a ésta, pero pueden
aparecer en cualquier orden. Las fechas deben especificarse utilizando la
función FECHA o como resultado de otras fórmulas o funciones. Por
ejemplo, utilice FECHA(2008;5;23) para el 23 de mayo de 2008. Pueden
producirse problemas si las fechas se escriben como texto.
Estimar
Es un número que el usuario estima que se aproximará al resultado de
TIR.NO.PER.
82 SENATI-Computación e Informática
Microsoft Office Excel 2007
Tasa_reinversión
Es la tasa de interés obtenida por los flujos de caja a medida que se
reinvierten.
Si n es el número de flujos de caja en valores, tasaf es la
tasa_financiamiento y tasar es la tasa_reinversión, la fórmula de TIRM
es:
SENATI-Computación e Informática 83
Financieras
Cuestionarios
5. Qué es un Leasing.
84 SENATI-Computación e Informática
Capítulo
Análisis de Datos II
En este capítulo trataremos:
SENATI-Computación e Informática 85
s de datos III
a. Seleccionar el bloque de
celdas A4:B9
c. Del menú
contextual
presentado
elegir La
opción
“Tendencia
b. Señalar con su mouse lineal”
este cuadradito y
arrastrar con el botón
derecho del mouse
hasta la fila 15, luego
soltar el mouse
SENATI-Computación e Informática 87
Microsoft Office Excel 2007
Ventas del
primer
semestre
Ventas
proyectadas con
tendencia lineal
automática, para el
último semestre
b. Seleccionar el bloque
de celdas B4:B9
c. Del menú
contextual
presentado
elegir La
opción
b. Arrastrar con el
“Tendencia
botón derecho del
geométrica”
mouse hasta la
fila 15, luego
soltar el mouse
88 SENATI-Computación e Informática
s de datos III
Ventas del
primer
semestre
Ventas proyectadas
con tendencia
geométrica, para el
último semestre
SENATI-Computación e Informática 89
Microsoft Office Excel 2007
Se genera la
tendencia
reemplazando a
los tres primeros
valores e la serie
original
Media móvil.
Se puede crear una media móvil, que suaviza las fluctuaciones en los datos y
muestra la trama o tendencia con más claridad.
Tipos de gráfico que admiten líneas de tendencias
Pueden agregarse líneas de tendencia a las series de datos en los siguientes
gráficos:
90 SENATI-Computación e Informática
s de datos III
• Áreas 2D no apiladas
• Barras
• Columnas
• Líneas
• Cotizaciones
• Tipo XY (Dispersión), y
• Burbujas.
No pueden agregarse líneas de tendencia a las series de datos en los gráficos 3D,
radiales, circulares, de superficie o de anillos.
Si se cambia un gráfico o una serie de datos de modo que ya no permita la línea de
tendencia asociada (por ejemplo, si se cambia el tipo de gráfico por un gráfico de
áreas 3D o si se cambia la vista de un informe de gráfico dinámico o de un
informe de tabla dinámica asociado), se perderán las líneas de tendencia.
b. Hacer clic en la
ficha Insertar
c. Seleccionar las
celdas A2:B7
d. Elegir este
tipo de
gráfico
SENATI-Computación e Informática 91
Microsoft Office Excel 2007
e. Elegir Lineal
f. Activar la casilla
“Presentar ecuación
en el gráfico”
92 SENATI-Computación e Informática
s de datos III
2
y = -0.27x + 3.09
0
2003 2004 2005 2006 2007
Proyectar valores
Función PRONÓSTICO
Calcula un valor futuro utilizando los valores existentes. El valor previsto es un
valor del eje Y para un valor del eje X dado. Los valores conocidos son valores de
x e y existentes, y el nuevo valor se calcula utilizando una regresión lineal. Esta
función se puede utilizar para prever las ventas futuras, las necesidades de
inventario y las tendencias de los consumidores.
Sintaxis
PRONOSTICO(x;conocido_y;conocido_x)
Argumentos
X Es el punto de datos cuyo valor se desea predecir.
Conocido_y Es la matriz o rango de datos dependientes.
Conocido_x Es la matriz o rango de datos independientes.
y
Y donde x e y son las medias de muestra PROMEDIO(conocido_x) y
PROMEDIO (conocido y).
SENATI-Computación e Informática 93
Microsoft Office Excel 2007
94 SENATI-Computación e Informática
s de datos III
Función TENDENCIA
Devuelve valores que resultan de una tendencia lineal. Ajusta una recta (calculada
con el método de mínimos cuadrados) a los valores de las matrices definidas por
los argumentos conocido_y y conocido_x. Devuelve, a lo largo de esa recta, los
valores y correspondientes a la matriz definida por el argumento nueva_matriz_x
especificado.
Sintaxis
TENDENCIA(conocido_y;conocido_x;nueva_matriz_x;constante)
Argumentos
Conocido_y Es el conjunto de valores de y que se conocen en la
relación y = mx+b.
Conocido_x Es un conjunto opcional de valores x que se conocen en la
relación y = mx+b.
Nueva_matriz_x Son los nuevos valores de x para los cuales desea que
TENDENCIA devuelva los valores de y correspondientes
SENATI-Computación e Informática 95
Microsoft Office Excel 2007
96 SENATI-Computación e Informática
s de datos III
Seleccionar rango de
entrada y rango de
clase según se muestra
en la gráfica.
Hacer clic en
“Crear gráfico”.
SENATI-Computación e Informática 97
Microsoft Office Excel 2007
Interpretación de un Histograma
Se trata de identificar y clasificar la pauta de variación del conjunto de datos
estudiado, que relacione la variación con el proceso o fenómeno en estudio.
El resultado de este análisis es una teoría sobre el funcionamiento del proceso o
sobre la causa del problema que se está investigando. A continuación se presentan
pautas de variación típicas:
a. Distribución en forma de campana
Es la distribución normal. La desviación respecto a esta forma puede
indicar la existencia de problemas externas al proceso. La forma de
campana no asegura, por sí misma y sin analizar su valor medio y el
recorrido de los datos, que el proceso funcione de forma satisfactoria.
Pico
Programa N
s de datos III
c. Distribución plana
Representa un caso típico de departamentos que no tienen el trabajo
bien definido y cada cual lo hace "a su manera".
d. Distribución en peine
Esta pauta de variación es típica de errores de medición, errores en la
forma de agrupar los datos o sesgos sistemáticos de redondeo.
Debe revisar los procesos de recogida de datos y construcción del
Histograma.
SENATI-Computación e Informática 99
Microsoft Office Excel 2007
Descendencia
brusca de la cola
=B5*$F$2*B4 =SUMA(B5:E5)
Grupo de
celdas
cambiantes
Valor de la celda
objetivo, Monto que
deseamos obtener
como pedidos
Se aplica sólo a los Porcentaje donde la celda Tiempo Tiempo Debe indicarse la precisión mediante
problemas no objetivo da una solución que tarda que tarda una fracción entre 0 (cero) y 1. Cuantas
lineales. Se indica satisface las restricciones el proceso el más posiciones decimales tenga el
mediante una externas. Una tolerancia de proceso número que se escriba, mayor será la
fracción entre 0 y 1. mayor tiende a acelerar el solución. de precisión; por ejemplo, 0,0001 indica
Cuantos más proceso de solución. solución. una precisión mayor que 0,01.
decimales tenga el
número, menor
será la
convergencia
Para resolver un
problema de
optimización lineal.
Utiliza la extrapolación
lineal de un vector Newton Utiliza un método
tangente. quasi-Newton que
normalmente necesita más
Utiliza la extrapolación memoria pero menos
cuadrática, que puede iteraciones que el método
mejorar en gran medida los de gradiente conjugada.
resultados de problemas no
lineales Progresiva Se utilizan para la mayor parte
Conjugado Necesita menos memoria que
de los problemas, en los que los valores de
restricción cambian relativamente poco. el método Newton, pero normalmente
necesita más iteraciones para alcanzar un
Central Se utiliza en los problemas en que nivel de exactitud concreto
las restricciones cambian rápidamente, en
especial cerca de los límites.
Valor de la celda
objetivo, Monto que
deseamos ajustar el
precio de venta.
Agregar la
siguiente lista
de restricciones
Cuestionarios
Formularios
En este capítulo trataremos:
Activar la casilla
“Mostrar ficha
Programador en la
cinta de opciones”.
Diseño de formularios
Un formulario es una hoja de cálculo con un formato y diseño ya establecido. Puede
contener fórmulas, funciones e incluso controles (una lista, botones de opción, casillas
de verificación). Gracias a un formulario limitamos el ingreso y manipulación de datos
a nuestras hojas, así como brindamos soluciones de negocios para nuestros clientes.
Encabezado
de columna
Encabezado
de fila Líneas de
división
Etiquetas de
hojas
3. Hacer clic con el botón derecho de la hoja que desea ocultar, luego hacer clic en
el botón “Ocultar”.
Controles de Formularios
CONTROL NOMBRES DETALLES
Botón Permite ejecutar una macro.
Macros automatiza procesos repetitivos.
Etiqueta Sirve para agregar rótulos al formulario.
Campo de texto Sirve para agregar datos al formulario.
Cuadro de grupo Para agrupar controles como casillas y
botones de opción.
Casillas de verificación Podrá elegir una, varias o ninguna de las
opciones.
Botón de opción Sólo podrá elegir una de un grupo de
opciones.
Control de número Para cambiar el valor de una celda
Cuadro combinado Muestra una lista de opciones.
=SI(E2=VERDADERO;20;0)
También puede hacerlo de la siguiente manera
=SI(E2;20;0)
Dado que el sistema asume por defecto en la condición lógica la
expresión VERDADERO.
8. Ahora recomendamos activar y desactivar la casilla de verificación y observar
que sucede.
9. Ahora cada vez que hagamos clic, en las opciones de los productos, mostrará el
precio que le corresponde.
Estos datos se
utilizarán en el
control numérico
que se vinculará con
el principal, celda B3
Utilice estos
controles para
definir el principal
y la tasa de interés.
=c4/100
10. Ahora cada vez que hagamos clic, en las opciones de los productos, mostrará el
precio que le corresponde.
21. Repetir el paso 20 para vincular los otros dos controles de opción con la celda
A7
Elegir la
opción “Lista”
Presione la tecla F3
para presentar la
lista de nombres de
rango, elegir
“Productos”.
=SI(ESBLANCO(B13);"";C13*B13)
=SI(ESBLANCO(A13);"";BUSCARV(A13;ProducPrecio;2;0))
=SI(A3=VERDADERO;D19*10%;0)
=D19*ELEGIR(A7;10%;5%;0)
ENCOMIENDA
COSTO
Formato de control
Para terminar con el diseño, debe modificar el formato de los controles para que
interactúen con celdas de su hoja de cálculo. Es decir, por ahora los controles
son sólo elementos que no se relacionan con la hoja de cálculo, al modificar el
formato de los controles, logramos que dichos controles se vinculen a celdas y
así podemos construir fórmulas basadas en los valores de esas celdas.
Valor actual :0
Valor mínimo :1
Valor máximo : 50
Incremento :1
Celda vinculante : C7
Lista Destino
Finalmente, debe modificar el formato de la lista. En el caso de una lista o un
cuadro combinado, en necesario indicar un Rango de Entrada, es decir el rango
que tenga los elementos que desea mostrar en su lista. Además, debe vincular el
control a una celda de su hoja de cálculo. Asigne el nombre DESTINO al rango
B5:B11 (Hoja Costos).
Observe que la lista se llena con las ciudades indicadas en el rango de entrada.
Gracias a las celdas vinculadas de sus controles, usted podrá definir ciertas
fórmulas basados en los valores de las celdas vinculadas.
Macros
En este capítulo trataremos:
Seguridad de macros
Grabar una nueva macro
Editar una macro utilizando
Visual Basic
Eliminar macros
Uso de macros en
formularios
Plantillas con formularios y
macros
Desarrollo de proyectos con
macros y formularios
Una vez creada una macro, puede asignarla a un objeto (como un botón de barra
de herramientas, un gráfico o un control) para que pueda ejecutarla haciendo clic
en ese objeto.
Sin embargo es importante mencionar que usted debe contar con conocimientos
de programación y conocer los objetos de Microsoft Excel.
Ventajas
Seguridad de Macros
Los Macrovirus
Los macro virus son una nueva familia de virus que infectan documentos y hojas
de cálculo. Fueron reportados a partir de Julio de 1995, cambiando el concepto de
aquella época, de que los virus tan sólo podían infectar o propagarse a través de
archivos ejecutables con extensiones .EXE o .COM
Hoy en día basta con abrir un documento en Word o una hoja de cálculo de Excel
infectados para que un sistema limpio de virus sea también infectado.
Los macro virus tienen 3 características básicas:
Infectan documentos de MS-Word o MS-Excel y archivos de bases de
datos en MS-Access.
Poseen la capacidad de infectar y auto-copiarse en un mismo sistema, a
otros sistemas o en unidades de red a las cuales estén conectadas.
Haciendo uso de las funciones de la interfaz de las librerías MAPI
(Messaging Application Programming Interface), desde el sistema
infectado se envía a todos los buzones de la libreta de direcciones de MS
Outlook y Outlook Express.
Firmas digitales
Una firma digital en una macro es como un sello de cera en un sobre: confirma
que la macro se originó en el programador que la ha firmado y que no se ha
modificado.
Al abrir un archivo o cargar un complemento que contenga una
macro con firma digital, esta firma aparece en el equipo en
forma de certificado. El certificado menciona la fuente de la
macro, y otra información acerca de la identidad e integridad de
la fuente. Una firma digital no garantiza necesariamente la
seguridad de una macro, por ello el usuario debe decidir si
confiar en una macro que lleva firma digital.
Escribir el nombre de la
Macro
Especificar donde se grabará la
Macro
5. A partir de este momento todo acción que realice se grabará como parte d e la
Macro
6. Presione las teclas Ctrl + Inicio para ubicarse en la primera celda.
7. Haga un clic en la celda A4, luego presione [Ctrl] + [*] para seleccionar toda la
base de datos.
Elegir la Macro
“OrdenarLista”
Referencias Relativas
Una referencia es la ubicación de una celda en Microsoft Excel, tal como A1, B4.
En Microsoft Excel se tiene dos tipos de referencia: Absoluta o relativa.
Si configura el tipo de referencia en absoluta, Microsoft Excel lleva un control de
la posición exacta de cada celda seleccionada. Por ejemplo si crea una macro que
subraya la celda A1, cuando ejecute la macro siempre va a afectar a la celda A1.
Si configura el tipo de referencia en relativa, Microsoft Excel lleva un control de
la posición de cada celda seleccionada en relación a la celda seleccionada con
anterioridad. Por ejemplo si me ubico en la celda A1 y crea una macro que pone
en subrayado a la celda B2. Observe que B2 se encuentra una celda a la derecha y
una celda hacia abajo de la celda A1.
Si me ubico en la celda A4 y ejecuto la macro se pondrá en subrayado la celda B5.
Ya que esta es la celda que se encuentra una celda más a la derecha y una celda
más hacia abajo.
Como usted puede observar configurar como absoluta o relativa tiene sus ventajas
según el caso presentado.
Para lograr que las celdas empleadas en su macro sean consideradas como
relativas, al grabar una Macros, debe activar Referencias relativa.
Usted puede combinar celdas absolutas y relativas en una macro.
Ejemplo:
Range(“A1”).Select Selecciona la celda A1
Ejemplo:
ActiveCell.FormulaR1C1 = "=R[-1]C+1"
Realiza la fórmula n = n +1
5. A partir de este momento todo acción que realice se grabará como parte de la
Macro
6. Presione las teclas Ctrl + Inicio para ubicarse en la primera celda.
7. Haga un clic en la celda A4, luego presione [Ctrl] + [*] para seleccionar toda la
base de datos.
Elegir “Ordenar_Por:Apellidos”
y hacer clic en el botón
15. Agregar los otros dos botones y asignar la Macro, su hoja debe quedar como se
muestra en la gráfica, cada vez que presione los botones se ordenará la tabla.
5. A partir de este momento todo acción que realice se grabará como parte de la
Macro
6. Presione las teclas Ctrl + Inicio para ubicarse en la primera celda.
7. Haga un clic en la celda A4, luego presione [Ctrl] + [*] para seleccionar toda la
base de datos.
Elegir la opción
“Filtra_Afil_AFP”
17. Repetir este procedimiento para signar Macro a los otros dos botones de opción
Seleccionar la opción
Plantillas instaladas
Seleccionar una de
las plantillas
Microsoft Office
Online Seleccionar una de
las plantillas
mostradas
Elegir la
plantilla
que
quiera
utilizar
Elegir
plantillas
Consideraciones
El Programa que se determinó utilizar será MICROSOFT EXCEL For Windows,
ya que se maneja poca información y dado el conocimiento de su personal del
Suite Office.
El Sistema de Planillas será almacenado en el archivo PLANI2008.XLS y el
análisis ha determinado que será distribuido en varias hojas de cálculo, según el
siguiente flujograma de datos.
Proceso de Automatización
1. Automatización del Sistema de Planillas
1.1. Crear un nuevo Libro o Cuaderno de Trabajo
1.2. Asignar nombres a las Hojas de Cálculo
Para una mejor comprensión de donde se encuentra cada Información, se le
asignarán nombres a todas las hojas según el Flujo Lógico del Programa (ver
parte inferior del libro).
MANTENIMIENTO DE LA PLANILLA
Una vez culminada la Planilla:
Copiar la hoja Planilla a Plani Ago 2008 (Hoja Histórica)
Copiar todos las fórmulas a valores (para que no cambien su valor si hay
modificaciones)
Ahora puede generar las Planillas de los siguientes meses, guardando como una
Hoja Histórica la Planillas ya realizadas.
Cuestionarios
4. Qué es un Macrovirus.
Procedimientos
Objetos
Código
Es por tanto un término medio entre la programación tradicional, formada por una
sucesión lineal de código estructurado, y la programación orientada a objetos.
Combina ambas tendencias. Ya que no podemos decir que Visual Basic
pertenezca por completo a uno de esos dos tipos de programación, debemos
inventar una palabra que la defina: PROGRAMACION VISUAL.
Análisis
En esta etapa se construye un modelo del problema extraído del mundo real
especificando los elementos que alimentan el proceso (especificaciones de
entrada), los elementos que se espera produzca el proceso (especificaciones de
salida) y se define lo mejor posible al problema en sí mismo.
Para poder definir bien un problema es conveniente responder a las siguientes
preguntas
1. ¿Qué es lo que me pide que realice el problema?
Análisis del
problema
Estructura Secuencial.
Este tipo de algoritmos se caracteriza por que entre sus
instrucciones no existen estructuras condicionales ni
repetitivas, se desarrollan línea a línea hasta culminar con su
ejecución, gráficamente se observaría de la siguiente manera:
Ejemplo
Diseñar un programa que permita hallar el área de un triangulo rectángulo si se
sabe: Área_triángulo = (B * H) / 2
Donde B es base del triangulo y H es la altura.
1. Análisis
i. ¿Qué te piden que realices?
Hallar el área de un triangulo.
ii. ¿Qué datos necesito conocer?
Según la fórmula que se muestra debería de conocer la base y la altura.
2. Planteamiento Lógico.
El problema se resuelve con una fórmula matemática AR = B*H
3. Definición de variables de entrada
Las variables que se usaran para la captura de la base y la altura son: B y H.
4. Definición de variables de salida
La variable en donde se muestra el área del triangulo rectángulo es: AR
5. Programa
Sub AreaTriangulo()
Dim a B as integer
Dim H as integer
Dim AR as single
B= val (Textbox1.text)
H = val (Textbox¨2.text)
AR = (B*H) / 2
Textbox2.text = AR
End Sub
Estructura Condicional.
Este tipo de algoritmos se caracteriza por que entre sus instrucciones muestran
estructuras condicionales.
a. Condiciones Simples. Sentencia SI – ENTONCES
Se ejecuta un conjunto de instruciones si se cumple la condición
V
Condición Instrucciones
F V
Condición
Instrucciones_B Instrucciones_A
Ejemplo
Realizar un algoritmo que permita ingresar 2 números, luego determinar
si el primer número ingresado fue el mayor (mostrar un mensaje).
1. Análisis.
i. ¿Qué te piden que realices?
Evaluar 2 números para determinar si el primer número
ingresado fue el mayor.
ii. ¿Qué datos necesito conocer?
Los 2 números.
2. Planteamiento Lógico.
La forma directa de poder saber si un número es mayor a otro es
creando una condición relacional. A > B
3. Definición de variables de entrada.
Se requerirán dos variables, N1 y N2 que representen a los números
que se evalúan.
4. Definición de variables de salida.
Para este problema no existirán variables de salida debido a que se
desea mostrar solo mensajes.
5. Programa
Private Sub CommandButton1_Click()
N1 = val(text1.text)
N2 = val(text2.text)
If n1>n2 then
INICIO
Declaración de variables
N1, N2: entero
N1, N2
F V
A>B
El primer El primer
número no número es
es mayor mayor
FIN
Sentencia selección-caso
Esta es una estructura de decisión múltiple, evaluará una expresión condicional
que podrá tomar uno de los “n” valores distintos que para algunos casos puede
tratarse de rangos o valores individuales, según cumpla con uno de estos.
Ejemplo
Un movil recorre un tramo de la carretera con Movimiento Rectilíneo Uniforme
(MRU), determinar y mostrar cual es el espacio recorrido:
Espacio = Velocidad * Tiempo
Adicionalmente mostrar un mensaje que indique el consumo de gasolina según la
tabla:
0 y 30 1 galón
31 y 60 2 galones
1. Análisis.
ii. ¿Qué te piden que realices?
Calcular el espacio recorrido y en base a ello mostrar cuanta
gasolina se consume.
iii. ¿Qué datos necesito conocer?
La velocidad y el tiempo (según formula).
2. Planteamiento Lógico.
El desarrollo es simple, solamente deberá ingresar la velocidad y el tiempo
para calcular el espacio recorrido, en base a ello deberá observar la tabla para
que desarrolle la estructura correspondiente y muestre el mensaje solicitado.
Ejemplo:
Si el espacio recorrido es de 25 kilómetros
El mensaje es 1 galón.
3. Definición de variables de entrada.
Se requerirán dos variables, V y T que representen a la velocidad y el tiempo
respectivamente.
4. Definición de variables de salida.
La variable de salida estará representada por E.
5. Programa.
Private Sub CommandButton1_Click()
v = val(text1.text)
t = val(text2.text)
e = v*t
Select case e
case 0 to 30
INICIO
Declaración de variables
V, T, E: entero
V, T
E=V*T
E
31 y 60
0 y 30 60 y 200
FIN
Estructura Repetitiva.
Conjunto de instrucciones que se repiten un número determinado de veces
mientras se cumple una determinada condición o en todo caso se le ha dado un
límite de veces a ejecutar.
Inicio de Bucle
Instrucción 1
Instrucción N
Fin de Bucle
Inicio de Bucle
Fin de Bucle
N
Acumulador. Es denominado también totalizador,
es una variable cuya misión es almacenar cantidades
o valores resultantes de sumas sucesivas. Realiza la AC = AC + N
misma función que un contador con la diferencia de
que el incremento o decremento de cada suma es
Fin de Bucle
variable en lugar de constante como en el caso del
contador.
Ejemplo
Desarrollar un algoritmo que permita calcular y mostrar la suma de los n
primeros números naturales, deberá ingresar el límite de números a sumar.
S = 1 + 2 + 3 + 4 + 5 +... + n
1. Análisis.
i. ¿Qué te piden que realices?
Calcular la suma de n números naturales.
ii. ¿Qué datos necesito conocer?
La cantidad de números a sumar.
2. Planteamiento Lógico.
Este problema se puede haciendo uso de acumuladores y contadores.
3. Definición de variables de entrada.
Se requerirán una variable que represente a la cantidad de números a
sumar(N).
4. Definición de variables de salida.
Tilizaremos la variable AC.
5. Programa
General Declaraciones
Dim i As Byte
Dim AC As Integer
INICIO
Declaración de variables
I, N, AC: entero
AC = 0
Para I=1
Hasta N
AC = AC + I
AC
FIN
Ventana de
proyecto
Formulario
Cuadro de
herramientas
d. Diseñador de Formularios
Funciona como una ventana en la que se puede personalizar el diseño de la
interfaz de usuario (ventana) de una aplicación.
e. Explorador de Proyectos
Lista de los archivos (formularios, módulos, etc.) del proyecto actual. Un
Proyecto es una colección de archivos que utiliza para construir una
aplicación.
f. Ventana de Propiedades
Lista los valores de las propiedades del formulario o control seleccionado
que pueden ser modificados durante el diseño del formulario o control.
g. Ventana de Código
Funciona como un editor para escribir el código (sentencias) de la
aplicación. Cuando se ingresa el nombre de una función en la ventana de
código, Visual Basic automáticamente proporciona el formato o sintaxis de
la función.
Término Definición
Formularios
El formulario es el principal medio de
comunicación entre el usuario y la
aplicación. Los usuarios interactúan con los
controles sobre el formulario para ingresarle
datos y obtener resultados, para mostrar las
propiedades de un objeto pulsar F4.
Propiedades
BackColor Color de fondo del formulario.
Caption Texto en la barra de título del formulario.
Enabled True/False. Determina si está habilitado para responder a las
acciones del usuario.
Left y Top Ubicación del formulario.
Name Nombre del formulario.
Eventos
Activate Ocurre cuando el formulario se convierte en la ventana activa.
Click Ocurre cuando hace clic sobre el formulario.
Deactivate Ocurre cuando el formulario deja de ser la ventana activa.
La Ventana de Código
La Ventana de Código se usa para escribir, mostrar y editar el código de su
aplicación. Puede abrir una ventana de código por cada módulo de su aplicación,
de modo que puede fácilmente copiar y pegar entre ellos. El editor de texto es
solo un editor ASCII.
Lista de eventos
Lista de objetos
La barra de división
Editando Código
Use las características de edición de Visual Basic para que su código sea más
fácil de leer.
Sangría
Use la sangría para diferenciar partes de su código, tales como estructuras
repetitivas y condicionales. Veamos el siguiente ejemplo:
Comentarios
El añadir documentación y comentarios a su código permite comprender mejor lo
que hace el código. El texto que continúe al símbolo de comentario será ignorado
en la ejecución de la aplicación. Veamos el siguiente ejemplo:
Procedimientos
Existen dos tipos de procedimientos con los que se trabaja en Visual Basic: los
procedimientos de evento y los procedimientos generales.
Procedimientos de Evento
Visual Basic invoca automáticamente procedimientos de evento en respuesta a
acciones del teclado, del ratón o del sistema. Cada control tiene un conjunto fijo
de procedimientos de evento. Los procedimientos de evento para cada control
son mostrados en un cuadro de lista despegable en la ventana de código.
Procedimientos Generales
Son procedimientos Sub o Function que son creados para que lleven a cabo tareas
específicas.
Para crearlos hacer clic en el menú Insertar, Procedimiento.
Si se tiene código duplicado en varios procedimientos de evento, se puede
colocar el código en un procedimiento general y luego invocar al procedimiento
general desde los procedimientos de evento.
Procedimientos Sub
Los procedimientos Sub no retornan valores. Por ejemplo:
Public Sub Seleccionar(Cuadro As TextBox)
Cuadro.SelStart = 0
Cuadro.SelLength = Len(Cuadro.Text)
End Sub
Los procedimientos Sub son invocados especificando sólo el nombre del
procedimiento, o empleando la instrucción Call con el nombre del procedimiento.
Por ejemplo:
Call Seleccionar(Text1)
Si se emplea la instrucción Call, se debe encerrar la lista de argumentos entre
paréntesis. Si se omite Call, también se deben omitir los paréntesis alrededor de
la lista de argumentos.
Procedimientos Function
Los procedimientos Function devuelven valores. En el siguiente ejemplo, el
procedimiento Function recibe un número y devuelve ese número al cuadrado.
Public Function Cuadrado(N As Integer) As Integer
Cuadrado = N * N
End Function
Si se desea guardar el valor devuelto, se debe usar paréntesis cuando se invoque a
la función, como se muestra a continuación:
Resultado = Cuadrado (5)
Si se omiten los paréntesis, se puede ignorar el valor devuelto y no guardarlo en
una variable. Esto puede ser útil si se quiere ejecutar una función y no se desea el
valor devuelto. Por ejemplo:
Sentencia PUBLIC
Puede emplearse solamente en la sección de declaraciones de un Formulario o
Módulo. La sintaxis es de la siguiente forma:
Si se declara de esta forma en la
Public nombrevariable As Tipovariable sección de declaraciones de un
Para nombrarla, si estamos en el Formulario Formulario, esa variable puede usarse
en toda el programa.
donde se declaró basta con citarla por su
nombre. Si no estamos en ese Formulario,
habrá que citarla por el nombre del Formulario, seguido del nombre de la
variable, separado por un punto:
NombreFormulario.Nombrevariable
Sentencia GLOBAL
Una variable declarada como Global es reconocida en cualquiera de los
formularios y módulos del proyecto. La sintaxis es:
Global nombrevariable As tipovariable La sentencia Global sólo puede usarse
en el apartado de declaraciones de un
Módulo.
Sentencia STATIC
Variable estática permite retener el valor de la variable cuando se vuelve a
invocar el proc. o función. Esta declaración como estática se realiza mediante la
instrucción Static
Static nombrevariable As tipovariable Sólo `puede declararlo dentro
de un procedimiento o función.
Pese a que Visual Basic no obliga a declarar variables, es muy útil hacerlo. De
esta forma se tiene control sobre el programa. La experiencia se lo irá
demostrando.
La cadena de caracteres devuelta por TypeName puede ser una de las siguientes:
Propiedades
Enabled True/False. Establece un valor que determina si el control
puede responder a eventos generados por el usuario.
Font Establece la fuentes, estilo y tamaño para el texto del control.
Locked True/False. Determina si es posible modificar el texto en el
control.
MaxLength Establece la longitud máxima permitida para el texto en el
control.
MultiLine Establece si el control puede aceptar múltiples líneas de texto.
Name Nombre del control.
PasswordChar Carácter utilizado para ocultar el texto que realmente contiene
el control.
Text Texto que realmente contiene y muestra el control.
Visible Establece si el control será visible para el usuario.
Eventos
Change Ocurre cuando cambia el texto que contiene el control.
KeyDown Ocurre cuando el usuario presiona una tecla mientras el
control tiene el enfoque.
Propiedades
Caption Establece el texto que muestra el botón.
Font Establece la fuente, estilo y tamaño para el texto del control.
Name Nombre del botón.
Visible True/False. Establece si el botón será visible para el usuario.
Eventos
Click Ocurre cuando se hace clic sobre el botón.
Estableciendo Propiedades
Al diseñar la interface de usuario de una aplicación Visual Basic, se deben
establecer la propiedades para los controles (objetos) creados.
Dim sNombre as String Asigna a la variable sNombre el valor del cuadro de texto
sNombre = txtName.Text txtName
Option Explicit
Obliga a declarar previamente las variables que se vayan a usar.
Esta declaración debe ponerla al comienzo de la sección de declaraciones de cada
formulario y módulo que contenga su aplicación.
Tipos de Variables
Las variables pueden ser de los siguientes tipos: (El número indicado en segundo
lugar indica el número de Bytes que ocupa en memoria.)
Currency Entero,
con punto
decimal
fijo
(Típico de
monedas)
Los bytes necesarios para almacenar esa variable dependerán de los datos que se
hayan definido.
Declaración de variables
Para declarar una variable se utiliza la sentencia Dim.
Sintaxis: Dim nombre_variable As Tipo_variable
Tipos de variables
A continuación se describen los tipos de variable.
a. Variables Alfanuméricas
Es toda información que va a contener texto o la unión de textos y números;
información que no representa cálculos matemáticos.
Ejemplo:
Nombre de una persona Dim nombres As String
Apellido Paterno de una persona Dim apel_pat As String
Dirección de una persona Dim direccion As String
En el caso del DNI, código postal, No. De calle, piso del edificio, etc. Es
recomendable declararlo como cadena. Para ahorrar memoria.
b. Variable Numéricas
¿Qué variables debemos declarar entonces como numéricas ? La respuesta es
bien sencilla: Aquellas que van a contener datos con lo que vamos a realizar
operaciones matemáticas.
Ejemplo:
Edad de una persona Dim nombres As Byte
Nota de un curso Dim nota1 As Byte
Sueldo Básico Dim basico As Single
Bonificaciones Dim boni1 As Single
Las variables booleanas (True/False) pueden en muchos casos sustituirse por una
variable del tipo Byte. Si ese datos True / False se va a introducir en una base de
datos o en fichero en el disco, puede ser más prudente poner 0 en vez de False y 1
en vez de True.
Una variable byte ocupa muy poco, simplemente 1 byte como su nombre indica.
Pero no puede contener números mayores de 255 ni números negativos.
Cada vez que declare una variable numérica piense en los valores que puede
tener, sobre todo cuando esa variable va a ser el resultado de una operación
matemática. Recuerde el escaso margen de una variable tipo Integer ( de -32768
a 32767)
Si la aplicación va a tratar moneda, piense en la forma de expresar los números
decimales y el número de ellos permitidos, así como el redondeo.
c. Variable Date
Otro tipo de variable es Date. Este tipo de variable representa una fecha.
Ejemplo:
Fecha de nacimiento de una persona Dim fnac As Date
d. Variable Boolean
Este tipo de variable representa dos valores TRUE (verdadero) o FLASE (falso).
Ejemplo:
Sexo Dim sexo As Boolean
Esta declaración está MAL hecha. Visual Basic interpretará que Variable1,
Variable2 y Variable3 son del tipo Variant, y solamente Variable4 la supone
como tipo String
La forma correcta de hacerlo, si queremos declarar esas variables un una sola
línea, es la siguiente :
Dim Variable1 As String, Variable2 As String, Variable3 As String, Variable4
As String.
Constantes
Una constante es un nombre significativo que sustituye a un número o una
cadena que no varía. Hay dos orígenes para las constantes:
Constantes intrínsecas o definidas por el sistema proporcionadas por
Visual Basic.
Las constantes simbólicas o definidas por el usuario se declaran mediante
la instrucción Const.
Puede colocar más de una declaración de constante en una única línea si las
separa con comas:
Public Const conPi=3.14, conMaxPlanetas=9, conPobMundial=6E+09
Operadores
a. Aritméticos
^ Exponenciación
* Multiplicación
/ División
\ División entera
Mod Residuo entero (Ejm: A Mod B)
+ Suma
- Resta
& Concatenación de cadenas
b. Comparación
= Igual
<> Distinto
< Menor que
c. Lógicos
And “Y” lógico
Or “O” lógico
Xor “O” Exclusivo
Not Negación
If condición Then
Sentencias
End If
Donde:
Condición. Es una expresión lógica, que devuelve un valor lógico: Verdadero o
falso. Ejemplo:
If then en una sola línea,
sólo puede ejecutar una
If cualquierFecha < Now Then CualquierFecha = Now línea de código
o
If cualquierFecha < Now Then
De este otro modo se pueden ejecutar varias líneas de
CualquierFecha = Now código
End If
o
Private Sub DeterminaCondición ( )
If Val (txtPromedio) >=13 Then
txtCondición = “Aprobado”
ElseIf Val (txtPromedio) >= 10 Then
txtCondición = “Asistente”
Else
txtCondición = “Desaprobado”
End If
End Sub
Observe que siempre puede agregar más cláusulas ElseIf a la estructura If...Then.
Sin embargo, esta sintaxis puede resultar tediosa de escribir cuando cada ElseIf
compara la misma expresión con un valor distinto. Para estas situaciones, puede
utilizar la estructura de decisión Select Case.
Por ejemplo, suponga que agrega otro comando al menú Edición en el ejemplo
If...Then...Else. Podría agregar otra cláusula ElseIf o podría escribir la función
con Select Case:
Observe que la estructura Select Case evalúa una expresión cada vez que al
principio de la estructura. Por el contrario, la estructura If...Then...Else puede
evaluar una expresión diferente en cada sentencia ElseIf. Sólo puede sustituir una
esructura If...Then...Else con una estructura Select Case si la intrucción If y cada
instrucción ElseIf evalúa la misma expresión.
Otros Ejemplos
Do...Loop
Utilice el bucle Do para ejecutar un bloque de sentencias un número indefinido
de veces. Hay algunas variantes en la sentencia Do...Loop, pero cada una evalúa
una condición numérica para determinar si continúa la ejecución. Como ocurre
con If...Then, la condición debe ser un valor o una expresión que dé como
resultado False (cero) o True (distinto de cero).
Do While condición Cuando se ejecuta este bucle Do, primero evalúa condición. Si
condición es False (cero), se salta todas las sentencias. Si es True
Sentencias (distinto de cero) Visual Basic ejecuta las sentencias, vuelve a la
instrucción Do While y prueba la condición de nuevo.
Loop
Hay otras dos variantes análogas a las dos anteriores, excepto en que repiten el
bucle siempre y cuando condición sea False en vez de True.
Hace el bucle cero o más veces Hace el bucle al menos una vez
Do Until condición Do
Sentencias Sentencias
Loop Loop Until condición
For...Next
Utiliza una variable llamada contador que incrementa o reduce su valor en cada
repetición del bucle. La sintaxis es la siguiente:
Los argumentos contador,
iniciar, finalizar e incremento
son todos numéricos.
For contador = iniciar To finalizar [Step incremento]
Sentencias El argumento incremento puede ser positivo
Next [contador] o negativo. Si incremento es positivo, iniciar
debe ser menor o igual que finalizar o no se
ejecutarán las sentencias del bucle.
Si incremento es negativo, iniciar debe ser mayor o igual que finalizar para que se ejecute el
cuerpo del bucle. Si no se establece Step, el valor predeterminado de incremento es 1.
Este código imprime los nombres de todas las fuentes de pantalla disponibles:
For Each...Next
El bucle For Each...Next es similar al bucle For...Next, pero repite un grupo de
sentencia por cada elemento de una colección de objetos o de una matriz en vez
de repetir las sentencias un número especificado de veces.
Esto resulta especialmente útil si no se sabe cuántos elementos hay en la
colección. He aquí la sintaxis del bucle For Each...Next:
Referencia Significado
Range("A1") Celda A1
Range("A1:B5") Celdas de la A1 a la B5
Range("A:A") Columna A
Range("1:1") Fila 1
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") Filas 1, 3 y 8
Range("A:A,C:C,F:F") Columnas A, C y F
Sub IngreseValor()
Worksheets("Hoja1").Cells(6, 1).Value = 10
End Sub
Sub CicloHojas()
For Contador = 1 To 20
Worksheets("Hoja1").Cells(Contador,3).Value = Contador
Next Contador
End Sub
A continuación, la propiedad Bold del objeto Font del rango se establece en True.
Sub FilasNegrita()
Worksheets("Hoja1").Rows(1).Font.Bold = True
End Sub
Referencia Significado
Para trabajar con varias filas o columnas al mismo tiempo, cree una variable de
objeto y utilice el método Union, combinando varias llamadas a la propiedad
Rows o Columns.
El siguiente ejemplo cambia a negrita el formato de las filas uno, tres y cinco de
la hoja de cálculo uno del libro activo.
Sub FilasNegritaVarios()
Worksheets("Hoja1").Activate Dim
myUnion As Range
myUnion.Font.Bold = True
End Sub
Sub BorrarRango()
Worksheets("Hoja1").[A1:B5].ClearContents
End Sub
Sub AsinarValor()
[MyRange].Value = 30
End Sub
Sub FormatSales()
Range("[Libro1.xls]Hoja1!Ventas").BorderAround Weight:=xlthin
End Sub
Para seleccionar un rango con nombre utilice el método GoTo, que activa el libro
y la hoja de cálculo y, a continuación, selecciona el rango.
Sub LimpiaRango()
Application.Goto Reference:="Libro1.xls!MiRango"
Selection.ClearContents
End Sub
Sub LimpiarRango()
Application.Goto Reference:="MiRango"
Selection.ClearContents
End Sub
Sub AplicarColor()
Const Limit As Integer = 25
For Each c In Range("MiRango")
If c.Value > Limit Then
c.Interior.ColorIndex = 27
End If
Next c
End Sub
Sub SubrayadoDoble()
End Sub
Nota. Puede grabar macros que utilicen la propiedad Offset en lugar en
referencias absolutas. En el menú Herramientas elija Macro, haga clic en Grabar
nueva macro, haga clic en Aceptar y, a continuación, en el botón Referencia
relativa en la barra de herramientas de grabación de macros.
Para ejecutar un bucle en un rango de celdas, utilice en el rango una variable con
la propiedad Cells. El siguiente ejemplo rellena las primeras 20 celdas de la
tercera columna con valores entre 5 y 100, en incrementos de 5.
La variable contador se utiliza como índice de fila para la propiedad Cells.
Sub HojasValores()
Dim contador As Integer
For contador = 1 To 20
Worksheets("Hoja1").Cells(contador, 3).Value = contador * 5
Next contador
End Sub
Los rangos con nombre permiten que la propiedad Range funcione más
fácilmente con varios rangos.
El siguiente ejemplo funciona cuando los tres rangos con nombre están en la
misma hoja.
Sub BorrarNombres()
Range("MiRango, TLista, TValores").ClearContents
End Sub
Sub MultiplesRangos()
Dim r1, r2, MiMultiplesRangos As Range
Set r1 = Sheets("Hoja1").Range("A1:B2")
Set r2 = Sheets("Hojat1").Range("C3:D4")
Set MiMultiplesRangos = Union(r1, r2)
MiMultiplesRangos.Font.Bold = True
End Sub
Si no conoce los límites del rango en que desea ejecutar el bucle, puede utilizar la
propiedad CurrentRegion para devolver el rango que rodea la celda activa.
Por ejemplo, el siguiente procedimiento, cuando se ejecuta desde una hoja de
cálculo, ejecuta un bucle en el rango que rodea la celda activa, estableciendo en 0
(cero) todos los números cuyo valor absoluto sea menor que 0.01.
Sub EstableceCero3()
For Each c In ActiveCell.CurrentRegion.Cells
If Abs(c.Value) < 0.01 Then c.Value = 0
Next
End Sub
Para obtener ejemplos sobre cómo utilizar métodos para controlar las celdas sin
seleccionarlas, consulte Cómo hacer referencia a celdas y rangos.
Sub CopiarFilas()
Worksheets("Hoja1").Rows(1).Copy
Worksheets("Hoja2").Select
Worksheets("Hoja2").Rows(1).Select
Worksheets("Hoja2").Paste
End Sub
Sub CeldaActiva1()
Worksheets("Hoja1").Activate
ActiveCell.Value = 35
End Sub
Nota. Sólo se puede trabajar con la celda activa cuando la hoja de cálculo en la
que se encuentra sea la hoja activa.
Sub CeldaActiva2()
Worksheets("Hoja1").Activate
Worksheets("Hoja1").Range("B5").Activate
ActiveCell.Font.Bold = True
End Sub
Nota. Para seleccionar un rango de celdas, use el método Select. Para activar sólo
una celda, utilice el método Activate.
Puede utilizar la propiedad Offset para pasar a la celda activa.
El siguiente procedimiento inserta texto en la celda activa del rango seleccionado
y, a continuación, mueve la celda activa una celda a la derecha, sin cambiar la
selección.
Sub MoverDatos()
Worksheets("Hoja1").Activate
Range("A1:D10").Select
ActiveCell.Value = "Total Mensual"
ActiveCell.Offset(0, 1).Activate
End Sub
Sub Region()
Worksheets("Hoja1").Activate
ActiveCell.CurrentRegion.Select
Selection.Style = "Currency"
End Sub
Si desea trabajar con todos los tipos de hojas (hojas de cálculo, de gráficos, de
módulos y de diálogo), utilice la propiedad Sheets.
El siguiente procedimiento activa la hoja cuatro del libro.
Sub SeleccionarHoja()
Sheets(4).Activate End
Sub
Puede utilizar la propiedad Sheets para devolver una hoja de cálculo, de gráficos,
de módulo o de cuadro de diálogo, incluidos todos en el conjunto Sheets.
El siguiente ejemplo activa la hoja denominada "hoja1" del libro activo.
Sub ActivarHoja()
Worksheets("hoja1").Activate
End Sub
Botón
3. Se presenta la ventana de formulario
Propiedades
Caption Título de marco.
Enabled Determina si está habilitado para responder a las acciones del
usuario.
Name Nombre del control.
Visible Determina si el Marco y los controles que contiene están
visibles o no.
Propiedades
Caption Descripción que acompaña a la casilla.
Enabled True/False. Determina si está habilitado para responder a las
acciones del usuario.
Name Nombre del control.
Eventos
Click Ocurre cuando el usuario hace clic sobre la casilla.
Propiedades
Caption Descripción que acompaña a la opción.
Enabled True/False. Determina si está habilitado para responder a las
acciones del usuario.
Name Nombre del control.
Value True/False, marcado o no marcado.
Visible True/False.
Determina si el
botón está visible
o no.
Eventos
Click Ocurre cuando el
usuario hace clic
sobre el botón.
Propiedades
Enabled True/False. Determina si el control responde a las acciones del
usuario.
List Arreglo con los elementos de la lista.
ListCount Número de elementos de la lista.
ListIndex Elemento seleccionado.
MultiSelect Establece si es posible seleccionar varios elementos o uno
solo.
Name Nombre del control.
Selected Arreglo de valores lógicos paralelo y del mismo tamaño al
arreglo list, indica que elementos han sido seleccionados
(True) de la lista. Se utiliza en lugar de ListIndex cuando
establecemos la propiedad Multiselect en 1 ó 2.
Sorted True/False. Establece los elementos se ordenan
alfabéticamente.
Style Establece el comportamiento del control.
Text Devuelve el elemento seleccionado en el cuadro de lista; el
valor de retorno es siempre equivalente al que devuelve la
expresión List(ListIndex). Es de sólo lectura en tiempo de
diseño y es de sólo lectura en tiempo de ejecución.
Métodos
AddItem Permite añadir nuevos elementos a la lista.
RemoveItem Permite eliminar elementos de la lista.
Eventos
Click Ocurre cuando el usuario interactúa con el control.
Ejemplos:
Muestra en el Cuadro de Texto
txtGaseosa el elemento seleccionado
Propiedades
Enabled True/False. Determina si el control responde a las acciones del
usuario.
List Arreglo con los elementos de la lista.
ListCount Número de elementos de la lista
ListIndex Elemento seleccionado.
Name Nombre del control.
Sorted True/False. Establece si los elementos se ordenan
alfabéticamente.
Style Establece el comportamiento del control.
Text Texto que contiene el control.
Métodos
AddItem Permite añadir nuevos elementos a la lista.
RemoveItem Permite eliminar elementos de la lista.
Eventos
Click Ocurre cuando el usuario interactúa con el control
Change Ocurre cuando el valor de la propiedad Text es modificado.
Propiedad Style
Esta propiedad establece el comportamiento del control ComboBox, y puede
tomar los siguientes valores:
Ejemplo
En la siguiente interfaz se ilustra el uso del control ComboBox y la propiedad
Style.
Función MsgBox()
Los cuadros de mensaje ofrecen un modo simple y rápido de consultar a los
usuarios por información simple o para permitirles tomar decisiones sobre el
camino que su programa debe tomar. Puede usar esta función para mostrar
diferentes tipos de mensaje y botones con los cuales el usuario da una respuesta.
Función InpuBox()
La función InputBox muestra un mensaje en un cuadro de diálogo, espera que el
usuario escriba un texto o haga clic en un botón y devuelve un tipo String con el
contenido del cuadro de texto.
El método nos devuelve una cadena con la ruta y nombre del archivo
seleccionado.
Sintaxis
Object.GetOpenFilename(FileFilter,FilterIndex,Title,ButtonText,Multiselect)
Argumentos
FileFilter. Opcional. Una serie especifica con criterios de filtro de
archivo.
FilterIndex. Opcional. Los números del índice por defecto bajo criterios
de filtro de archivo.
Titulo. Opcional .El titulo del cuadro de dialogo. si se omite, el titulo..
mostrara "Abrir"
ButtonText. Solo para Macintosh
Multiselect. Opcional. Si es verdadero, se pueden seleccionar varios
nombres de archivos
El argumento Filtro de archivo determínalo que muestra el cuadro de
dialogo de los archivos del tipo lista desplegable. Consiste en pares de
series de filtro de archivo seguido del comodín especificado. Si se omite
sera por defecto : "All File(*.*),*.*"
Ejemplo
El argumento Filterindex especificara el tipo de archivo que aparece por defecto,
'el titulo del argumento es un texto que se despliega en la barra del título. si el
argumento de multiselect es verdadero,el usuario puede seleccionar varios
archivos(y se devolveran en una serie)
Función GetSaveAsFileName
Permite grabar un archivo
Ejemplo
Private Sub CommandButton2_Click()
Dim FileSaveName As Variant
FileSaveName = Application.GetSaveAsFilename( _
Filefilter:="Libro de microsoft Office Excel (*.Xls), *.Xls," & "Ficheros de
TEXTO (*.TXT), *.TXT", _
Title:="Guardar Archivo", _
InitialFileName:="MyLibro666", _
FilterIndex:=1)
'Si Anulamos la operacion con Cancelar...
If FileSaveName = False Then
MsgBox "El libro no será Guardado", vbInformation + vbOKOnly,
"ATENCION:"
Exit Sub
End If
ActiveWorkbook.SaveAs Filename:=FileSaveName
End Sub
Sub CrearNuevoLibro()
Workbooks.Add
End Sub
Abrir un libro
Al abrir un nuevo libro utilizando el método Open, se convierte en un miembro
del conjunto Workbooks.
El siguiente procedimiento abre un libro denominado Amortizacion.xls, ubicado
en la carpeta SENATI de la unidad C.
Sub AbrirLibro()
Workbooks.Open("C:\SENATI\Amortizacion.xls")
End Sub
Cuestionarios
2. Crear un formulario aplicativo que permita ingresar una contraseña al abrir una
hoja de cálculo.
Sub primos() ' Igual que primos pero evitando usar etiquetas y goto
Dim i As Long
Dim j As Long
Dim p As Long
Dim n As Long
Dim primo As Boolean
n = InputBox("¿Hasta que número? (máximo 821507)", "Calculo de primos")
p=1
Application.Workbooks("primos.xls").Sheets("Hoja1").Range("c6").Select
ActiveCell.Value = 2
ActiveCell.Offset(1, 0).Value = 3
For i = 5 To n Step 2
primo = True
For j = 3 To Sqr(i) Step 2
If (i / j) - Int(i / j) = 0 Then primo = False: Exit For
Next j
If primo Then
p=p+1
ActiveCell.Offset(p, 0).Value = i
End If
Next i End
Sub
Sub Limpiar()
Range("B6").Select
Selection.CurrentRegion.Select
Selection.ClearContents
Range("B6").Select
End Sub
Ejercicio 2: Fechas
Option Explicit
Sub nacimiento()
Dim dias As Integer, Dsemana As Integer, Factual As Date, d As String, cumple As Date
Rem Dsemana es una variable que da un número que indica el día de la semana
Rem dado por la función WEEKDAY, que en Excel es =DIASEM(fecha)
Static Fnacimiento As Date
Factual = Date 'Date es la función de VBA equivalente a =HOY()
Fnacimiento = Factual
Fnacimiento = InputBox(Prompt:="Introduzca su fecha de nacimiento", _
Title:="Formato DD-MM-AAAA", Default:=Fnacimiento)
dias = Factual - Fnacimiento
Dsemana = Application.WorksheetFunction.Weekday(Fnacimiento)
Select Case Dsemana
Case 1: d = "Domingo"
Case 2: d = "Lunes" Case
3: d = "Martes" Case 4: d =
"Miercoles" Case 5: d =
"Jueves" Case 6: d =
"Viernes" Case 7: d =
"Sabado" End Select
MsgBox Prompt:="Usted nació un " & d & " hace " & dias & " días" & Chr(10) _
& "Tiene " & CalEdad(Fnacimiento) & " Años", _
Title:="Esta información es correcta siempre que hoy sea " & Factual
End Sub
Sub Trimestres()
'Proporciona el trimestre en el que se encuentra una fecha
Dim LaFecha As Date
Dim Msj
LaFecha = InputBox("Escriba una fecha:")
Msj = "Trimestre: " & DatePart("q", LaFecha)
'DatePart es una función VBA
MsgBox Msj
End Sub
Ejercicio 3: TIR
Option Explicit
Sub CalculaTIR()
Range("F7").Value = 0
Range("H7").Value = 1
Do While Abs(Range("G8")) > 0.00001 'error admitido
If Range("G8") < 0 Then
Range("H7") = Range("G7")
Else
Range("F7") = Range("G7")
End If
'La siguiente línea se utiliza para retrasar la ejecución de la macro
'de esta forma se puede ver como converge la tasa a la TIR
Application.Wait Now + TimeValue("00:00:1")
Loop
End Sub
Ejercicio 4: =PAGO
Option Explicit
Sub prestamo()
Static Principal 'Variable estática. No cambia
Static Tasa
Static Terminos
Dim Pago As Double
Principal = Application.InputBox(Prompt:="Principal (100000 por jemplo)",Default:=Principal)
Tasa = Application.InputBox(Prompt:="Tipo de interés nominal anual (4,75 por ejemplo)", Default:=Tasa)
Terminos = Application.InputBox(Prompt:="Número de años (30 por ejemplo)",Default:=Terminos)
'Vea como se usa la función de Excel Pmt (Pago) sin necesidad de calcularla en una celda
Pago = Application.WorksheetFunction.Pmt(Tasa / 1200, Terminos * 12, Principal)
MsgBox Prompt:="La Mensualidad es " & Format(-Pago, "Currency"), Title:="Calculadora de Préstamos"
End Sub
Option Explicit
Sub NombreHojas()
'Pone los nombres de las hojas, salvo la primera
Dim contador As Integer
For contador = 1 To Sheets.Count
With Sheets(1)
Cells(contador + 5, 6).Value = Sheets(contador).Name
End With
Next
End Sub
Sub Limpia()
Range("F6").Select
Selection.CurrentRegion.Select
Selection.ClearContents
Range("A1").Select
End Sub
Option Explicit
Sub EliminarFilasEnBlanco()
Dim strC As String, lngFila As Long
With Worksheets("Hoja1") 'Nombre de la hoja
For lngFila = 1 To .UsedRange.Rows.Count
If WorksheetFunction.CountA(.Rows(lngFila)) = 0 Then strC = strC & lngFila & ":" & lngFila & ","
Next lngFila
Application.ScreenUpdating = False
.Range(Left(strC, Len(strC) - 1)).Delete
Application.ScreenUpdating = True
End With
End Sub
Option Explicit
End If
Next i
Else
For i = Fecha_Inicial To Fecha_Final
If i Mod 7 <> 1 Then
esta = False
For Each c In Festivos
F = CDate(c)
If i = F Then esta = True: Exit For
Next c
If Not esta Then Laborables = Laborables + 1
End If
Next i
End If
DiasLaborablesYSabados = Laborables
End Function
Sub Filtra()
Range("basedatos").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:= _
Range("H5:K6"), CopyToRange:=Range("H12:K12"), Unique:=False
Range("A1").Select
End Sub
Sub Auto_Open()
'Copiamos y pegamos, con pegado especial valores, las celdas y9.ab9
'que son las que generan la base de datos.
Range("Y9:AB9").Select
Selection.Copy
Range("B6:E1005").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
'Nombramos la base de datos como basedatos
Range("B5").Select
Selection.CurrentRegion.Select
ActiveWorkbook.Names.Add Name:="basedatos", RefersToR1C1:="=Hoja1!R5C2:R1005C5"
Range("A1").Select
End Sub
Option Explicit
Function CuentaListaA()
Application.Workbooks("EliminarValores.xls").Worksheets("Hoja1").Range("C5").Activate
Selection.End(xlDown).Select
CuentaListaA = ActiveCell.Row - 5
End Function
Sub Repetidos()
'Borra los elementos de la columna E que esten en la C
'Pero sólo los borra una vez. Si se repiten en C sólo borra el 1º
'Si se quiere que se eliminen todos quitar del programa la vble. "salir"
Dim posicion As Long
Dim salir As Boolean
Dim comodin
Dim respuesta As String * 5
Dim filasiniciales As Long
Dim filasfinales As Long
filasiniciales = CuentaListaA
Range("E6").Select
posicion = 1
While ActiveCell.Value <> ""
comodin = ActiveCell.Value
Range("C6").Select
salir = False
While ActiveCell.Value <> "" And salir = False
If ActiveCell.Value = comodin Then
ActiveCell.Font.Bold = True
respuesta = MsgBox("¿Deseas borrar la celda " & ActiveCell.Address & "?", 4, "¡¡Encontrado!!")
If respuesta = vbYes Then
'Edición, Eliminar, Desplazar las celdas hacia arriba
Selection.Delete Shift:=xlUp
End If
salir = True
Else
ActiveCell.Offset(1, 0).Select
End If
Wend
posicion = posicion + 1
Range("E6").Select
ActiveCell.Offset(posicion - 1, 0).Select
Wend
filasfinales = CuentaListaA
MsgBox "La Lista A inicialmente tenia " & filasiniciales & " filas." & Chr(13) _
& "Se han eliminado " & filasiniciales - filasfinales & " filas." & Chr(13) _
& "Por tanto, quedan " & filasfinales & " filas."
End Sub
'En las celdas vacias de una tabla copia el valor de la celda precedente
Sub RellenarCeldas()
Range("B5").Select
Funciones personalizadas
En este capítulo trataremos:
Es muy frecuente que al hacer una modificación para añadir una funcionalidad o
corregir un error, se introduzcan nuevos errores en partes del programa que antes
funcionaban correctamente.
Características
Una función es capaz de mantener una gran independencia con el resto del
programa, manteniendo sus propios datos y definiendo muy claramente la
interfaz o comunicación con la función que la ha llamado y con las funciones a
las que llama, y no teniendo ninguna posibilidad de acceso a la información que
no le compete.
La principal característica de una función es que ésta puede ser utilizada en una
expresión porque tiene un valor de retorno.
[sentencias]
[nombre = expresion]
End Function
NOMBRES FUNCION
Parámetros Son los argumentos que son pasados cuando se llama a la función.
Exit Function Permite salir de una función antes de que ésta finalice.
Argumentos opcionales
Se puede especificar argumentos opcionales.
Cuando un argumento es opcional y en la llamada es omitido, el valor que se le pasa es
un Variant con valor Empty. A los argumentos opcionales se les puede dar en la
definición de la función un valor por defecto para el caso en que sean omitidos en la
llamada, como por ejemplo:
Argumentos arreglos
Para utilizar argumentos Array utilice la palabra ParamArray en la definición del
procedimiento, como por ejemplo:
= nombre([argumentos])
Donde argumentos son una lista de constantes, variables o expresiones separadas por
comas que son pasadas a la función.
En principio, el número de argumentos debe ser igual al número de parámetros de la
función.
Los tipos de los argumentos deben coincidir con los tipos de sus correspondientes
parámetros, de lo contrario puede haber fallos importantes en la ejecución del
programa.
En cada llamada a una función hay que incluir los paréntesis, aunque ésta no tenga
argumentos.
El siguiente ejemplo corresponde a una función que devuelve como resultado la raíz
cuadrada de un número N:
= Raiz(4)
Recursividad
Se dice que una función
(Function) es recursiva si se
llaman a sí mismos.
A continuación se presenta
una ejemplo de una función
que calcula el factorial de un
número programada de
forma recursiva.
„Cálculo de Factorial
Function Fact (N As Integer) As Long
If N = 0 Then Fact = 1 Else Fact = N * Factorial (N - 1)
End Function
Controles Active X
Veamos veremos una serie de controles que le pueden brindar interactividad a nuestras
aplicaciones Excel
Los Controles ActiveX son objetos gráficos que se colocan en un formulario
(userforms) o en una determinada posición de la hoja de trabajo, con el objetivo de
mostrar, seleccionar o introducir (capturar) datos, para la realización de una acción
determinada (ej. ejecución de una macro) o para facilitar la lectura de un formulario.
Estos objetos pueden consistir por ejemplo en cuadros de texto, cuadros de lista
(ComboBox), botones de opciones, casillas de verificación, botones de comandos,
barras de desplazamiento u otros elementos.
A continuación se describe los Controles
1. Cuadro de Texto
Un Cuadro de Texto nos permite capturar información, la cual puede ser
numérica, alfabética o alfanumérica.
2. Botón de Comando
Este tipo de control es uno de los más conocidos. Entre otras cosas, este control
nos permite por ejemplo la ejecución de una macro, o marcar el inicio de la
realización de una determinada actividad previamente asignada o programada.
3. Casilla de Verificación
Una casilla de verificación es utilizada normalmente para capturar información
previamente estructurada. Normalmente se presentan en grupos y es posible
seleccionar más de una opción.
4. Botón de Opción
Un botón de opción en general presenta las misma características que un grupo
de casillas de verificación, sólo que en este caso no es posible seleccionar más de
una opción.
5. Cuadro Combinado
Su utilización es recomendable cuando la lista de opciones es bastante extensa.
Inclusive puede ser configurado para que mostrar un cierto número de opciones
solamente, debiendo desplazarse el usuario con la barra de desplazamiento que se
generará automáticamente para buscar las otras opciones no visualizadas.
6. Cuadro de Lista
Un cuadro de lista contiene una lista de los elementos que pueden ser
seleccionados. En términos generales es prácticamente lo mismo que un cuadro
8. Botón de Alternar
Este botón puede ser utilizado para que el usuario seleccione o no una
determinada característica, ya que este control tiene la ventaja de que una vez
seleccionado permanece seleccionado, devolviendo el valor de Verdadero o Falso
según corresponda. Este botón además puede ser vinculado a una determinada
celda, en la cual devolverá el valor lógico anteriormente mencionado (verdadero
o falso).
SW = 1
cont = 1
SumaImpar = 0
SumaPar = 0
ListBox1.Clear
ListBox2.Clear
For cont = 1 To 10
If SW = 1 Then
ListBox1.AddItem cont
SumaImpar = SumaImpar + cont
SW = 0
Else
ListBox2.AddItem cont
SumaPar = SumaPar + cont
SW = 1
End If
Next
TextBox1.Text = SumaImpar
TextBox2.Text = SumaPar
End Sub
General Declaraciones
Dim FILA As Integer
MSFlexGrid1.TextMatrix(FILA, 3) = TextBox3.Text
MSFlexGrid1.TextMatrix(FILA, 4) = TextBox4.Text
MSFlexGrid1.TextMatrix(FILA, 5) = TextBox5.Text
Label7.Caption = Val(Label7.Caption) + Val(TextBox5.Text)
Call CommandButton1_Click
TextBox1.SetFocus
End Sub
MSFlexGrid1.ColWidth(0) = 10
MSFlexGrid1.ColWidth(1) = 2000
MSFlexGrid1.ColWidth(2) = 2000
MSFlexGrid1.ColWidth(3) = 2000
MSFlexGrid1.ColWidth(4) = 800
MSFlexGrid1.ColWidth(5) = 1000
WindowState = 2
End Sub
xcapital = Val(TextBox1.Text)
xinteres = Val(TextBox2.Text) Asigna como No.de
xperiodos = Val(TextBox3.Text) filas del control
FlexGrid, el número
xamortiza = xcapital / xperiodos de periodos
MSFlexGrid1.Rows = Val(TextBox3.Text) + 1
For f = 1 To Val(TextBox3.Text) Crea un ciclo
repetitivo de 1 hasta
MSFlexGrid1.TextMatrix(f, 1) = f el No. de periodos
MSFlexGrid1.TextMatrix(f, 2) = xamortiza
If f = 1 Then
MSFlexGrid1.TextMatrix(f, 3) = xcapital
Else
MSFlexGrid1.TextMatrix(f, 3) = xpa - xamortiza
End If
xi = Val(MSFlexGrid1.TextMatrix(f, 4))
MSFlexGrid1.TextMatrix(f, 5) = xamortiza + xi
Next
End Sub
MSFlexGrid1.Cols = 6
MSFlexGrid1.TextMatrix(0, 1) = "No."
MSFlexGrid1.TextMatrix(0, 2) = "Amortización"
MSFlexGrid1.TextMatrix(0, 3) = "Saldo"
MSFlexGrid1.TextMatrix(0, 4) = "Interés"
MSFlexGrid1.TextMatrix(0, 5) = "Cuota"
End Sub
Control ListBox1
General Declaraciones
Dim numpart As Integer
Dim numcrit As Integer
Dim PtjeMax As Integer
Dim PtjeMin As Integer
Dim Puntaje(12, 4) As Integer
Dim total(12) As Integer
For criterio = 1 To 4
Puntaje(candidata, criterio) = Int((10 - 5 + 1) * Rnd + 5)
Next
Next
For contpart = 1 To 12
registro = registro + "Concursante No. " & Right(("0" + Trim(Str(contpart))), 2) + " "
For contcrit = 1 To 4
registro = registro + Right(("0" + Trim(Str(Puntaje(contpart, contcrit)))), 2) + " "
Next
ListBox1.AddItem registro + Str(total(contpart))
registro = ""
Next
Cuestionarios
__
TÉCNICOS Y
ADMINISTRADORES
INDUSTRIALES
FASCÍCULO DE APRENDIZAJE
COMPUTACIÓN E
INFORMÁTICA
Parte II
CÓDIGO: 89001211
Tabla de Contenido
MEJORANDO LA PRESENTACIÓN Y VISUALIZACIÓN DE LOS DATOS CON
FORMULARIOS ..................................................................................................................... 1
Conceptos previos………………………………………………………………………………2
ASISTENTE PARA FORMULARIOS Y AUTOFORMULARIOS ............................................................. 16
Actividad 1: Crear Formulario usando asistente............................................................... 19
PROPIEDADES DEL FORMULARIO ............................................................................................. 21
Propiedades de Formato................................................................................................. 21
Propiedades de Datos..................................................................................................... 22
Actividad 2: Formulario sin acceso a datos.................................................................... 25
AUTOFORMATO ................................................................................................................... 27
VISTAS: FORMULARIO, PRESENTACIÓN Y DISEÑO.................................................................... 28
EDITAR CONTROLES ............................................................................................................ 31
Seleccionar controles.................................................................................................... 32
Cambiar las dimensiones .............................................................................................. 34
Ajustar .......................................................................................................................... 34
Mover ........................................................................................................................... 34
Alinear .......................................................................................................................... 35
Eliminar controles ......................................................................................................... 35
Agregar controles.......................................................................................................... 35
Propiedades de los controles ........................................................................................ 42
Cuadros combinados .................................................................................................... 44
Actividad 3: Insertar una etiqueta .................................................................................. 53
Actividad 4: Editar los controles de un formulario .......................................................... 53
Actividad 5: Agregar etiquetas, cajas de texto y fichas................................................... 54
FORMULARIOS CONTINUOS ................................................................................................... 56
Actividad 6: Crear un formulario continuo ...................................................................... 56
Pie de formulario........................................................................................................... 56
Encabezado de formulario ............................................................................................ 58
Actividad 7: Cuadro combinado en el encabezado ........................................................ 58
SUBFORMULARIOS ............................................................................................................... 59
Actividad 8: Subformulario creado manualmente ........................................................... 60
Utilizar el asistente para Subformularios/Subinformes Campos vinculados entre
formulario padre y formulario hijo .................................................................................. 61
Actividad 9: Subformulario empleando el asistente para formularios.............................. 64
Modificar el diseño del subformulario ............................................................................ 64
PREGUNTAS DE REPASO ...................................................................................................... 64
Actividad propuesta 1 ...................................................................................................... 65
EJERCICIOS CASOS PROPUESTOS......................................................................................... 65
Actividad propuesta 2 ...................................................................................................... 66
Actividades de investigación............................................................................................. 67
UTILIDADES ........................................................................................................................ 69
IMPORTAR .......................................................................................................................... 89
Access.......................................................................................................................... 89
Excel ............................................................................................................................ 90
Lista de SharePoint....................................................................................................... 93
Archivo de texto ............................................................................................................ 96
Actividad 1 : Importar de un Archivo de Texto............................................................... 97
Archivo XML ................................................................................................................. 100
EXPORTAR ......................................................................................................................... 102
Excel ............................................................................................................................ 103
Un archivo RTF de Word............................................................................................... 107
Lista de SharePoint....................................................................................................... 107
Archivo de texto ............................................................................................................ 109
Archivo XML ................................................................................................................. 111
PREGUNTAS DE REPASO ...................................................................................................... 112
EJERCICIOS CASOS PROPUESTOS......................................................................................... 112
Crear formularios.
Utilizar el asistente de formularios.
Modificar las propiedades de los formularios
Agregar campos a un formulario y modificar
sus propiedades
SENATI-Computación e Informática 1
Conceptos Previos:
Una base de datos es un “gran almacén de datos” que nos permite guardar grandes
volúmenes de información de forma organizada para que luego podamos ubicar
y utilizar estos datos de forma fácil y eficiente.
Una base de datos o banco de datos (Database en Ingles) es un conjunto de
datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su
posterior uso. En este sentido, una biblioteca puede considerarse una base de datos
compuesta en
su mayoría por documentos y textos impresos en papel e indexados para su consulta.
En la actualidad, y desde el punto de vista informático la base de datos es un sistema
formado por un conjunto de datos almacenados en discos (formato digital) que permiten
el acceso directo a ellos y un conjunto de programas que manipulen ese conjunto de
datos.
Puede utilizar Access para administrar todos sus datos en un solo archivo. Dentro de un
archivo de base de datos de Access, puede utilizar:
Tablas para almacenar los datos.
Consultas para buscar y recuperar exactamente los datos que desee.
Formularios para ver, agregar y actualizar datos en las tablas.
Informes para analizar o imprimir los datos con un diseño específico.
2 SENATI-Computación e Informática
Todos estos elementos: tablas, consultas, formularios e informes son objetos de bases de
datos (objetos de base de datos: una base de datos de Access contiene objetos como
tablas, consultas, formularios, informes, macros y módulos. Un proyecto de Access
contiene objetos como formularios, informes, macros y módulos.).
Nota: Algunas bases de datos de Access contienen vínculos a tablas que están
almacenadas en otras bases de datos. Por ejemplo, puede tener una base de datos de
Access que no contenga nada más que tablas y otra base de datos de Access que
contenga vínculos a esas tablas, así como consultas, formularios e informes basados en
las tablas vinculadas. En la mayoría de los casos, no tiene importancia si se trata de una
tabla vinculada o si está realmente almacenada en la base de datos.
Tablas
Una tabla es una colección de datos sobre un tema específico, como alumnos,
profesores, vehículos, distritos, productos o proveedores. La utilización de una tabla
diferente para cada tema, significa que se almacenan los datos una sola vez, lo cual
aumenta la eficacia de la base de datos, y reduce errores de entrada de datos.
No debe almacenar información de dos temas diferentes en la misma tabla.
Imagine que usted administra una cadena de tiendas que posee cinco locales de venta y
desea modificar el precio de un producto. Si los datos están centralizados usted sólo
tendrá que cambiar el precio una vez y ese cambio se verá reflejado en todos los
establecimientos. De lo contrario tendrá que ir de tienda en tienda haciendo las
modificaciones.
Las tablas organizan datos en columnas (denominadas campos) y filas (denominadas
registros). Tal como se muestra a continuación.
Campo
Componente de una tabla que contiene un elemento específico de información,
como por ejemplo un apellido. Un campo se representa como una columna.
SENATI-Computación e Informática 3
Registro
Es una colección de información acerca de cualquier entidad, ya sea
persona, producto, proveedor, o cualquier otra cosa. Cada registro en una tabla
contiene el mismo conjunto de campos. Se puede afirmar que un registro
se confirma de campos.
Un error muy frecuente es guardar el nombre del vendedor, el nombre
del cliente, la dirección del cliente y los productos que llevó en la misma
tabla. Debe utilizarse diferentes tablas para guardar la información de
los vendedores, clientes, y productos. Luego se guardarán los códigos que
identifican de forma única a cada vendedor y cliente en la tabla facturas,
nunca sus nombres. Luego se relacionarán las tablas para obtener la
información necesitada. Respecto a los productos, estos deben guardarse en
otra tabla de detalles de facturación, junto con las cantidades pedidas y los
precios a la fecha de la compra.
4 SENATI-Computación e Informática
Consultas
Una consulta puede ayudarle a recuperar los datos que cumplen las condiciones que
especifique, incluidos los datos de varias tablas. También puede utilizar una consulta
para actualizar o eliminar varios registros a la vez y realizar cálculos predefinidos o
personalizados con los datos.
SENATI-Computación e Informática 5
Formularios
Se puede utilizar un formulario para ver, introducir o cambiar los datos de filas de una
en una fácilmente. También se puede utilizar un formulario para realizar otras acciones,
como enviar datos a otra aplicación.
6 SENATI-Computación e Informática
I
Informes
Los informes se pueden utilizar para analizar rápidamente los datos o presentarlos de
una forma concreta, impresos o en otros formatos. Por ejemplo, puede enviar a un
colega un informe que clasifique los datos y calcule los totales. O puede crear un
informe con los datos de la dirección en un formato para imprimir etiquetas postales.
Macro
Puede crear una macro (macro: acción o conjunto de acciones utilizados para
automatizar tareas.) para realizar un conjunto específico de acciones (acción:
componente básico de una macro; instrucción independiente que se puede combinar con
otras acciones para automatizar tareas. A veces se denomina comando en otros
lenguajes de macros.), y puede crear un grupo de macros (grupo de macros: colección
de macros relacionadas que se almacenan juntas bajo un único nombre de macro. A
menudo, se hace referencia a la colección simplemente como una macro.) Para realizar
conjuntos de acciones relacionadas.
SENATI-Computación e Informática 7
En Microsoft Office Access 2007, las macros pueden estar incluidas en objetos de
macro (que a veces reciben el nombre de macros independientes) o incrustadas en las
propiedades de evento de formularios, informes o controles. Las macros incrustadas
forman parte del objeto o control en el que están incrustadas. Los objetos de macro se
pueden ver en el panel de exploración, bajo Macros, pero no ocurre lo mismo con las
macros incrustadas.
Módulos
Un módulo es una colección de declaraciones y procedimientos de Visual Basic para
aplicaciones que se almacenan juntos en un objeto denominado módulo. Se requiere
conocimientos de programación en Visual Basic.
8 SENATI-Computación e Informática
C
r
Crear una base de datos en blanco
1. En la página Introducción a Microsoft Office Access, en Nueva base de datos en
blanco, haga clic en Base de datos en blanco.
2. En el panel Base de datos en blanco, escriba un nombre de archivo en el cuadro
Nombre de archivo. Si no especifica una extensión de nombre de archivo,
Access la agrega automáticamente. Para cambiar la ubicación predeterminada
del archivo, haga clic en Buscar una ubicación donde colocar la base de datos
(situado junto al cuadro Nombre de archivo), busque la nueva ubicación y,
a continuación, haga clic en Aceptar.
3. Haga clic en Crear. Access crea la base de datos con una tabla vacía
denominada Tabla1 y, a continuación, abre Tabla1 en la vista Hoja de datos. El
cursor se sitúa en la primera celda vacía de la columna Agregar nuevo campo.
4. Comience a escribir para agregar datos o puede pegar datos de otro origen.
Escribir información en la vista Hoja de datos es muy similar a trabajar en una hoja de
cálculo de Microsoft Office Excel 2007. La estructura de la tabla se crea conforme se
SENATI-Computación e Informática 9
escriben los datos: cuando se agrega una nueva columna a la tabla, se define un nuevo
campo. Access define automáticamente el tipo de datos de cada campo en función de
los datos que escribe.
Si, de momento, no desea incluir información en Tabla1, haga clic en Cerrar .
Si realizó cambios en la tabla, Access le pedirá que guarde los cambios efectuados
en la tabla. Haga clic en Sí para guardar los cambios, haga clic en No para
descartarlos o haga clic en Cancelar para dejar la tabla abierta.
Importante Si cierra Tabla1 sin guardar los cambios al menos una vez, Access
elimina toda la tabla, aunque haya escrito datos en ella.
10 SENATI-Computación e Informática
C
Creación de Campos
Los elementos de información de los que se desea realizar un seguimiento se almacenan
en campos (denominados también columnas). Por ejemplo, en una tabla Contactos
podría crear campos para el apellido, el nombre, el número de teléfono y la dirección,
entre otros. Para una tabla Productos, podría crear campos para el nombre del producto,
el identificador de producto y el precio.
Es importante elegir los campos con cuidado. Por ejemplo, no es recomendable crear un
campo para almacenar un campo calculado; es mejor dejar que Office Access
2007 calcule el valor cuando sea necesario. Cuando elija los campos, intente
almacenar la información en sus partes más pequeñas posibles. Por ejemplo, en lugar
de almace nar un nombre completo, es preferible almacenar el apellido y el nombre por
separado. Por regla general, si necesita realizar informes, ordenar o realizar búsquedas
o cálculos con un elemento de información, ponga ese elemento en una columna
independiente.
Un campo tiene determinadas características que lo definen. Por ejemplo, cada campo
tiene un nombre que lo identifica inequívocamente dentro de la tabla. También tiene
un tipo de datos en consonancia con la información que almacena. El tipo de
datos determina los valores que se pueden almacenar y las operaciones que se pueden
realizar, así como la cantidad de espacio de almacenamiento provista para cada
valor. Cada campo tiene también un grupo de opciones denominadas propiedades
que definen las características formales o funcionales del campo. Por ejemplo, la
propiedad Formato define el formato de presentación del campo, es decir, qué
apariencia tendrá cuando se muestre.
SENATI-Computación e Informática 11
1. Tabla Clientes
2. Tabla Vendedor
3. Tabla Pedidos
4. Tabla Productos
5. Tabla Detalles del Pedido
El nombre de cliente del cuadro Facturar a se obtiene de la tabla Clientes, los datos
del vendedor de la tabla Empleados, los valores de Id. de pedido y Fecha de
pedido proceden de la tabla Pedidos, el nombre de producto viene de la tabla
Productos, y los valores Precio por unidad y Cantidad proceden de la tabla Detalles
del pedido. Estas tablas se vinculan entre sí de varias formas para recopilar
información de cada una e incorporarla al formulario.
Imagine que tiene una tabla de productos y otra de pedidos. En una base de datos
correctamente estructurada, la primera tabla contendrá toda la información
concerniente a los productos (descripciones, medidas y todas las especificaciones que
desee) mientras que en la segunda se representará a los productos solamente por medio
de un identificador.
No es necesario que incluya más información pues si usted puede distinguir cuál es
el producto entonces podrá consultar todos sus detalles en la primera tabla.
En el ejemplo anterior las tablas Producto y Pedido estarán relacionadas a través del
identificador del producto. En la primera tabla esta columna será la clave principal y
en la segunda será considerada una clave foránea.
Es una buena costumbre emplear un mismo prefijo para todos los campos de una
tabla sin embargo las claves foráneas no deberían seguir esta regla. Por ejemplo, dos
de los campos de la tabla Producto pueden ser IdProducto y DetalleProducto mientras
que los campos de la tabla Pedido podrían ser IdPedido, FechaDeEntrega, IdProducto
y CantidadPedida.
12 SENATI-Computación e Informática
O
t
A la tabla que contiene a la clave principal se le llama tabla principal y a la que contiene
la clave foránea se le denomina tabla secundaria.
Otras consideraciones para crear relaciones:
1. Debe haber un campo común en ambas tablas
2. Uno de las campos comunes debe ser clave principal, no olvide que un campo
clave principal no puede ser: Un campo de búsqueda de Objeto OLE, Memo,
Datos Adjuntos o Varios valores.
3. Los campos comunes podrían tener o no el mismo nombre de campo, pero no
pueden diferir en el tipo de dato.
Crear relaciones
Se puede crear una relación de tabla mediante la ventana Relaciones o arrastrando
un campo en una hoja de datos desde el panel Lista de campos. Cuando se crea
una relación entre tablas, los campos comunes no tienen que tener los mismos
nombres, si bien sus nombres suelen coincidir. Sin embargo, dichos campos tienen
que tener el mismo tipo de datos.
SENATI-Computación e Informática 13
No obstante, si el campo de clave principal es un campo Autonumérico, el
campo de clave externa puede ser un campo de tipo Número si la propiedad
Tamaño del campo de ambos campos tiene el mismo valor. Por ejemplo, puede
hacer coincidir un campo Autonumérico y un campo de tipo Número si la
propiedad Tamaño del campo de ambos campos es Entero largo. Cuando ambos
campos comunes son campos de tipo Número, tienen que tener el mismo valor para la
propiedad Tamaño del campo.
2. Si aún no ha definido
ninguna relación, aparecerá
automáticamente el cuadro
de diálogo Mostrar tabla. Si
no aparece, en la ficha Diseño,
en el grupo Relaciones, haga
clic en Mostrar tabla.
En el cuadro de diálogo
Mostrar tabla se muestran
todas las tablas y consultas
de la base de datos. Para
ver únicamente las tablas, haga
clic en Tablas. Para ver
únicamente las consultas,
haga clic en
Consultas. Para ver las tablas y las consultas, haga clic en Ambas.
4. Al mostrarse las tablas en la ventana Relaciones, usted verá que en cada una de
ellas la clave principal se muestra en negrita y el icono de una llave al costado.
5. Cree la relación arrastrando la clave principal de la tabla Principal hasta la clave
foránea de la tabla secundaria o viceversa. Por ejemplo, en la ilustración
anterior, se puede arrastrar el campo IdCliente de la tabla Cliente hasta
el campo IdCLiente de la tabla Pedido.
14 SENATI-Computación e Informática
6. Después de haber efectuado el arrastre se mostrará el cuadro de diálogo:
8. El gráfico anterior muestra la relación de uno a varios entre las tablas Cliente y
Pedido.
9. Continúe con las demás relaciones de tal modo que obtengamos un resultado
como se muestra en la siguiente grafica:
SENATI-Computación e Informática 15
Asistente para Formularios y Autoformularios
Los formularios constituyen la interfaz más común entre el usuario y los datos
contenidos en las tablas. A través de ellos se puede presentar los datos en forma
jerárquica atendiendo a las relaciones que existen entre las tablas. También pueden
incluirse controles que muestren imágenes propias de cada registro e incluso es posible
crear formularios que no muestren registros pero que permitan “navegar” ent re los
distintos objetos que posea la base de datos
Uno de los caminos más cortos para crear formularios es emplear el asistente para
formularios. Para hacer uso de él ejecute el siguiente procedimiento:
1. Haga clic en la ficha Crear, en la Cinta Formularios, Opción Mas
Formularios y elegir Asistente para Formularios.
16 SENATI-Computación e Informática
Formularios
3. Seleccione los campos que desea incluir en el formulario. Para esto usted
puede:
Hacer doble clic convenientemente en cada uno de los campos de la lista
izquierda.
También puede seleccionar un campo y luego emplear el botón >.
Si desea seleccionar todos los campos, haga uso del botón >>.
Para deseleccionar campos haga doble clic en los elementos de la lista
derecha o emplee los botones < o <<.
SENATI-Computación e Informática 17
6. Indique cuál será el estilo que desea emplear. El estilo afectará el aspecto de
los
objetos así como la combinación de colores. Haga clic en el botón Siguiente.
18 SENATI-Computación e Informática
Formularios
Formulario Empleados
Procedimiento
1. Haga clic en la ficha Crear, en la Cinta Formularios, Opción Mas
Formularios y elegir Asistente para Formularios.
2. En el primer paso del asistente seleccione la tabla Empleados y luego haga clic
en el botón > a fin de indicar que todos los campos de la tabla sean mostrados
en el formulario tal como se muestra en la siguiente imagen:
SENATI-Computación e Informática 19
Microsoft Office
6. Se le sugiere Empleados como título del formulario; déjelo así y haga clic en el
botón Finalizar.
7. Cierre el formulario.
20 SENATI-Computación e Informática
Formularios
Propiedades de Formato
c
b
SENATI-Computación e Informática 21
Microsoft Office
Propiedades de Datos
Para definir propiedades de un formulario realice las siguientes acciones:
1. Abra el formulario en vista diseño. Puede hacer clic derecho sobre él y activar
Botón Hoja de el comando Vista diseño.
Propiedades
22 SENATI-Computación e Informática
Formularios
SENATI-Computación e Informática 23
Microsoft Office
b
c
c
a. Origen de registros
Es la tabla o consulta desde la cual se extraen los datos para ser mostrados en
el formulario. Esta propiedad puede ser modificada empleando el Generador
de Expresiones
Personalizar con el generador de expresiones
b. Permitir Agregar
Indica si el formulario permitirá al usuario añadir registros.
c. Permitir Editar
Indica si el formulario permitirá al usuario actualizar registros.
d. Permitir Eliminar
Indica si el formulario permitirá al usuario eliminar registros.
24 SENATI-Computación e Informática
Formularios
Procedimiento
1. Hacer clic en la ficha Crear, luego la cinta Formularios, luego Formulario en
Blanco.
SENATI-Computación e Informática 25
Microsoft Office
Propiedad Valor
Título Bienvenido
Selectores de registros No
Botones de desplazamiento No
Selectores de registro No
Botones de desplazamiento No
Separadores de registro No
Botón Cerrar Sí
Imagen Logo_Senati
Para establecer la imagen haga clic en la propiedad que tiene este nombre, verá
un botón que muestra tres puntos y luego haga doble clic sobre el archivo que
se le ha indicado.
4. Cierre la ventana de propiedades y guarde el formulario con el nombre
Bienvenido
26 SENATI-Computación e Informática
Formularios
Autoformato
Usted puede modificar el aspecto general del formulario de una manera muy rápida
empleando el siguiente método:
1. Muestre el formulario en vista diseño.
2. Haga clic en la ficha Organizar Cinta Autoformato y luego en el comando
Autoformato.
Algunos autoformatos
SENATI-Computación e Informática 27
Microsoft Office
2. Hacemos doble clic sobre el Formulario, y luego la Ficha Inicio, Cinta Vistas y
elegimos la que deseamos
28 SENATI-Computación e Informática
Formularios
Vista Presentación.
La vista Presentación es una vista más orientada a lo visual que la vista Diseño.
Mientras visualiza un formulario en una vista Presentación, cada control muestra datos
reales. En consecuencia, es una vista muy útil para ajustar el tamaño de los controles o
realizar muchas otras tareas que afectan al aspecto visual y al uso del formulario.
Hay algunas tareas que no se pueden realizar en la vista Presentación y que requieren
pasar a la vista Diseño. En algunos casos, Access muestra un mensaje que indica que
hay que cambiar a la vista Diseño para llevar a cabo un cambio determinado .
SENATI-Computación e Informática 29
Microsoft Office
Vista Diseño.
La vista Diseño ofrece una vista más detallada de la estructura del informe. Se pueden
ver las secciones Encabezado, Detalle y Pie de página de un formulario. No se pueden
ver los datos subyacentes mientras se están haciendo cambios en el diseño. No
obstante, hay ciertas tareas que puede realizar más fácilmente en la vista Diseño que en
la vista Presentación. Puede realizar las acciones siguientes:
- Agregar una mayor variedad de controles al formulario, como etiquetas,
imágenes, líneas y rectángulos.
- Editar orígenes de control de cuadro de texto en los mismos cuadros de texto
sin usar la hoja de propiedades.
- Cambiar el tamaño de las secciones de los formularios, como por ejemplo la
sección Encabezado del formulario o la sección Detalle.
- Cambiar algunas propiedades del formulario que no se pueden cambiar en la
vista Presentación (como Vista predeterminada o Permitir vista Formulario).
30 SENATI-Computación e Informática
Formularios
Editar controles
Usted puede cambiar la presentación de los controles de los formularios. También
puede añadir nuevos objetos y eliminar los existentes
SENATI-Computación e Informática 31
Microsoft Office
Tipos de controles
Usted puede encontrar los siguientes controles en un formulario:
Etiquetas
Cuadros de texto
Cuadros combinados
Botones de comando
Grupos de botones de opción
Grupos de botones alternar
Casillas de verificación
Imágenes
Controles de ficha
Subformularios
Los controles más utilizados son los primeros. En la siguiente imagen usted puede
apreciar la vista diseño de un formulario y en ella se le indicará cuáles son las cajas de
texto (T), etiquetas (E) y cuadros combinados (C).
32 SENATI-Computación e Informática
Formularios
SENATI-Computación e Informática 33
Microsoft Office
Ajustar
Para cambiar el tamaño de múltiples controles simultáneamente:
1. Active la vista diseño.
2. Seleccione los controles cuyos tamaños de sea cambiar.
3. Ejecute alguna de las siguientes acciones:
Arrastre cualquiera de los controladores de tamaño de uno de los
controles; el resto de los objetos cambiará su tamaño en la misma forma el
que usted eligió.
Haga clic en la Ficha Organizar, cinta Tamaño y haga clic en alguno de
los siguientes botones:
- Ajustar al más ancho
- Ajustar al más estrecho
- Ajustar al más corto
- Ajustar al más alto
Mover
Para mover un control:
1. Active la vista diseño del formulario.
2. Haga clic sobre el control deseado y coloque el puntero del mouse sobre
cualquiera de sus bordes (verá el puntero en forma de cruz con un puntero).
34 SENATI-Computación e Informática
Formularios
Alinear
Usted puede alinear múltiples controles. Para ello:
1. Active la vista diseño del formulario.
2. Seleccione los controles que desee alinear.
3. Haga clic en la Ficha Organizar, cinta Alineación de Controles y haga clic en
alguno de los siguientes comandos:
Izquierda
Derecha
Arriba
Abajo
Eliminar controles
Usted puede alinear múltiples controles. Para ello:
1. Active la vista diseño del formulario.
2. Seleccione los controles que desee eliminar.
3. Presione la tecla suprimir del teclado
Agregar controles
Usted puede añadir controles a un formulario a través de tres caminos:
a. Desde la lista de campos
- Muestre el formulario en vista diseño.
- Haga visible la lista de campos. Para esto lleve a cabo alguna de los
siguientes acciones:
- Haga clic en el menú Ver y luego active el comando Lista de campos.
- Haga clic en el botón Lista de campos de la barra de herramientas
Diseño de formulario.
- Arrastre el campo desde la ventana con la lista de campos hasta el
formulario.
SENATI-Computación e Informática 35
Microsoft Office
36 SENATI-Computación e Informática
Formularios
Controles a usar
Botón de opción
Los botones de opción son empleados cuando en un campo hay un
número pequeño de valores permitidos y hay suficiente espacio en el
formulario para dejar visible al usuario todas las posibilidades.
Algunos campos en los que se puede emplear este tipo de controles
son:
1. El campo Sexo en una tabla de datos personales.
2. El campo Categoría cuando hay suficiente espacio disponible
en un formulario.
Para insertar botones de opción realice lo siguiente:
1. Verifique que el formulario está asociado a un origen de datos
2. Active el botón Asistente para controles.
Asistente para
3. En la ficha Diseño, Cinta Controles, haga clic en el botón
controles Grupo de opciones y luego haga clic en el formulario.
Aparecerá el asistente.
4. Escriba el texto que debe ir en cada opción y pulse Siguiente.
5. Si lo desea, escoja una opción predeterminada y haga clic en
Grupo de Siguiente.
opciones 6. Asocie un valor numérico a cada opción; cuando se seleccione
una opción el grupo tomará el valor de la opción elegida.
7. En la siguiente ventana, el cuadro de diálogo le permitirá
vincular el valor del grupo con uno de los campos numéricos
del origen de datos. Por ejemplo, el campo zona puede tener
cuatro valores posibles: 1, 2, 3, y 4; el grupo de opciones podría
tener las descripciones de estos valores del siguiente modo: 1 -
Norte, 2-Sur, 3-Este y 4-Oeste.
8. Indique el tipo de controles que desea emplear y avance a la
siguiente ventana.
9. Escriba un título para el grupo y haga clic en Finalizar.
Cuadro de texto
Los cuadros de texto se usan para mostrar información provenientes de
la base de datos y para ingresar los datos en ella.
SENATI-Computación e Informática 37
Microsoft Office
38 SENATI-Computación e Informática
Formularios
Generador de expresiones
La ilustración anterior muestra al Generador de
expresiones con la fórmula que calcula la edad de un
trabajador a partir de su fecha de nacimiento.
5. Cierre la ventana de propiedades.
Etiqueta
Las etiquetas tienen como fin presentar un texto al usuario de modo
que le sea más fácil entender el propósito del formulario y sus demás
controles.
Después de insertar una etiqueta a partir del cuadro de herramientas, se
le presentará un rectángulo con el punto de inserción parpadeando de
tal forma que usted pueda escribir el texto que contendrá.
Casilla de verificación
Las casillas de verificación se emplean para presentar datos que
pueden tener solamente dos valores que se expresan en términos de Sí
o No, o Activado y Desactivado. Los siguientes ejemplos pueden
ayudarlo a familiarizarse con casos de uso típico de estos controles:
1. El campo Importado para el catálogo de productos de una
empresa.
2. El campo Sindicalizado para una tabla de datos personales.
Algunas personas emplean casillas de verificación para el campo Sexo,
proceder de esta manera indicaría „Sexo: Sí „o „Sexo: No‟; sería mucho
SENATI-Computación e Informática 39
Microsoft Office
Fichas
Las fichas permiten agrupar los controles de acuerdo a alguna
característica que tengan en común; son empleadas comúnmente
cuando se cuenta con una gran cantidad de controles y se desea
mostrarlos por etapas.
Para utilizar estos controles:
1. Muestre el formulario en vista diseño.
2. En el cuadro de herramientas, haga clic sobre el control Ficha y
luego haga clic sobre el formulario.
3. Seleccione el control y emplee los controladores de tamaño de
modo que ocupe el área que usted desee.
4. Modifique la propiedad Título de cada ficha para que muestren
el texto deseado. A fin de realizar esta acción:
a. Haga clic derecho sobre la primera pestaña del control y
luego haga clic sobre el comando Propiedades.
40 SENATI-Computación e Informática
Formularios
SENATI-Computación e Informática 41
Propiedades de los controles
Usted puede modificar el aspecto y comportamiento de los controles individualmente a
través de sus propiedades. Entre aquellas que modifican la apariencia se encuentran las
propiedades de la fuente (nombre, tamaño, estilo, alineación y color); están, también el
color de fondo, el grosor y color de los bordes y el efecto e special. La forma más fácil
de configurar estas propiedades es la siguiente:
1. Seleccione el control al que desea cambiar una determinada propiedad. Puede
hacer una selección múltiple si desea hacer cambios en múltiples controles.
2. Haga clic en la opción correspondiente a la propiedad en la Hoja de
Propiedades.
a. Orden de tabulación
Cuando se agrega y mueve controles se debe tener cuidado en el orden en el
cual usted se podrá desplazar por el formulario empleando la tecla TAB.
Para configurar la secuencia en que los controles obtienen el enfoque usted
puede hacer clic derecho sobre cualquiera de ellos y activar el comando
Orden de tabulación.
42 SENATI-Computación e Informática
Formularios
b. Color de fondo
c. Efecto especial
d. Color de bordes
e. Formato
SENATI-Computación e Informática 43
Microsoft Office
Cuadros combinados
Los cuadros combinados se emplean para que el usuario elija un valor dentro de un
conjunto de posibilidades. Se prefiere este tipo de controles frente a los botones de
opción cuando el espacio en el formulario es reducido o cuando se espera que el
conjunto de valores disponibles cambie.
La forma más sencilla de insertar cuadros combinados en la vista diseño de un
formulario existente es emplear el asistente para cuadros combinados tal como se
detalla a continuación:
Cuadro 1. Verifique que el formulario está asociado a un origen de datos tal como se
combinado detalla en el primer paso de Insertar cuadros de texto
2. Active el asistente para controles y guíese por sus instrucciones.
Escribiendo la lista
Una lista de valores que usted mismo escribirá en el asistente. Esta es la
opción que debe seleccionarse si los valores no se encuentran en
ninguna tabla de la base de datos. Por ejemplo: es común tener un
campo Sexo en los datos del personal de las empresas; el valor
almacenado en las tablas suele ser M o F aludiendo a Masculino y
Femenino pero estas palabras nunca están almacenadas en ninguna
tabla.
Haga Clic en Siguiente
i. Indique el número de columnas que va a emplear (normalmente
son dos) y, en la cuadrícula, escriba los valores. Se recomienda
que oculte la columna que contenga los códigos.
44 SENATI-Computación e Informática
Formularios
Búsqueda de registros.
Se puede crear un cuadro combinado agregando un campo de búsqueda
a un formulario.
1. Cree un campo de búsqueda en una tabla. Este campo puede ser
un campo multivalor o un campo que contiene un solo valor.
Siga uno de estos procedimientos:
Cree un nuevo formulario basado en un origen de
registros que incluya el campo de búsqueda. Por ejemplo,
en el panel de exploración, seleccione una tabla o consulta
que contenga el campo de búsqueda y, a continuación, en
la ficha Crear, en el grupo Formularios, haga clic en
Formulario.
Access crea automáticamente un cuadro combinado para
el campo de búsqueda.
Agregue un cuadro de lista o un cuadro combinado a un
formulario:
- En la vista Diseño, abra un formulario que esté
basado en un origen de registros que incluya el
campo de búsqueda.
- Si no se muestra el panel Lista de campos, presione
ALT+F8 para que se muestre.
- Haga doble clic en el campo de búsqueda, o bien,
arrastre el campo de búsqueda desde el panel Lista de
campos hasta el formulario. Access crea
automáticamente un cuadro combinado enlazado al
campo.
SENATI-Computación e Informática 45
Microsoft Office
Puede crear una columna de búsqueda en la vista Hoja de datos o en la vista Diseño.
46 SENATI-Computación e Informática
Formularios
SENATI-Computación e Informática 47
Microsoft Office
48 SENATI-Computación e Informática
Formularios
SENATI-Computación e Informática 49
Microsoft Office
50 SENATI-Computación e Informática
Formularios
El Asistente para búsquedas muestra una página que permite especificar un campo o
campos que puede usar para ordenar la columna de búsqueda. Esta ordenación es
opcional. Cuando termine, haga clic en Siguiente.
SENATI-Computación e Informática 51
Al seleccionar una fila de la columna de búsqueda, puede almacenar un valor de dicha
fila en la base de datos o usar el valor posteriormente para realizar una acción. Esta
página del asistente, que se muestra en la siguiente figura, permite elegir el campo que
suministra dicho valor. Debe elegir un campo que identifique de forma exclusiva la
fila. Normalmente, el campo de clave principal de la tabla de origen resulta una buena
elección. Cuando termine, haga clic en Siguiente.
En la página final del Asistente para búsquedas, debe escribir un nombre para la
columna de búsqueda; éste se convertirá en el nombre del campo de la tabla.
52 SENATI-Computación e Informática
Formularios
Procedimiento
1. Abra el formulario en vista diseño.
Etiqueta 2. En el cuadro de herramientas, haga clic en el icono etiqueta y luego haga clic en
el formulario.
3. Escriba Comercial DOUP y luego haga clic fuera del control pero dentro del
formulario.
4. Puede seleccionar la etiqueta y modificar su fuente, tamaño y demás
características.
5. Muestre la vista formulario, guarde y cierre.
SENATI-Computación e Informática 53
Microsoft Office
1. Emplee el asistente para formularios a fin de crear uno que tome los campos de
la tabla indicada que se muestran en la imagen.
2. Cuando el asistente le muestre el objeto terminado, cambie a la vista diseño y
seleccione los cuatro primeros campos; haga clic en el menú Formato,
despliegue el submenú Tamaño y active el comando Ajustar al más estrecho.
3. Repita la operación anterior con los campos Cargo y Dirección.
4. Active la vista formulario, guarde el formulario con el nombre predeterminado
y ciérrelo.
54 SENATI-Computación e Informática
Formularios
SENATI-Computación e Informática 55
Microsoft Office
=Ent((ahora()-traFechaNac)/365)
g. Repita los pasos del c al f para la fecha de contratación y el tiempo de
servicio.
h. Active la vista formulario, guarde el formulario con el nombre
predeterminado y ciérrelo.
Formularios continuos
Los formularios continuos permiten que sean vistos los detalles de más de un registro
simultáneamente, tal como se aprecia en la siguiente ilustración:
56 SENATI-Computación e Informática
Formularios
Pie de formulario
Los formularios presentan comúnmente tres secciones: encabezado, detalle y pie. Usted
puede mostrar y ocultar la primera y la tercera sección a través del comando
Encabezado o Pie del formulario.
Es común emplear estas secciones para colocar controles de búsqueda; en el siguiente
formulario el cuadro combinado se emplea para buscar el producto cuyos detalles serán
mostrados.
SENATI-Computación e Informática 57
Microsoft Office
Encabezado de formulario
Botón Tablas
Procedimiento
1. Para crear el formulario:
a. Active el botón Tablas de la ventana de la base de datos.
b. Haga clic sobre la tabla Producto y luego haga clic en el botón
Autoformulario.
Ampliar el 2. Para crear el encabezado del formulario:
encabezado
a. Active la vista diseño y haga visible el encabezado y pie del formulario
utilizando para ello el menú Ver.
b. Amplíe la sección Encabezado del formulario arrastrando la banda
Detalle hacia abajo.
3. Para colocar el cuadro combinado en el encabezado:
a. Asegúrese de que el asistente para controles esté activado y luego haga
clic sobre el botón Cuadro combinado.
58 SENATI-Computación e Informática
Formularios
Subformularios
Los subformularios son formularios dentro de otros formularios y son empleados
comúnmente para mostrar registros de tablas que tienen alguna relación con el origen
de datos del formulario; por ejemplo, puede mostrarse los pedidos que se han hecho
sobre el producto que se esté mostrando en el formulario de productos, o los recibos
que corresponden al cliente que se esté viendo en el formulario de los clientes.
La siguiente vista muestra un formulario que presenta en el formulario padre a las
categorías y, como un subformulario, a los productos que pertenecen a aquella
categoría que se muestra actualmente.
Formulario y subformulario
Para crear un subformulario:
1. Muestre el formulario en vista diseño.
SENATI-Computación e Informática 59
Microsoft Office
60 SENATI-Computación e Informática
Formularios
SENATI-Computación e Informática 61
Microsoft Office
La presentación final que tengan los formularios depende de las indicaciones que se
den en el segundo paso del asistente, de acuerdo con las siguientes indicaciones:
Para obtener un formulario convencional elija que desea crear el formulario a
partir de la tabla hija en la relación (en el ejemplo presentado la tabla hija es
Producto)
62 SENATI-Computación e Informática
Formularios
SENATI-Computación e Informática 63
Microsoft Office
Preguntas de Repaso
1. ¿Cómo se cambia el texto que aparece en la barra de título de un formulario?
2. ¿Qué se debe hacer para tener cuadros combinados en la vista hoja de datos de
las tablas para aquellos campos que pertenecen al lado “hijo” de una relación
entre dos tablas?
3. ¿Qué ventaja proporciona crear cuadros combinados de búsqueda en la vista
hoja de datos de las tablas?
4. ¿Cómo se crea un cuadro de texto calculado?
5. En la siguiente imagen, señale los siguientes elementos: sección encabezado,
sección de detalle, sección pie del formulario, separadores de registros, selector
de registro, botones de desplazamiento, barra de desplazamiento vertical.
64 SENATI-Computación e Informática
Formularios
SENATI-Computación e Informática 65
Microsoft Office
Actividad propuesta 2
Abra la base de datos Biblioteca y en ella:
1. Cree los formularios vinculados que se muestran a continuación:
66 SENATI-Computación e Informática
Formularios
Actividades de investigación
Emplee cualquier base de datos para realizar las siguientes actividades:
1. Cree el formulario mostrado en la ilustración Formulario que muestra
solamente un registro a la vez de la tabla Usuario y vea qué contiene la
propiedad Origen del registro del formulario.
2. Cree un cuadro combinado de búsqueda en la vista hoja de datos de una tabla y
luego muestre las propiedades de búsqueda de dicho campo tal como se
presenta en la siguiente ilustración:
SENATI-Computación e Informática 67
Microsoft Office
Modifique la propiedad Ancho de columnas para que su nuevo valor sea 1;1
(dependiendo de cuál sea la configuración regional que haya sido establecida en
el panel de control de Windows, es posible que usted deba escribir 1,1), guarde
el diseño y muestre la vista Hoja de datos; ¿qué efecto se ha producido?
¿Es posible que un formulario que muestra un registro a la vez se convierta en un
formulario continuo? ¿Qué limitaciones hay para esto?
68 SENATI-Computación e Informática
Capítulo
Utilidades
En este capítulo trataremos:
SENATI-Computación e Informática 69
Microsoft Office
70 SENATI-Computación e Informática
II: Utilidades
SENATI-Computación e Informática 71
2. En la lista de unidades, haga clic con el botón secundario del mouse (ratón) en
la unidad en la que cree que podría estar la base de datos y haga clic en Buscar.
3. Especifique sus criterios de búsqueda y presione ENTRAR para buscar la base de
datos.
4. Si encuentra la base de datos, haga doble clic en ella en el cuadro de diálogo de
búsqueda para abrirla.
5. Como la búsqueda se inició en el cuadro de diálogo Abrir, debe hacer clic en
Cancelar de ese cuadro de diálogo antes de abrir la base de datos.
Sugerencias:
Para abrir una de las últimas bases de datos que se hayan abiertas, haga clic en el
nombre de archivo en la lista Abrir base de datos reciente en la página Introducción
a Microsoft Office Access. Access abrirá la base de datos con la misma configuración
de opciones que tenía cuando se abrió por última vez. Si no se muestra la lista de
archivos recientemente utilizados:
72 SENATI-Computación e Informática
II: Utilidades
Si está abriendo una base de datos utilizando el comando Abrir, puede ver una
lista de accesos directos a bases de datos que ha abierto anteriormente haciendo
clic en Documentos recientes en el cuadro de diálogo Abrir.
SENATI-Computación e Informática 73
Microsoft Office
Seguridad
Office Access 2007 proporciona un modelo de seguridad mejorada que ayuda a
simplificar el proceso de aplicar seguridad a una base de datos y de abrir una base de
datos con la seguridad habilitada.
A continuación aparece una lista de las nuevas funciones de seguridad d e Office
Access 2007:
Posibilidad de ver los datos, incluso cuando no se desea habilitar ningún
código deshabilitado de Microsoft Visual Basic para Aplicaciones (VBA) o
ningún componente deshabilitado de una base de datos. En Microsoft
Office Access 2003, si se establecía el nivel de seguridad en Alto, había que
firmar código y confiar en una base de datos para poder ver los datos. En
Office Access 2007, se pueden abrir bases de datos y ver los datos sin tener
que habilitar la base de datos.
Mayor facilidad de uso. Si se colocan archivos de bases de datos (ya sea
con el formato de archivo de Office Access 2007 o formatos de archivo
anteriores) en una ubicación de confianza, como una carpeta de archivos o
un recurso de red designados como seguros, esos archivos se abrirán y se
ejecutarán sin que se muestre ningún mensaje de advertencia o sin que se
pida que se habilite contenido deshabilitado. Asimismo, si se abren bases de
datos de las versiones anteriores de Access, como .mdb o .mde, en Office
74 SENATI-Computación e Informática
II: Utilidades
Access 2007, esas bases de datos llevan firma digital y se ha optado por
confiar en el publicador, esos archivos se ejecutarán sin que sea necesario
tomar decisiones en materia de confianza. No obstante, recuerde que el
código de VBA de una base de datos firmada no se ejecutará hasta que se
confíe en el publicador y tampoco se ejecutará si la firma digital deja de ser
válida. Una firma pierde su validez cuando un usuario que no sea el
firmante altera el contenido de una base de datos. Para obtener más
información sobre la firma de bases de datos, vea la sección Cómo funciona
la seguridad con las bases de datos de las versiones anteriores de Access
que se abren en Office Access 2007.
Si no sabe con seguridad si un certificado es de confianza, el artículo Cómo
saber si una firma digital es de confianza proporciona información general
acerca de la comprobación de las fechas y otros elementos de un certificado
para saber si es válido o no.
Centro de confianza. El Centro de confianza es un cuadro de diálogo que
proporciona una sola ubicación para definir y cambiar la configuración de
seguridad de Access. Se usa el Centro de confianza para crear o cambiar las
ubicaciones de confianza y configurar las opciones de seguridad de Office
Access 2007. Esa configuración afecta a la manera en que las bases de
datos nuevas y existentes se comportan cuando se abren en esa instan cia de
Access. El Centro de confianza contiene asimismo lógica para evaluar los
componentes de una base de datos y determinar si es seguro abrir la base de
datos o si el Centro de confianza debe deshabilitarla y dejar que el usuario
decida si desea habilitarla. Para obtener información sobre el uso del Centro
de confianza con Access, vea la sección Usar una base de datos de Office
Access 2007 en una ubicación de confianza, que aparece más adelante en
este artículo.
Para obtener información general sobre el uso del Centro de confianza, vea
el artículo Ver la configuración de seguridad y privacidad en el Centro de
confianza.
Menos mensajes de advertencia. En las versiones anteriores de Access,
aparecía una gran variedad de mensajes de alerta: la seguridad de macros y
el modo de recinto de seguridad, para citar sólo dos. De forma
predeterminada, si se abre una base de datos de Office Access 2007 fuera
de una ubicación de confianza, se ve una sola herramienta denominada
barra de mensajes.
SENATI-Computación e Informática 75
Microsoft Office
76 SENATI-Computación e Informática
II: Utilidades
SENATI-Computación e Informática 77
Microsoft Office
Una frase con 14 o más caracteres es todavía mejor. Para obtener más
información, vea Ayudar a proteger la información personal con contraseñas
seguras.
Es fundamental que recuerde la contraseña. Si la olvida, Microsoft no puede
recuperarla. Guarde las contraseñas que anote en un lugar seguro, lejos de la
información que ayudan a proteger.
78 SENATI-Computación e Informática
II: Utilidades
SENATI-Computación e Informática 79
Microsoft Office
80 SENATI-Computación e Informática
II: Utilidades
SENATI-Computación e Informática 81
Microsoft Office
82 SENATI-Computación e Informática
II: Utilidades
Tablas vinculadas
Puede vincular una tabla con un formato anterior de Access a una base de datos de una
versión posterior de Access, pero no puede vincular una tabla de una versión posterior
de Access a una base de datos de una versión anterior de Access. Por ejemplo, puede
crear un vínculo desde una base de datos .accdb a tablas de otra base de datos .accdb o
a tablas de una base de datos .mdb, pero no puede crear un vínculo desde una base de
datos .mdb a tablas de una base de datos .accdb.
Réplica
La réplica no se admite en el formato de archivo de Office Access 2007. Puede utilizar
Office Access 2007 para replicar una base de datos creada en un formato de archivo
anterior, pero no la creada en el formato de Office Access 2007.
SENATI-Computación e Informática 83
Archivos de información de grupo de trabajo (MDW)
Los archivos de información de grupo de trabajo almacenan información para bases de
datos seguras. No se ha realizado ningún cambio en el formato de archivo .mdw en
Office Access 2007. El administrador del grupo de trabajo de Office Access 2007
creará archivos .mdw idénticos a los que se crearon en Access 2000 a través de Access
2003, y los archivos .mdw creados en las versiones anteriores se pueden utilizar en las
bases de datos de Office Access 2007.
Bloqueo de archivos
Cuando se abre una base de datos, un archivo de bloqueo controla el bloqueo de
archivos. Cuando se abre un archivo .mdb, Access crea y abre un archivo de bloqueo
.ldb. Esto ocurre aunque utilice Office Access 2007 para abrir un archiv o de base de
datos .mdb. Por ejemplo, cuando se abre el archivo Db1.mdb, Access crea y abre un
archivo llamado Db1.ldb que controla el bloqueo. En el caso de aquellos archivos
creados en formato de archivo de Office Access 2007 (archivos .accdb), Access
controla el bloqueo creando y abriendo un archivo con una extensión de nombre de
archivo de .laccdb. Por ejemplo, si se abre Db1.accdb, Access crea y abre un archivo de
bloqueo llamado Db1.laccdb. Al igual que en los archivos .ldb, los archivos .laccdb se
eliminan automáticamente cuando todos los usuarios cierran la base de datos.
Al mantener archivos de bloqueo independientes para los archivos de Office Access
2007 y para los archivos creados en versiones anteriores de Access, es posible tener
ambos archivos Db1.mdb y Db1.accdb abiertos en Office Access 2007 al mismo
tiempo, sin crear conflictos en el archivo de bloqueo, porque se crean dos archivos de
bloqueo distintos. Es posible tener el mismo archivo .mdb abierto en Office Access
2007 y en una versión anterior de Access al mismo tiempo, mientras las dos versiones
utilizan el mismo archivo de bloqueo .ldb.
84 SENATI-Computación e Informática
II: Utilidades
Archivos ACCDE
Un archivo .accde es la versión de Office Access 2007 del archivo .mde en versiones
anteriores de Access. Es una versión bloqueada del archivo .accdb original. Si el
archivo .accdb contenía código de VBA, sólo se incluye el código compilado en el
archivo .accde y por tanto, el usuario no puede consultar ni modificar el código de
VBA. Además, los usuarios del archivo .accde no tienen permiso para realizar
modificaciones de diseño en los formularios o informes. Puede crear archivos .accde a
partir de archivos .accdb mediante el siguiente procedimiento:
SENATI-Computación e Informática 85
Microsoft Office
Por ejemplo, puede hacer clic en Formato de archivo actual para guardar la
copia en el mismo formato que el original, o puede elegir uno de los otros
formatos de archivo.
Es importante tener en cuenta que si está abierto algún objeto de la base de
datos cuando utiliza el comando Guardar base de datos en otro formato,
Access le pedirá que lo cierre para poder crear la copia. Haga clic en Sí para
que Access cierre los objetos, o bien, haga clic en No para cancelar todo el
proceso. Si es necesario, Access le pedirá que guarde los cambios.
3. En el cuadro de diálogo Guardar como, escriba un nombre de archivo para la
copia de la base de datos en el cuadro Nombre de archivo y, a continuación,
haga clic en Guardar.
Access crea una copia de la base de datos y después la abre. Access cierra
automáticamente la base de datos original.
Si tiene una base de datos de Office Access 2007 (.accdb) que desea guardar en un
formato de archivo anterior de Access (.mdb), podrá hacerlo siempre que la base de
datos .accdb no contenga campos de búsqueda multivalor, datos sin conexión o datos
adjuntos. Si intenta convertir una base de datos .accdb que contenga alguno de estos
elementos a un formato de archivo .mdb, Access mostrará un mensaje de error.
86 SENATI-Computación e Informática
Capítulo
SENATI-Computación e Informática 87
atos Externos
Importar
Access te permite importar objetos de otra base de datos a la tuya rápidamente.
Para ello, sólo tendremos que acudir a la pestaña Datos externos, una vez allí
seleccionar una opción de la sección Importar.
Aquí podemos seleccionar qué tipo de archivo contiene los datos que queremos
importar.
Access
Si quieres importar objetos de una base de datos a otra sólo tienes que hacer clic en el
botón Access.
Se abrirá el siguiente cuadro de diálogo:
Para importar un objeto de una base de datos Access, ya sea una tabla, formulario,
informe, macro, etc... solo tendremos que seleccionar la base de datos de origen y
pulsar el botón Aceptar.
En el siguiente cuadro de diálogo sólo tendremos que seleccionar los objetos que
queremos añadir a nuestra base de datos y pulsar el botón Aceptar.
SENATI-Computación e Informática 89
Microsoft Office
Excel
Para almacenar datos de Excel en una base de datos de Access y utilizar y mantener
estos datos en Access de ahora en adelante, puede importar los datos. Cuando se
importan datos, Access los almacena en una tabla nueva o existente sin modificarlos.
Sólo puede importar una hoja de cálculo cada vez durante una operación de
importación. Para importar datos de varias hojas de cálculo, repita la operación de
importación para cada hoja de cálculo.
A continuación se incluyen algunos escenarios comunes de importación de datos de
Excel en Access:
Utiliza Excel con mucha frecuencia, pero a partir de ahora desea utilizar Access
para trabajar con estos datos. Desea mover los datos de las hojas de cálculo de
Excel a una o varias bases de datos de Access.
Su departamento o grupo de trabajo utiliza Access, pero de vez en cuando recibe
datos en formato de Excel que debe combinar con bases de datos de Access.
Desea importar estas hojas de cálculo de Excel a la base de datos cuando la s
recibe.
90 SENATI-Computación e Informática
atos Externos
Utiliza Access para administrar los datos, pero los informes semanales que recibe
del resto de los integrantes de su equipo son libros de Excel. Desea agilizar el
proceso de importación para asegurarse de que los datos se importan cada
semana a una hora específica a la ba se de datos.
Si quieres importar objetos de un archivo de Excel solo tienes que hacer clic en el
botón Excel.
Se abrirá el siguiente cuadro de diálogo:
Para importar una hoja del archivo de Excel, hay que indicarle cual Hoja de
Trabajo, o bien, Mostrar Rangos con Nombres, si previamente se han definido y
pulsar el botón Siguiente.
SENATI-Computación e Informática 91
Microsoft Office
Luego de Presionar Siguiente, tendrás que definir una clave principal para la tabla
que estas importando, en caso contrario Access lo hará por ti.
92 SENATI-Computación e Informática
atos Externos
Lista de SharePoint
Importar una lista de SharePoint crea una copia de la lista en una base de datos de
Access. Durante la operación de importación, puede especificar las listas que desea
copiar y, para cada lista seleccionada, puede indicar si desea importar toda la lista o
sólo una vista específica.
La operación de importación crea una tabla en Access, y copia las columnas y los
elementos de la lista de origen (o de la vista) en la tabla en forma de campos y
registros. Para obtener más información sobre las tablas y sobre cómo está
estructurada una base de datos, vea los vínculos de la sección Vea también.
Al final de la operación de importación, puede elegir guardar la información de la
operación de importación como una especificación. Una especificación de
importación ayuda a repetir la operación de importación en el futuro sin tener que
examinar el Asistente para importación cada vez.
SENATI-Computación e Informática 93
Microsoft Office
Elemento Consideraciones
Columnas Access no admite más de 256 campos en una tabla, de forma que
Access importa sólo las 256 primeras columnas. Para evitar este
problema, cree una vista, agréguele sólo las columnas que desea y
asegúrese de que el número total de columnas no sea superior a 256.
Carpetas Cada carpeta de la lista de SharePoint o de la vista aparece como un
registro en la tabla de Access. Los elementos dentro de una carpeta
también aparecen como registros, inmediatamente debajo del registro
correspondiente a dicha carpeta.
Columnas de Si una columna de origen busca valores de otra lista, tiene dos
búsqueda opciones:
Importar los valores de presentación como parte del campo. En este
caso, no es necesario importar la lista relacionada.
Obligar al campo de destino a buscar otra tabla. En este caso, si la base
de datos no contiene una tabla que pueda proporcionar los valores de
búsqueda, debe importar también la lista relacionada.
NOTA: Una columna de origen de tipo Persona o Grupo es un tipo
especial de columna de búsqueda. Busca valores en la lista
94 SENATI-Computación e Informática
atos Externos
Columnas Una columna de tipo opción o búsqueda puede contener varios valores.
multivalor Al importar una columna que admite varios valores, Access crea una
columna que hace lo mismo. Para obtener más información sobre los
campos multivalor en Access, abra los vínculos en la sección Vea
también de este artículo.
Importar datos
1. Abra la base de datos de destino.
En la ficha Datos externos, en el grupo Importar, haga clic en Lista de
SharePoint.
SENATI-Computación e Informática 95
Microsoft Office
Archivo de texto
Por ejemplo, para importar la información de una base de datos de un archivo de
texto simplemente deberemos hacer clic en el botón Archivo de texto.
En este caso se abrirá el Asistente para importación de texto, donde podrá s
indicar la forma en la que está formateado el archivo del que vas a tomar la
información, incluso te podrás guardar esa descripción y volver a utilizarla para
importar datos de otro fichero con las mismas características utilizando el botón
Importaciones guardadas.
96 SENATI-Computación e Informática
atos Externos
Para ver mejor cómo utilizar este asistente visita el avanzado de Importación de
texto.
A veces cuando se importan datos algunos datos no pueden ser almacenados por no
coincidir con la definición de la tabla, en este caso Access nos avisará que se han
producido errores en la importación y creará una tabla con esos errores para que los
podamos analizar y comprobar.
SENATI-Computación e Informática 97
Microsoft Office
4. Pulsa Aceptar.
Se abrirá el asistente para importación de texto.
5. Pulsa el botón Avanzado, vamos a crear una especificación para archivos que
tengan este determinado formato.
98 SENATI-Computación e Informática
atos Externos
Ahora verás que a medida que vamos avanzando por el asistente todas las
opciones ya se encuentran perfectamente configuradas.
14. Selecciona la opción Permitir a Access agregar la clave principal.
SENATI-Computación e Informática 99
Microsoft Office
Archivo XML
Para Importar un archivo XML a Access 2007, seguir los siguientes pasos
a. Selecciona la ficha Datos Externos y haz clic en el botón Archivo XML de la
sección Importar
d. Por defecto esta activada la opción Estructura y Datos, lo que implica que
importara, tanto los campos que contienen la tabla, como el contenido de la
misma
e. Aceptar, y luego Cerrar
Exportar
En el apartado anterior veíamos como podíamos recuperar datos de otras bases de datos
o incluso de archivos con otro formato, por ejemplo de texto.
Ahora veremos el proceso contrario, enviar la información de nuestra base de datos
a otra base de datos o a un archivo de otro tipo, por ejemplo de texto.
Para ello, sólo tienes que seleccionar una de las opciones que encontrarás en la sección
Exportar de la pestaña Datos Externos.
Estos comandos te permitirán copiar tablas, informes, formularios, macros y en
definitiva cualquier objeto de tu base de datos a otra . Creando una copia exacta del
objeto en otro lugar.
Para utilizar esta opción sólo tendrás que seleccionar el objeto y entonces ejecutar el
comando Exportar.
Si haces clic en el botón Más desplegarás más formatos de exportación entre ellos
Base de datos de Access que te permitirá exportar datos de una base de datos a otra
rápidamente.
Se abrirá el cuadro Exportar tabla 'tabla1' a... y sólo tendrás que indicar en qué base
de datos quieres copiar el objeto, a continuación Access abrir un cuadro de diálogo
Exportar donde te permitirá cambiar el nombre del objeto en la otra base de datos y
se encargará de exportarlo íntegramente sin ninguna otra interacción por tu parte.
Si el objeto es una tabla se te presentará un cuadro de diálogo Exportar como este:
Como puedes ver en la imagen, estamos exportando una tabla llamada Alumnado a una
base de datos llamada prueba.accdb.
Podemos indicar el nombre que tendrá la tabla en la base de datos de destino y
también elegir qué parte queremos exportar.
En el marco Exportar tablas podremos seleccionar Definición y datos para exportar
la tabla completa (con todos los registros que contiene incluidos) o exportar
únicamente su estructura seleccionando la opción Sólo definición.
Excel
Puede copiar los datos de una base de datos de Microsoft Office Access 2007 a una
hoja de cálculo exportando un objeto de base de datos a una hoja de cálculo de
Microsoft Office Excel 2007. Esto se hace mediante el Asistente para exportación en
Office Access 2007.
Desde la sección Exportar, podremos exportar el contenido de nuestras tablas,
informes o formularios a aplicaciones del mismo paquete como Word o Excel.
5. Si hay algún error, debe resolverlo antes de exportar los datos a Excel. De lo
contrario, se pueden producir errores durante la operación de exportación y
pueden aparecer valores nulos en los campos.
6. Si el objeto de origen es una tabla o una consulta, decida si desea exportar los
datos con formato o sin él.
7. Esta decisión afecta a dos aspectos del libro resultante: la cantidad de datos
que se exportan y el formato de presentación de los datos. En la tabla siguiente
se describe el resultado de la exportación de datos con y sin formato.
Objeto de Campos y
Exportar origen registros Formato
Si el
libro de Y el objeto Y desea
destino de origen es exportar Entonces
Ya existe Una tabla, Los datos, El libro se sobrescribe con los datos
consulta, incluido el exportados. Se eliminan todas las hojas
formulario o formato de cálculo existentes y se crea una nueva
informe hoja de cálculo con el mismo nombre
que el objeto exportado. Los datos de la
hoja de cálculo de Excel heredan la
configuración de formato del objeto de
origen.
Los datos siempre se agregan en una hoja de cálculo nueva. No puede anexar los
datos en una hoja de cálculo existente o en un rango con nombre.
Lista de SharePoint
Si los miembros de su departamento o grupo de trabajo utilizan Windows SharePoint
Services 2.0 o posterior para comunicarse y colaborar entre ellos, se puede encontrar
con escenarios donde algunos de los datos de la base de datos de Access deban estar
disponibles en uno o varios sitios de SharePoint.
El modo más fácil de exportar datos a un sitio de SharePoint es ejecutar el Asistente
para exportación. Una vez ejecutado, puede guardar la configuración (la información
proporcionada al ejecutar el Asistente) como especificación de exportación. Luego,
puede ejecutar de nuevo la operación de exportación sin tener que volver a
proporcionar la información.
Preparar la operación
1. Busque la base de datos que tiene la tabla o la consulta que desea exportar.
Al exportar una consulta, las filas y columnas de los resultados de la consulta
se exportan como elementos de lista y columnas. No se pueden exportar
formularios ni informes. Puede exportar sólo un objeto a la vez.
2. Identifique el sitio de SharePoint en el que desea crear la lista. Una dirección
de un sitio válido empieza por http:// seguido del nombre del servidor y
finaliza con la ruta al sitio específico del servidor. El siguient e ejemplo es
una dirección válida: http://adatum/EquipoAnalisis
3. Asegúrese de que tiene los permisos necesarios para crear una lista en un
sitio de SharePoint. Póngase en contacto con el administrador del servidor si no
está seguro de los permisos. La operación de exportación crea una lista
nueva que tiene el mismo nombre que el objeto de origen de Access. Si el
sitio de SharePoint ya tiene una lista con este nombre, se le pide que
especifique un nombre diferente para la lista nueva. No se pueden
sobrescribir ni anexar datos a una lista existente.
4. Revise los campos de la tabla o de la consulta de origen.
La tabla siguiente explica cómo se importan determinados elementos y si se
deben tomar acciones adicionales en casos específicos.
Elemento Resolución
Campos y registros Se exportan todos los campos y registros de la tabla o de la
consulta, incluidos los campos ocultos en la hoja de datos. Se
omite la configuración de filtros durante la operación de
exportación.
Datos adjuntos Si el objeto de origen tiene más de una columna adjunta, debe
quitar todas las columnas de datos adjuntos excepto una. Esto
se debe a que una lista de SharePoint sólo puede admitir una
columna de datos adjuntos. Si el objeto de origen contiene
más de una columna de este tipo, Access muestra un mensaje
en el que se le pide que quite todas las columnas de datos
adjuntos antes de iniciar la operación. Para resolver este
problema, puede copiar cualquier columna adicional de datos
adjuntos en otros objetos de Access y exportarla a otras listas
de SharePoint.
SharePoint.
Se inicia el Asistente para exportación.
2. En el cuadro Especifique un sitio de SharePoint, escriba la dirección del
sitio de destino.
3. En el cuadro Especifique el nombre de la nueva lista de SharePoint,
escriba un nombre para la nueva lista.
Si el objeto de origen de la base de datos ya tiene el mismo nombre que el de
una lista del sitio de SharePoint, especifique un nombre diferente.
4. De manera opcional, escriba una descripción para la nueva lista en el cuadro
Descripción y active la casilla de verificación Abrir la lista al finalizar.
5. Haga clic en Aceptar para iniciar el proceso de exportación.
6. Access crea una lista en el sitio de SharePoint y muestra el estado de la
operación en la última página del Asistente. Cuando finaliza la operación de
exportación, puede cerrar el Asistente o guardar los pasos de la exportación
en una especificación.
Asimismo, durante la operación, Windows SharePoint Services selecciona el tipo de
datos correcto para cada columna basándose en el campo de origen corre spondiente.
Para ver una lista de cómo se asignan los tipos de datos de Access y Windows
SharePoint Services entre sí durante la exportación de los datos, y qué valores de
campo se exportan para cada tipo de datos, vea la sección Cómo se asignan los tipos de
datos de Windows SharePoint Services a los tipos de datos de Access más adelante en
este artículo.
Archivo de texto
En el caso de exportar el contenido de una tabla a un archivo de texto podremos marcar
la opción Exportar datos con formato y diseño.
Indicarle el delimitador
Y por ultimo para finalizar, indicarle la ruta donde va a ser guardado el archivo de
Texto.
Archivo XML
Para importar a un Archivo XML, seguir los siguientes pasos:
1. Elegir de la Cinta Exportar, la opción Mas, para luego elegir la opción
Archivo XML
Preguntas de Repaso
1. ¿Como se denomina al proceso de recoger datos de un programa diferente y los
incorpora a su base de datos?
2. ¿Cual de los siguientes elementos no puede importarse a otra base de datos:
Tablas, Consultas, Formularios o Macros?
3. ¿Como se denomina al proceso de recoger datos de un programa diferente, pero no
los incorpora a su base de datos?
Crear macros
Asignar macros a controles de formulario
Personalizar herramientas
Definir las opciones de inicio
Ahora podrás modificar el aspecto del botón. Puedes elegir entre mostrar un Texto en
el botón, o mostrar una Imagen.
En el caso de escoger Imagen, podrás seleccionar una entre las que Access te ofrece.
Marca la casilla Mostrar todas las imágenes para ver todas las imágenes que Access
tiene disponible para los botones.
También podrías hacer clic en el botón Examinar para buscar una imagen en tu disco
duro. Cuando hayas terminado pulsa Siguiente para continuar, y que aparezca la
siguiente pantalla
En esta última pantalla le daremos un nombre al control Botón de Comando para poder
reconocerlo más tarde en la lista de controles.
Pulsa Finalizar para terminar.
Al ser tan fácil añadir Botones de comando con el Asistente este control se convierte en
una forma muy versátil de añadir acciones a tus formularios e informes.
Como podrás ver en las primeras ventanas del Asistente para controles existen varia s
acciones que podrás realizar.
Con la categoría de Exploración de registros podrás moverte de forma rápida por todos
los datos del formulario, buscando registros o desplazándote directamente a alguno en
particular.
Utiliza las acciones de Operaciones con registros para añadir nuevos, duplicarlos,
eliminarlos, guardarlos o imprimirlos.
Del mismo modo podrás jugar con los formularios aplicándoles filtros y
actualizándolos. En cualquier momento podrás añadir un botón para abrir, cerrar o
imprimir informes, formularios y consultas.
Macros
Las Macros son un método sencillo para llevar a cabo una o varias tareas básicas como
abrir y cerrar formularios, mostrar u ocultar barras de herramientas, ejecutar informes,
etc...
También sirven para crear métodos abreviados de teclado y para que se ejecuten tareas
automáticamente cada vez que se inicie la base de datos.
Si guardamos la Macro con el nombre de AutoExec, cada vez que se inicie la base de
datos, se ejecutará automáticamente. Esto es debido a que Access al arrancar busca un a
macro con ese nombre, si la encuentra será el primer objeto que se ejecute antes de
lanzar cualquier otro.
Esta opción es muy socorrida a la hora de efectuar comprobaciones o lanzar procesos
antes de que el usuario empiece a trabajar con la base de datos.
La configuración por defecto de Access, nos impedirá ejecutar ciertas acciones de
macro si la base de datos no se encuentra en una ubicación de confianza, para evitar
acciones malintencionadas.
Para ejecutar correctamente las macros de bases de datos que consideremos fiables,
podemos añadir la ubicación de ésta al Centro de confianza.
Esta ventana es muy parecida a la vista Diseño de tabla que ya conoces y tiene la
misma dinámica pero ahora en vez de campos lo que definimos son las acciones que
queremos que se ejecuten.
Como podrás observar, al principio consta de dos columnas: Acción y Comentario,
aunque puede que aparezca también la columna Argumentos, que se puede mostrar y
ocultar, y que explicaremos más adelante.
Recuerda que deberás tener cuidado con el orden en el que estableces las acciones,
pues es muy importante. Imagina que tienes dos acciones (entre varias) que abren y
cierran un formulario. El formulario deberá estar abierto antes de ejecutar la orden de
cerrar el formulario, por lo que la acción de apertura debería ir antes de la de cierre.
En todo momento podrás utilizar los botones de Insertar o Eliminar filas para insertar
nuevas acciones entre dos existentes o eliminar una acción.
Para cambiar el orden en el que se encuentren las acciones puedes seleccionar algunas
de ellas y arrastrarlas con el ratón para colocarlas en otra posición.
Cuando la Macro está terminada, puede guardarse, ejecutarse y cerrarse. Más tarde
podremos llamarla desde un control Botón de comando, o ejecutarla directamente
desde la ventana de la base de datos haciendo clic en Ejecutar o bien haciendo doble
clic directamente sobre ella.
A continuación veremos las acciones más comunes, puedes ver la descripción de sus
argumentos de acción haciendo clic en.
Abrir Consulta Esta acción abre una consulta escogida entre las existentes
en la base de datos.
AbrirFormulario Del mismo modo que la acción anterior, abre un formulario
AbrirInforme Igual que las acciones anteriores, permite abrir un informe
AbrirTabla Esta acción permite abrir una tabla.
BuscarRegistro Utilizaremos esta acción para buscar registros. Esta acción
busca el primer registro que cumpla los criterios
Algunas de estas acciones no se muestran si no está pulsado el icono Mostrar todas las
acciones, en la banda de Diseño de Macros.
Acciones Condicionadas
Ahora que ya conocemos las acciones y cómo introducirlas y ordenarlas, veremos un
modo que nos ayudará a crear acciones con muchas posibilidades. Para ello
utilizaremos las condiciones.
La vista de Diseño de Macro cambiará para tomar este aspecto (observa como se ha
añadido una columna a la izquierda):
Esto nos abre muchas posibilidades, sobre todo si lo combinamos con los puntos
suspensivos (...).
Grupos de Macros
Cuando tenemos muchas macros, puede llegar a ser dificultoso localizar una macro
dentro de la ventana Base de Datos. Al igual que es más cómodo agrupar los archivos
en carpetas, puede ser útil agrupar nuestras macros en grupos de macros que contengan
macros relacionadas.
También los grupos de macros pueden ser útiles para definir macros a modo de
subrutinas dentro de una macro principal.
Para definir un grupo de macros haremos uso de la opción Nombres de macro en la
pestaña Diseño.
Si activas el botón verás que la Vista de Diseño de Macros cambia para añadir una
nueva columna a la izquierda:
Esta columna nos da la opción de crear diferentes macros dentro de una Macro
principal. Imagina que tenemos la siguiente macro y la guardamos como Macro1:
Macro1 aparecerá en la ventana Base de Datos como una macro, pero realmente será
un grupo de macros formado por las macros nombre1, nombre2 y nombre3.
A partir de este momento podremos ejecutar las acciones AgregarMenu, CuadroMsj, y
Beep simplemente llamando a la macro Macro1.nombre2.
Sencillo, ¿verdad? Observa que para llamar a una macro que forma parte de un grupo
de macros, hay que primero indicar el nombre del grupo y después el nombre de la
macro separados por un punto.
Crear Bucles
Si una macro se puede asemejar a un programa porque consiste en una serie de
acciones que se ejecutan según un determinado orden, y que además incluye
alternativas (gracias a la columna Condición), nos faltaba un concepto imprescindible
en programación, el concepto de estructuras repetitivas (bucles). Pues bien, ahora
aprenderemos una nueva acción que nos permite en cierta medida resolver el problema.
Se trata de la acción EjecutarMacro.
Para ello deberemos especificar el Nombre de macro que queremos ejecutar. Por
ejemplo, en el caso anterior, Macro1, Macro1.nombre1, Macro1.nombre2 o
Macro1.nombre3.
Podemos indicar que la Macro se ejecute más de una vez escribiendo en Número de
repeticiones un número que indique cuántas veces queremos que se repita la ejecución
de la macro (el número deberá ser mayor que 1).
En Expresión de repetición podremos introducir una expresión condicional para que se
repita la ejecución de la macro mientras la condición se cumpla (sea verdadera). Se
evalúa la condición antes de ejecutar la macro así que si al empezar, la condición no se
cumple, la macro no se ejecutará.
¡Ojo con los bucles infinitos! si utilizas el argumento Expresión de repetición la
condición que pongas deberá depender de un parámetro que cambie dentro de la macro
que se repite, sino podrás entrar en un bucle que no se acabe nunca!!
Para componer la condición se nos dará la opción de utilizar el Generador de
Expresiones.
Ahora veremos una estructura que ilustrará el u so de la combinación de ambas
técnicas.
Depuración de errores
Cuando creamos una Macro con diferentes condiciones y saltos de ejecución puede que
al final la comprobación de que actúa correctamente sea cada vez más difícil.
Access incorpora una herramienta que permite seguir la ejecución de la Macro paso a
paso pudiendo en cada momento ver qué procesos se están llevando a cabo y los
resultados que recibe de la base de datos.
Para activar esta opción solamente deberemos de hacer clic sobre el botón de Paso a
paso en la pestaña Diseño.
Una vez activada, cada vez que se ejecute una macro en el sistema lo hará en modo
Paso a paso.
Cuando una Macro se ejecuta de este modo para cada acción que realiza produce una
salida de información que nos llega a modo de Cuadro de diálogo:
^C or ^1 CTRL+C ó CTRL+1
{F3} F3
^{F3} CTRL+F3
+{F3} MAYUS+F3
{INSERT} INSERT
^{INSERT} CTRL+INSERT
+{INSERT} MAYUS+INSERT
Macro Autoexec
Si ya ha creado una macro que contiene las acciones que desea que se produzcan al
iniciarse la base de datos, simplemente cambie el nombre de la macro a AutoExec, y se
ejecutará la próxima vez que abra la base de datos. De lo contrario, siga estos pasos
para crear una macro:
1. En el grupo Otros de la ficha Crear, haga clic en Macro. Si el comando no
está disponible, haga clic en la flecha situada debajo del botón Módulo o
Módulo de clase y, a continuación, haga clic en Macro.
2. En el Generador de macros, en la primera celda Acción vacía, seleccione la
acción que desea realizar. Cuando corresponda, dentro de Argumentos de
acción, escriba los valores apropiados en los cuadros para argumentos.
Si no encuentra la acción deseada, en la ficha Diseño, en el grupo Mostrar u
ocultar, asegúrese de que esté seleccionado Mostrar todas las acciones. Esto
amplía la lista de acciones que se pueden utilizar, pero también se incluirán
algunas acciones que solamente se pueden ejecutar si la base de datos está
designada como "de confianza". Para obtener más información, vea los
artículos Decidir si se debe confiar en una base de datos o Cómo se comportan
los objetos de base de datos cuando son de confianza y cuando no lo son .
3. Repita el paso 2 para cada acción adicional que desee que se produzca.
4. Haga clic en Guardar, y en el cuadro de diálogo Guardar como, escriba
AutoExec.
5. Haga clic en Aceptar y luego cierre el Generador de macros. La nueva macro
se ejecutará la próxima vez que abra la base de datos.
Para obtener más información sobre la creación de macros, vea el artículo Crear una
macro.
Para omitir la macro AutoExec y otras opciones de inicio, mantenga presionada
la tecla MAYÚS mientras se inicia la base de datos. Para obtener má s
información, vea el artículo Omitir las opciones de inicio cuando se abre una
base de datos.
Otra forma de realizar acciones cuando se inicie una base de datos consiste en
especificar un formulario de inicio y, a continuación, adjuntar las macros o
código VBA a los eventos AlAbrir o AlCargar del formulario. Para obtener má s
información, vea el artículo Establecer el formulario predeterminado que aparece
cuando se abre una base de datos.
Opciones de exploración
Cuando se crea una categoría personalizada, se crea para la base de datos que está
abierta y la categoría está ligada a esa base de datos. No se pueden transferir categorías
y grupos personalizados a otras bases de datos.
Para crear y administrar categorías y grupos personalizados, se utiliza el cuadro de
diálogo Opciones de exploración. Éstos son los pasos generales del proceso:
Primero, se crea una categoría personalizada. Access proporciona la categoría:
Personalizado. Puede cambiar el nombre de esa categoría y, a continuación,
agregar o quitar grupos según sus necesidades, o bien, puede crear una nueva
categoría en cualquier momento.
Tras la creación de una categoría, se crea uno o varios grupos para la nueva
categoría.
Cierre el cuadro de diálogo Opciones de exploración y, en el panel de
exploración, arrastre o copie y pegue los objetos de la base de datos que desee
asignar al grupo personalizado. Los objetos se arrastran o se copian desde un
grupo especial denominado Objetos no asignados, que Access crea cuando se
crea una categoría personalizada.
Cuando se agrega un objeto de base de datos desde el grupo Objetos no
asignados a un grupo personalizado, Access crea un acceso directo a ese objeto:
no se mueve ni se copia el propio objeto. Si se cambia de nombre o se elimina
un acceso directo en un grupo personalizado, esos cambios no afectan al propio
objeto, sólo al acceso directo a dicho objeto.
Tras rellenar los grupos personalizados, puede ocultar el grupo Objetos no
asignados y todos los demás grupos que no desee mostrar.
Crear Categorías
1. Haga clic con el botón secundario del mouse en el menú de la parte superior del
panel de exploración y, a continuación, haga clic en Opciones de exploración.
Tras crearse la categoría personalizada, se crea uno o varios grupos para dicha
categoría. Se pueden crear tantos grupos como sean necesarios. Mantenga
abierto el cuadro de diálogo Opciones de exploración y siga los
procedimientos que se detallan a continuación
Ordenar categorías
Haga clic con el botón secundario del mouse en el menú de la parte superior del panel
de exploración y elija Ordenar por.. Elegir la Opción que desee
Vistas
Haga clic con el botón secundario del mouse en el menú de la parte superior del panel
de exploración y elija Vista por:
Para abrir una base de datos ignorando las opciones de inicio que se haya establecido
en ella:
1. Seleccione el archivo de la base de datos en el explorador de Windows.
2. Mantenga presionada la tecla SHIFT mientras hace doble clic sobre el archivo.
Finalizar el trabajo
Usted hará que al abrir la base de datos Pedidos:
La barra de título muestre el texto Comercial Duop.
Se muestre el formulario Bienvenido.
No se muestre la ventana Base de datos.
Se muestre la barra de menús hrrComercial en lugar de la barra de
menús predeterminada.
Se impida ver la ventana Base de datos pulsando la tecla F11.
Procedimiento
1. Haga clic en la ficha Complementos, el menú Herramientas y luego active la
opción Inicio.
2. Realice las siguientes acciones en el cuadro de diálogo:
a. Escriba Comercial Doup en la caja de texto Título de la aplicación.
b. En el cuadro combinado Mostrar Formulario/Página, seleccione Inicio.
c. En el cuadro combinado Barra de menús (sic), seleccione
mnuComercial.
d. Desactive la casilla Usar las teclas especiales de Access.
3. Haga clic en el botón Aceptar.
4. Cierre la base de datos y vuelva a abrirla para ver el efecto de su configuración.
Paso 1: Crear un grupo de macros que contenga los comandos del menú
En este paso, se crea un grupo de macros, cada una de las cuales será un
comando independiente en el menú contextual.
¿Qué es un grupo de macros?
a. En el grupo Otros de la ficha Crear, haga clic en Macro. Si el
comando no está disponible, haga clic en la flecha situada debajo
del botón Módulo o Módulo de clase y, a continuación, haga
clic en Macro.
b. En el grupo Mostrar u ocultar de la ficha Diseño, haga clic en
Nombres de macro para mostrar la columna Nombres de
macro.
c. Para cada comando que desee agregar al menú contextual
personalizado:
Preguntas de Repaso
1. ¿Qué es una macro?
2. ¿Cómo se crea una macro?
3. ¿Cómo se asigna una macro a una etiqueta en un formulario?
4. ¿Cómo se asigna una macro a un botón de comando en un formulario?
5. ¿Cómo se crea una barra de herramientas?
6. ¿Cómo se especifican las opciones de inicio?
7. ¿Qué debe hacerse para que al abrirse una base de datos de Access se ignoren
las opciones de inicio que se haya especificado?
Los módulos
Los módulos son los objetos en los que se guarda el código que va a utilizar VBA. Hay
tres tipos de módulos.
Módulos generales
Para acceder a los módulos generales debemos presionar en la Ficha Crear, y luego la
Cinta Otros, para luego elegir Modulo.
Una vez hecho esto se abre el editor de VBA y nos crea un módulo con el original
nombre de Módulo1.
Este módulo está vacío, salvo la primera Linea: Option Compare Database
Desde la ventana del editor que se ha abierto, presionamos la opción de menú:
Herramientas > Opciones
Le damos a Aceptar.
¿Pero qué es esto?-
Cuando empecemos a escribir código, veremos que existen unos elementos que
se llaman variables, a los que podremos asignar valores.
Si tenemos activada la opción [Requerir declaración de variables] nos obligará
a declarar las variables antes de poder usarlas. Más adelante veremos que hay
variables que pueden contener Texto, Números, Fechas, Objetos, etc.
Esto significa darle nombre y expresar qué tipo de dato va a contener.
Una vez hecho esto grabamos el módulo dándole al botón Guardar ó a la opción
de menú Archivo, Guardar ó combinando las teclas [Ctrl] + [S]
1. Nos vamos a la Ficha Crear, Cinta Formularios y hacer clic en Diseño del
Formulario
2. Lo guardamos como Saludo
Si presionamos el botón vemos que no pasa nada. Vamos a hacer que cuando
se presione el botón aparezca el mensaje ¡¡¡Hola Mundo!!! en la etiqueta
lblSaludo, sustituyendo su contenido actual que es Saludo.
Un poquito de teoría
Windows funciona con las llamadas Ventanas. Esas ventanas contienen
objetos, y tanto las ventanas como los objetos pueden mandar unos “mensajes”
para indicar a la aplicación que usa Windows, o al propio Windows que han
ocurrido determinadas cosas. Esos mensajes se llaman Eventos. Por cierto; en
realidad muchos de los objetos, como los botones, también son ventanas; pero
esa es otra guerra.
En nuestro caso tenemos los siguientes objetos:
• Formulario Saludo
• Etiqueta lblSaludo
• Botón cmdSaludo
Cada uno de esos Objetos posee una serie de Propiedades, generan
determinados Eventos y pueden hacer determinadas cosas mediante unos
procedimientos propios que se llaman Métodos.
Por ejemplo, al presionar el botón cmdSaludo, se genera el evento [Al hacer
Clic] (Click). Podríamos capturar ese evento y aprovecharlo para, por ejemplo,
cambiar el texto de la etiqueta lblSaludo.
El texto que aparece en la etiqueta está en la propiedad [Título]; en inglés
[Caption]. Ahora la pregunta: ¿dónde y cómo se hace todo eso? Cada
formulario, y veremos más adelante que también cada informe, lleva asociado
un módulo especial. Se llama módulo de clase del formulario.
Vamos a verlo.
En el modo Diseño del formulario Saludo, seleccionamos el botón cmdSaludo.
Abrimos la Hoja de propiedades y seleccionamos la pestaña [Eventos], y
dentro de éstos el evento [Al hacer clic]. Al poner el cursor sobre él, nos
muestra un botoncito con tres puntos.
Pulsamos en él, y seleccionamos [Generador de código] en la ventana que se
nos abre. A continuación pulsamos en el botón [Aceptar].
Tras esto nos abrirá el módulo de clase del formulario Saludo, con el esquema
de código correspondiente al evento Clic del botón cmdSaludo:
Este código se corresponde al procedimiento que recoge el evento Clic del botón.
Consta de varias partes:
Private Sub: Indica que empieza un procedimiento del tipo Sub, más adelante veremos
en detalle qué es esto.
cmdSaludo_Click(): Indica que es el procedimiento al que llama el evento Click del
botón cmdSaludo.
End Sub: Indica el punto donde acaba el procedimiento
Entre esas dos líneas podemos escribir el código que le dirá a Access qué es lo que tiene
que hacer.
Vamos a hacer 2 cosas:
Entorno de desarrollo
Ya hemos comentado que VBA para Access tiene un entorno de desarrollo similar al de
otras aplicaciones con VBA.
Este entorno recibe el nombre de IDE, que significa algo así como Entorno de
Desarrollo Integrado. En el “idioma bárbaro” se escribe Integrated Development
Environment.
Este entorno consta de una serie de ventanas y botones, algunos de los cuales se
muestran en el siguiente gráfico
Interrumpir
Ejecutar Macro
Parece que Access recuerda que existe “algo” llamado a, que se le ha dado el
valor 2 y algo llamado b que tiene el valor 4, como se demuestra tras el resultado
de escribir la segunda vez
? a^b
Pero resulta que tras presionar el botón de Reiniciar (el cuadradito azul) resulta
que Access se equivoca y da como resultado 1.
Pero no vamos a ser más “papistas que el Papa”. Vamos a hacer ahora otro
experimento. Escribimos en la ventana Inmediato:
a = "2" : b = "4" : ? a + b
Tras presionar la tecla Enter el resultado es ¡chan, chan….!
+ Suma
* Producto
^ Exponenciación
Esto hace que VBA considere el 2 y el 4, no como números, sino como texto,
también llamado cadena. Tras esto el operador + no efectúa una suma numérica,
sino que enlaza dos cadenas de texto. Si enlazamos la cadena "2" con la cadena
"4", nos da la cadena "24".
Para los “listos” que ya se sabían el resultado, el resto que no haga ni caso de
este párrafo, les informo que esto, en lenguajes más avanzados, se llama
Sobrecarga de Operadores, lo que equivale a decir que el operador + está
Sobrecargado.
¿Por qué no nos ha dado como resultado 4,8 que es lo que le daría a un buen
cristiano, judío ó musulmán, (o lo que sea siempre que sea bueno)?.
En una sentencia Print, cuando encuentra una coma entre dos valores, intercala
una tabulación.
Probemos ahora:
Print 2.4 * 2 y nos da 4,8
¡Nueva sorpresa!.
Ahora lo hace bien pero ¿no hemos quedado que el separador decimal es el
punto?.
¿Por qué ahora me muestra el resultado decimal con una coma como separador?
Cosas de Windows.
Como sabe que al otro lado de la pantalla hay un hispano, le muestra el resultado
“en cristiano”; Excepto para algunos PCs. De México, Florida y otra s
“colonias”.
¿Y cómo lo sabe?-.
Fácil; para eso está la Configuración Regional de Windows-. Vamos a dejar de
divagar y sigamos experimentando. Escribimos en la ventana Inmediato lo
siguiente:
a = 2 : b = "Peras" : Print a + b
Nos imprimirá
Dos Peras
Procedimientos Sub
Un procedimiento Sub llamado también Procedimiento a secas es un conjunto de código
que realiza determinadas tareas.
Suele estar contenido entre las expresiones Sub y EndSub
El término Sub puede ir precedido de otras expresiones, por ejemplo para delimitar el
ámbito en el que puede ser llamado el procedimiento.
Al procedimiento se le pueden pasar una serie de datos para que los use internamente. A
estos datos se les llama Parámetros ó Argumentos.
Si en la ventana de código escribimos la palabra Sub, le ponemos encima el cursor y
presionamos la tecla [F1], Access nos mostrará la ayuda aplicable a Sub.
En la ayuda podemos entre otras cosas podemos ver:
Por cierto, estas líneas indican cómo es la estructura de un procedimiento Sub. Los
elementos que están entre Paréntesis Cuadrados [ ] son opcionales.
Cuando hay varias palabras separadas por Barras Verticales |, nos está indicando que
podemos seleccionar una de ellas.
Según esto serían igual de válidas las sentencias:
Sub Procedimiento_01()
End Sub
Con una salvedad, este último es un tipo especial de Sub. Y es especial porque captura
el evento que se produce cuando de presiona el botón cmdSaludo de su formulario.
Recordemos que un Evento es un mensaje que envía Windows y en este caso es
capturado por Access.
En el módulo que hemos creado vamos a escribir el siguiente código:
Public Sub Circunferencia()
Dim Radio As Single Radio = 2.5
Debug.Print "Circunferencia = " & 2 * Pi * Radio
Debug.Print "Círculo = " & Pi * Radio ^ 2 & " m2"
End Sub
Ahora, en la ventana Inmediato escribe Circunferencia y presiona [Enter]
Efectivamente, en esa ventana se escribirá:
Circunferencia = 15,7079632679489
Círculo = 19,6349540849362 m2
Vamos a analizar un poco esto.
Hemos creado un procedimiento llamado Circunferencia. Este procedimiento es de los
de tipo Sub.
La primera línea es el encabezado.
Al hacerlo Public, dentro de un módulo estándar, permitimos que se pueda llamar desde
cualquier parte de la base de datos. Es un procedimiento público.
En la segunda línea declaramos la variable Radio, de tipo Single.
El tipo Single es un tipo de coma flotante, que ocupa 4 bytes, o lo que es lo mismo, 32
bits. En la siguiente línea asignamos a la variable el valor 2.5
Recuerdo que dentro del código, las comas separadores de decimales se ponen como
puntos.
La siguiente línea utiliza el método Printdel objeto Debug.
La forma de llamarlo es poniendo primero el objeto, a continuación un punto y después
el método.
Fijese que mientras lo escribes se les muestra una “Ayuda en línea” que les permite
seleccionar lo que quieres escribir.
Funciones
En la entrega anterior hemos visto una introducción a los procedimientos Sub.
Otro de los tipos de procedimientos son los procedimientos Function, que al igual que
los procedimientos Sub están delimitados por Functiony End Function.
La principal diferencia entre un procedimiento Sub y un procedimiento Function es que
este último devuelve un valor.
Entre los dos delimitadores se escribe el código que va a realizar las tareas que
deseemos, y al final devolverá algún valor.
Son las llamadas Funciones.
Veamos la forma como lo explica la ayuda de Access.
Si vamos a la ventana Inmediato, escribimos Function, ponemos el cursor en lo escrito y
presionamos [F1], entre otras cosas nos aparece la sintaxis de su declaración:
[Public | Private | Friend] [Static] Function nombre [(lista_argumentos)] [As tipo]
[instrucciones]
[nombre = expresión] [Exit Function] [instrucciones]
[nombre = expresión]
End Function
Vemos que para declarar una función empezaríamos, por ejemplo poniendo la palabra
Public (si quisiéramos que la función sea accesible desde cualquier parte de Access) a
continuación la palabra Function, después abriríamos un paréntesis y pondríamos los
parámetros que necesitáramos, cerraríamos el paréntesis y finalmente pondríamos el
tipo de datos que devolvería la función.
Supongamos que quisiéramos escribir una función en la que pasándole el ángulo y el
radio, nos devolviera la longitud de un arco de circunferencia.
La cabecera de esta función sería:
Public Function Arco(Angulo As Single, Radio As Single) As Single
Hay un truco para que una línea con mucho texto se pueda dividir en varias líneas, sin
que deje de ser una única línea.
Se coloca al final de la línea que se quiere dividir un espacio en blanco y la raya de
subrayado.
Con ello la línea anterior se podría poner así:
Public Function Arco(Angulo As Single, Radio As Single) As Single
Aquí declaramos la función como pública, para que se pueda utilizar desde cualquier
parte de la aplicación, siempre que se escriba en un módulo normal.
A continuación escribimos la palabra Function, seguida de su nombre, en este caso
Arco. Abrimos paréntesis y escribimos los dos parámetros que necesitamos, Angulo y
Radio, declarándolos del tipo Single (tipo numérico de coma flotante de 4 Bytes).
Cerramos el paréntesis y declaramos la función Arco también del tipo Single.
Si escribes la cabecera de la función en un módulo normal, veras que VBA, al igual que
pasaba con los procedimientos Sub, les añade automáticamente el final correspondiente,
es decir
End Function
Tras completar la expresión, y darle a [Enter] nos escribirá: 6,283185 que es la longitud
de un arco de radio 1 y ángulo 360º, lo que equivale a la circunferencia completa.
Vamos a hacer un experimento: ¿Qué pasa si cambiamos la declaración de tipo de esta
función?
Si no fuese así, si más adelante tuvieras que revisar tu código, o si lo tuviese que hacer
otra persona, tendríais que invertir una gran cantidad de tiempo en averiguar qué es y
qué hace cada cosa en el código.
Más adelante hablaremos sobre normalización de código, pero fíjate que el nombre de
los cuadros de texto está precedido por las letras txt y el del botón por cmd.
Así si en un pedazo de código veo una palabra que empieza por cmd sé que se refiere a
un botón, y si empieza por txt sé que se refiere a un cuadro de texto.
Otro ejemplo: Los nombres de las etiquetas los suelo empezar por lbl. Estas son
convenciones de normalización “más ó menos” estándares.
A partir de este momento las iré aplicando al código y veréis como su uso se irá
convirtiendo en algo cada vez más natural.
A lo que íbamos.
Tenemos en un formulario los siguientes elementos:
txtSumando_1 Cuadro de texto
txtSumando_2 Cuadro de texto
cmdSumar Botón de comando
Probablemente al poner los cuadros de texto se nos hayan colocado dos etiquetas. D e
momento no vamos a cambiar su nombre, pero les vamos a poner como Título
Operando 1 y Operando 2
Ahora vamos a poner una etiqueta nueva, con título Resultado, y de nombre
lblResultado. Más de uno se habrá dado cuenta que lbl viene de Label (etiqueta en
inglés), txt de Text y cmd de Command.
A esta etiqueta le vamos a poner un texto un poco más grande y como color de texto el
rojo. ¿Pero qué quieres que hagamos con todo esto?
Tan simple como tener un formulario en el que escribir dos números en la s
correspondientes casillas, y que al pulsar un botón nos muestre su suma.
¿Y cómo sabe Access cuando se ha pulsado el botón y qué es lo que tiene que hacer?
Para eso utilizaremos el Evento Clic del botón cmdSumar.
Ya he comentado que un Evento es un “mensaje” que manda Windows, cuando pasa
algo, que puede ser captado por Access y a su vez reenviado a Windows con un código
que se tiene que ejecutar.
Seleccionamos el botón, y en la
[Hoja de Propiedades] pulsamos en
la pestaña Eventos. Seleccionamos
el cuadro correspondiente a “Al
hacer clic” y pulsamos en el
pequeño botón con tres puntos que
nos aparece.( Debe estar
desactivado el botón Asistente para
Controles )
A continuación veremos una pequeña pantalla que nos permite seleccionar entre
Generador de expresiones
Generador de macros
Generador de código
¿Qué ha pasado?.
¿Por qué en vez de un 5 nos da 23? al fin y al cabo 2 más 3 son 5
Estas son algunas de las cosillas que desaniman a los principiantes…
No es que Access nos esté tomando el pelo. Recordemos que estamos hablando del
contenido de un [Cuadro de Texto], y que como tal todo lo que contiene lo interpreta
como texto.
Aunque hemos introducido un 2 para el control es como si introdujéramos el texto “2”.
Vamos a probar a introducir en el primer Cuadro de texto Pepe, y en el segundo
Gotera. Al presionar el botón nos da
Un par de párrafos más adelante veremos cómo solucionar este problema. Primero un
par de matizaciones sobre el código.
Tomemos el texto
Me.lblResultado.Caption
Vamos a desmenuzarlo.
Me representa el formulario al que pertenece el código.
Me.lblResultado
lblResultado representa a la etiqueta lblResultadodel formulario actual.
Me.lblResultado.Caption
Captionrepresenta a la propiedad Título de la etiqueta.
¿Pero qué tenemos que hacer para poder sumar los datos?
Primero deberíamos convertir los valores contenidos en los cuadros de texto a valores
numéricos.
Para efectuar esa conversión existe una función de VBA llamada Val(Valor)
Si escribimos en la ventana inmediato la palabra Val, ponemos en ella el cursor y
presionamos [F1] nos aparece la ayuda de la función Val.
Con la siguiente información:
Devuelve los números contenidos en una cadena como un valor numérico del tipo
adecuado.
Sintaxis
Val(cadena)
El argumento obligatorio cadena es cualquier expresión de cadena válida.
Vamos a hacer pruebas en la ventana Inmediato.
Escribimos las sucesivas expresiones y presionamos [Enter]
Expresión Resultado impreso
? "2" + "3" 23
?2+3 5
? Val("2") + Val("3") 5
? Val("12.234") 12,234
? Val(" 23 Caballos") 23
? Val(“Pepe”) 0
Declaracion de Variables
Una variable es un elemento del código que apunta a una dirección de memoria en
donde se almacena un dato.
Haciendo referencia a la variable se puede devolver el dato al que apunta e incluso
modificarlo.
Las constantes son similares a las variables, sólo que su contenido se le asigna en el
momento en el que se declaran, y después no es posible cambiarlo.
Hay tres temas que debemos considerar en una variable
El nombre de la variable
El tipo de dato al que apunta
El ámbito en el que es visible.
Tipos de datos
Además de las Variables hay otra serie de elementos que manejan datos, como son la s
Constantes, Procedimientos Sub y procedimientos Function que son capaces de
manejar datos de distintos tipos, e incluso las funciones que devuelven datos.
Pero ¿qué tipos de datos podemos manejar? Y ¿qué características tienen? Hay varios
tipos de datos.
Entre ellos podemos definir
Numéricos Booleanos Fecha / Hora
De texto (cadenas) Variant
De objeto
Registros de datos definidos por el usuario
Datos numéricos
Existen dos familias de datos numéricos:
Datos numéricos de número entero
Datos numéricos de coma flotante.
Números Enero
Como datos enteros tenemos los siguientes tipos:
Prefijo
Por prefijo entenderemos el conjunto de letras que “es aconsejable” poner delante
del nombre de una variable, para indicarle a la persona que escribe, ó lee, el
código, el tipo de dato que contiene una variable.
La ventaja de utilizar estos métodos se aprecia inmediatamente. Así, sólo con leer
que una tiene como nombre lngDiasTrabajados podríamos deducir que es una
variable de tipo Long que probablemente sirva para manejar los días trabajados.
Tipo Decimal
El tipo Decimal es un tipo muy especial. Permite trabajar con hasta 29
dígitos enteros exactos ó hasta con 28 dígitos exactos en su parte
decimal.
Es un tipo con muy poco uso en Access, ya que normalmente no se
necesita ese tipo de precisión, y además resulta engorroso su uso.
Tipo Date
El tipo Date es un tipo de dato adecuado para manejar datos de tipo
Fecha / Hora.
El valor 0 representa las 0 horas del 30 de diciembre de 1899.
La parte entera representa el número de días que han pasado desde esa
fecha. La parte decimal representa el tanto por 1 de día adicional que ha
pasado.
Tipo Variant
El tipo Variant es un tipo de dato que puede contener prácticamente
cualquier tipo de datos. El prefijo que se suele utilizar para identificar una
variable Variantes var.
Hay excepciones, por ejemplo no puede contener una cadena de
longitud fija.
Cuando declaramos una variable o escribimos la cabecera de una función,
sin especificar el tipo que va a contener ó devolver, implícitamente la s
estamos declarando como de tipo Variant.
Si declaramos una constante, sin especificar su tipo, el tipo que
tome lo hará en función del dato que le asignemos en la propia
declaración.
Las de tipo boleano el valor False, ó 0. Las de tipo cadena la cadena vacía "". Las de
tipo variant, el valor Empty.
Dim
Si la instrucción Dim se utiliza para declarar una variable en la cabecera de un módulo,
esa variable sólo será “visible” por los procedimientos que estén dentro de ese módulo.
De forma semejante, si la instrucción Dim se utiliza dentro de un procedimiento, esa
variable sólo podrá ser vista por el código del interior del procedimiento.
Private
La instrucción Private se suele utilizar para definir de forma explícita que una
constante, variable o procedimiento sólo van a ser visibles desde dentro de un módulo.
Se suele utilizar para la declaración de variables y constantes en las cabeceras de
módulos, así como para definir el alcance de los procedimientos de ese módulo.
Dentro de un procedimiento se usa Dimen vez de Private.
Public
La instrucción Public se suele utilizar para definir que una constante, variable o
procedimiento van a ser visibles desde cualquier parte de la aplicación.
Se suele utilizar para la declaración de variables y constantes en las cabeceras de
módulos, así como para definir el alcance de los procedimientos de ese módulo.
Por ello no es factible declarar una variable como Publicdentro de un procedimiento.
Sí se puede en cambio, declararla en la cabecera de cualquier módulo estándar o de
clase.
Nota: Una aclaración respecto a los elementos declarados en un módulo de clase.
Si declaramos una variable, constante ó procedimiento como Public en un módulo de
clase, por ejemplo en un formulario, para poder usarlo hay que hacerlo a través de una
Instancia de ese módulo de clase.
Global
La instrucción Global se utiliza de forma semejante a Public, dentro de módulos
estándar.
La instrucción With
Si observamos el código del procedimiento PruebaRegistro de la página anterior, vemos
que, tanto para asignar valores a los atributos de la variable Vendedor, he utilizado la
instrucción With, acompañada de su complemento End With.
Esto nos permite evitarnos tener que repetir de reiterativamente el nombre Vendedor en
cada línea de asignación ó lectura.
Entre With Vendedor y End With al escribir el punto se supone que estamos utilizando
atributos del registro Vendedor.
Este tipo de sintaxis ayudados por la instrucción With, se puede utilizar no sólo con
Variables Registro, sino también con todo tipo de objetos, como veremos
posteriormente.
Estructuras de Control.
Las estructuras de control son segmentos de código que nos permiten tomar decisiones
en base a unos datos dados, o repetir procesos (bucles) mientras sucedan determinada s
condiciones en los parámetros controlados por el código.
Ya hemos comentado algunas de ellas en las entregas anteriores.
Estas estructuras vienen determinadas por una serie de instrucciones, entre las qu e
destacaremos:
Estructuras de Decisión
If . . . . Then
If . . . . Then . . . . Else
IIF
Select . . . . Case
Estructuras de Bucle
For . . . . Next
For Each . In . . . . Next
Do . . . . Loop
Nota:
Antes de seguir adelante, adoptaré el sistema habitual para las expresiones de la sintaxis
de una sentencia.
Las partes de código situadas entre corchetes []son opcionales.
De las partes contenidas entre Llaves {}hay que seleccionar una de ellas.
Estructuras de Decisión.
La Instrucción If
Permite ejecutar un grupo de instrucciones de código, en función de que el valor de una
expresión sea Cierta o Falsa True/ False.
La forma más básica de esta instrucción es:
If condición Then [instrucciones]
Condición debe ser una expresión, numérica, relacional ó lógica que devuelva True ó
False
Por ejemplo:
If Divisor<>0 then Cociente = Dividendo/Divisor
Si el valor de la variable Divisor es diferente a Cero, entonces haz que la variable
Cociente tome el valor de la división entre la variable Dividendoy la variable Divisor.
Esta forma de la instrucción If sólo se puede poner en una única línea de código, aunqu e
admite múltiples instrucciones separadas por los dos puntos ":".
If Divisor<>0 then C = Dividendo/Divisor : Debug.print C
Segunda forma
If condición Then
[instrucciones]
End If
El ejemplo anterior podría haberse escrito:
If Divisor<>0 then
Cociente = Dividendo/Divisor
End If
Esta forma permite la ejecución de varias líneas de sentencias entre Then y End If.
Esta sintaxis es preferible a la primera, ya que genera un código más claro de
interpretar.
La instrucción If permite ejecutar otro grupo de sentencias, si el resultado de la
evaluación de la expresión fuera falso.
If condición Then
[instrucciones para el caso de que condición sea
True]
Else
[instrucciones para el caso de que condición sea
False]
End If
Ejemplo:
Public Sub PruebaIf01()
Dim Dividendo As Single
Dim Divisor As Single
Dim Cociente As Single
Dividendo = 4
Divisor = 2
If Divisor <> 0 Then
Cociente = Dividendo / Divisor
Debug.Print Cociente
Else
MsgBox "No puedo dividir entre cero", vbOKOnly +
vbCritical, "División por cero"
End If
End Sub
En este caso, como Divisor <> 0 devuelve False, se ejecutará la línea que aparece entre
Else y End If, con lo que mostrará el mensaje de error.
Estas sentencias admiten aún un modo adicional, y es usar Else If. Es una nueva
evaluación tras una anterior que da como resultado falso.
Supongamos que queremos hacer una función que devolviera el Nombre de provincia
en función de un código. Acepto por adelantado que habría otras formas más adecuadas,
pero es sólo un ejemplo.
Ejemplo:
Public Function Provincia(ByVal Codigo As Long) As String
If Codigo < 1 Or Codigo > 52 Then
Provincia = "Código de provincia incorrecto" ElseIf Codigo = 1
Then
Provincia = "Álava"
ElseIf Codigo = 8 Then
Provincia = "Barcelona" ElseIf Codigo = 20 Then
Provincia = "Guipuzcoa"
ElseIf Codigo = 28 Then
Provincia = "Madrid" ElseIf Codigo = 31 Then
Provincia = "Navarra" ElseIf Codigo = 31 Then
Provincia = "Navarra" ElseIf Codigo = 26 Then
Provincia = "La Rioja" ElseIf Codigo = 48 Then
Provincia = "Vizcaya"
ElseIf Codigo = 50 Then
Provincia = "Zaragoza"
Else
Provincia = "Otra Provincia"
End If
End Function
Con este código Provincia(31)devolvería “Navarra”
Las instrucciones Ifse pueden anidar, (poner unas dentro de otras).
If comparación1 Then
[Instrucciones de 1]
If comparación2 Then
[Instrucciones de 2] End If
End If
La Función IIf
Es una función similar a la estructura If . . Then . . Else
Devuelve uno de entre dos valores, en función del resultado de una expresión: Su
sintaxis es
IIf(expresión, ValorTrue, ValorFalse)
Case 3
Case 3, 5, 6, 7
Case 1 To 8, 0, -5
Case Is < 8
Case Is > 3
Case Is >= lngDias
Case "A", "B", "C", "Z"
Voy a poner un ejemplo para clarificarlo:
Supongamos que queremos crear una función que nos cualifique el tipo de los pagarés
de los clientes en función del tiempo que queda hasta su cobro.
La función recibirá como parámetro la fecha del vencimiento. Si la fecha es anterior al
día de hoy, deberá devolver la cadena “Pago vencido”. Si es del día de hoy “Vence
hoy”, si quedan entre 1 y 3 días “Cobro inmediato”, si menos de 31 días “Corto
Plazo” si son menos de 181 días “Medio Plazo” y si es mayor “Largo Plazo”
La función podría ser ésta:
Public Function TipoVencimiento( _ Vencimiento As Date) As String
Dim lngDias As Long
' Date devuelve la fecha de hoy
lngDias = Vencimiento - Date
Select Case lngDias
Case Is < 0 ' Si lngDias es menor que cero
TipoVencimiento = "Pago vencido"
Case 0 ' Si es cero
TipoVencimiento = "Vence hoy"
Case 1, 2, 3 ' De 1 a 3
TipoVencimiento = "Cobro inmediato"
Case 4 To 30 ' De 4 a 30
TipoVencimiento = "Corto Plazo"
Case 31 To 180 ' De 31 a 180
TipoVencimiento = "Medio Plazo"
Case Else ' Si ninguno de los anteriores
TipoVencimiento = "Largo Plazo"
End Select
End Function
Aquí mostramos algunas de las posibilidades de elaboración de la lista_expresion.
Case Is < 0
Is se puede utilizar junto con operadores de comparación. Estos operadores son
= Igual a
< Menor que
<= Menor ó igual que
> Mayor que
>= Mayor ó igual que
<> Diferente que
Se pueden poner diferentes expresiones separadas por comas
Estructuras de Bucle.
Las Instrucciones For - - - Next
Supongamos que tenemos que construir una función que nos devuelva el Factorial de un
número.
Recuerdo que Factorial de n es igual a 1*2*3* . . . *(n-1)*n, para n entero y mayor que
cero.
Adicionalmente se define que Factorial de Cero tiene el valor 1. Cómo se haría esta
función:
Public Function Factorial(ByVal n As Integer) As Long
Dim i As Integer
Factorial = 1
For i = 1 To n
Factorial = Factorial * i
Next i
End Function
Efectivamente funciona, ya que Factorial devuelve resultados correctos para valores de
nentre 0y 12.
Pero esta función no sería operativa para un uso profesional ya que tiene una serie de
fallos. Por ejemplo, si hacemos Factorial(-4) devuelve el valor 1, lo que no es correcto,
Exit Function
Case 0
FactorialCurrency = 1
Exit Function
Case 1 To 17
FactorialCurrency = 1
For i = 1 To n
FactorialCurrency = FactorialCurrency * i
Next i
Case Else
MsgBox "Número demasiado grande", vbCritical + vbOKOnly,
"Error en la función FactorialCurrency"
Exit Function
End Select
End Function
Ahora nos permite trabajar desde 0 a 17.
17! = 355.687.428.096.000
Esta ya es una cifra importante. Pero supongamos que nos contrata el Fondo Monetario
Internacional, para hacer unos estudios estadísticos a nivel mundial.
Es posible la capacidad de calcular hasta el factorial de 17, se nos quede corta.
Para ello echamos mano de un tipo numérico de rango aún más alto. El tipo Decimal.
El tipo Decimal tiene la particularidad de que VBA no puede trabajar directamente con
él.
La variable que lo vaya a contener debe ser primero declarada como Variant, y luego
convertida a Decimal.
Public Function FactorialDecimal(ByVal n As Integer) As Variant
Dim i As Integer
Dim Resultado As Variant
' Aquí hacemos la conversión de Variant a Decimal
Resultado = CDec(Resultado)
Select Case n
Case Is < 0
MsgBox "No existe el factorial de un número negativo", vbCritical
+ vbOKOnly, " Error en la función Resultado"
Exit Function
Case 0
FactorialDecimal = 1
Exit Function
Case 1 To 27
Resultado = 1
For i = 1 To n
Resultado = Resultado * CDec(i)
Next i
Case Else
La instrucción For m --- Next m., repite el código contenido entre la línea que contiene
la palabra Fory la línea que contiene a su correspondiente Next.
Su sintaxis es
For contador = principio To fin [Step incremento] [instrucciones]
[Exit For]
[instrucciones]
Next [contador]
Contador es una variable numérica que irá tomando sucesivos valores, con incrementos
ó decrementos iguales al valor de incremento.
Si no se pusiera el valor incremento, contadoriría creciendo en una unidad cada vuelta.
El código se irá repitiendo hasta que contador tome el valor de fin, ó se encuentre con la
instrucción Exit For.
En el siguiente ejemplo, el bucle For Next se ejecutará hasta que lngSuma sea mayor que
100, momento en que saldrá del bucle o se imprima el número de impares especificado
en el parámetro Numero. Si el parámetro Numero fuese cero ó menor, se sale
directamente del procedimiento sin ejecutarse el bucle.
Public Sub ImprimeImpares(Numero As Long) Dim i As Long
Dim lngImpar As Long
Dim lngSuma As Long
If Numero < 1 Then
Exit Sub
End If
For i = 1 To Numero
lngImpar = 2 * i - 1
lngSuma = lngSuma + lngImpar
If lngSuma > 100 Then
Exit For
End If
Debug.Print i & " - " & lngImpar & " - " & lngSuma
Next i
End Sub
La llamada al procedimiento se haría, por ejemplo para 4 impares
ImprimeImpares 4
Después de la palabra Next, no es imprescindible escribir el nombre de la variable que
sirve como contador. Por ejemplo este bucle es válido a pesar de no escribir Next i:
For i = 1 To 10
Debug.Print i
Next
[instrucciones]
Loop
O con esta otra sintaxis:
Do
[instrucciones] [Exit Do] [instrucciones]
Loop [{While | Until} condición]
Veamos la primera forma:
Después de Do nos permite seleccionar Whilecondición, ó Untilcondición.
Si ponemos While, después de Do el bucle se ejecutaría mientras la condición sea cierta.
Si escribimos Until, el bucle se ejecutaría hasta que la condición sea cierta.
Si la condición no fuese cierta no se ejecutaría el bucle tanto si hemos puesto While,
como si hubiéramos escrito Untildespués de Do.
Por lo tanto podría ocurrir, tanto con Whilecomo con Untilen función del resultado de
Condición, que no se llegara a ejecutar el bucle ni una sola vez.
Si deseáramos que siempre se ejecutara al menos una vez el bucle, deberíamos usar
While ó Until después de Loop.
Supongamos que queremos escribir una función a la que pasándole un número entero
positivo, nos indique si ese número es ó no primo.
Supongo que no hará falta recordaros que un número primo es aquél que sólo es
divisible por 1 ó por sí mismo.
Este es el método que voy a emplear. – Sí. Ya se que no es el óptimo:
Dividir el número entre valores enteros, empezando por el dos, y a
continuación por los sucesivos valores impares, hasta que encontremos un
valor que divida de forma exacta al número a probar (su resto = 0).
Si el resto de la división da cero indica que el número es divisible por ese valor,
por lo que el número no será primo y deberemos salir del bucle.
Seguir con el ciclo mientras el valor por el que se va a dividir el número no
sea mayor que la raíz cuadrada del número.
Necesitáis saber que en VBA, el operador que devuelve el resto de una división es Mod.
Si dividimos 17entre 3da de resto 2 17 Mod 3 2
Ya sé que este código es manifiestamente mejorable, pero funciona y me viene bien
para el ejemplo con Do Loop.
Funciona si el número que probamos es menor ó igual que 2.147.483.647
Este es el máximo número Long positivo. Este número también es primo.
Public Function EsPrimo(ByVal Numero As Long) As Boolean
Dim lngValor As Long
Dim dblRaiz As Double
Select Case Numero
Case Is < 1
Nota:
En este código he usado para calcular la raíz cuadrada de un número, elevar éste a 0,5. En
VBA hay una función que calcula la raíz cuadrada directamente: Sqr(Número). Es
equivalente a Número^0.5
Habiendo escrito la función EsPrimo, en un módulo estándar, vamos a crear un
formulario en el que introduciendo un número en un cuadro de texto, tras pulsar un
botón, nos diga si es primo ó no.
Cerramos el editor de código y creamos un nuevo formulario y lo ponemos en Vista
Diseño. Añadimos al formulario una etiqueta, un cuadro de texto y un botón.
Nombres aplicados a los controles:
Etiqueta lblMensaje
Cuadro de texto txtNumero
Etiqueta del cuadro de texto lblNumero Botón cmdPrimo
Ajustamos algunas de las propiedades del formulario, por ejemplo para quitar los
separadores de registro, botones, etc.…
Ya que va a ser un formulario con muy pocos controles, ponemos los textos algo
mayores que lo normal, e incluso podemos jugar con los colores.
A mí me ha quedado así
Para que el formulario tenga este aspecto, he modificado algunas de sus propiedades:
Propiedad Valor
Selectores de registro No Botones de desplazamiento No Separadores
de registro No Estilo de los bordes Diálogo
Vamos a hacer ahora que tras introducir un número en el cuadro de texto, y presionar el
botón, nos diga en la etiqueta si el número es primo.
Volvemos a la hoja de propiedades y seleccionamos Eventos.
Teniendo seleccionado el botón, activamos el evento Al hacer clic, pulsamos en el
botoncito que aparece con los tres puntos y seleccionamos Generador de código, y a
continuación Aceptar.
Vamos a escribir el código:
Recuerda que detrás de la comilla simple lo que se escriba es un comentario
(líneas en verde). Estas líneas VBA las ignora, sirviendo sólo como ayuda al
usuario. También recuerda que el espacio en blanco seguido de la barra
inferior, al final de una línea, hace que la línea siguiente se considere como la
misma línea. El dividir así las líneas lo hago como ayuda para la composición
de este texto y para ordenar el código.
Private Sub cmdPrimo_Click()
Dim strNumero As String
Dim lngNumero As Long
' Pasamos a la variable el contenido de txtNumero, sin blancos en las esquinas
' Nz(txtNumero, "") devuelve una cadena vacía si txtNumero contuviera Null
' Trim (Cadena) quita los "Espacios en blanco" de las esquinas de la Cadena
strNumero = Trim(Nz(txtNumero, ""))
' IsNumeric(strNumero) devuelve True si strNumero representa a un número
If IsNumeric(strNumero) Then
' La función EsPrimo() funciona con números long positivos entre 1 y 2147483647
If Val(strNumero) > 2147483647# Or Val(strNumero) < 1 Then
lblmensaje.Caption = "El número está fuera de rango"
txtNumero.SetFocus
Exit Sub
End If
lngNumero = Val(strNumero)
'Format(lngNumero, "#,##0") devuelve una cadena con separadores de miles
strNumero = Format(lngNumero, "#,##0")
If EsPrimo(lngNumero) Then
lblmensaje.Caption = "El número " & strNumero & " es primo"
Else
lblmensaje.Caption = "El número " & strNumero & " no es primo"
End If
Else
lblmensaje.Caption = "No ha introducido un número"
End If
'El método SetFocus hace que el control txtNumero tome el foco
txtNumero.SetFocus
End Sub
Tras presionar el botón cmdPrimo se produce el evento clic, por lo que se ejecuta el
procedimiento cmdPrimo_Click()que maneja ese evento
Este procedimiento lo primero que hace es declarar dos variables, strNumero de tipo
stringy lngNumerode tipo Long.
A continuación asigna el contenido del cuadro de texto txtNumero, procesado primero
con la función Nz, que devuelve una cadena vacía si tiene el valor Null, y a
continuación le quita los posibles espacios en blanco de los extremos mediante la
función Trim.
Seguidamente pasa por la primera estructura de decisión If, controlando si la cadena
strNumero es de tipo numérico.
Si no lo fuera muestra en la etiqueta el mensaje "No ha introducido un número". Si
lo fuera, primero comprueba si la expresión numérica de strNumero está entre 1 y
214748364, rango de valores válidos en el rango de los Long, para la función EsPrimo.
Si no fuera así, muestra el mensaje " El número está fuera de rango", lleva el cursor
al control txtNumeroy sale del procedimiento.
Supongamos que el contenido de strNumero ha logrado pasar todos estos controles.
Mediante la función Val(strNumero) asigna el valor a la variable lngNumero. Como
ya no vamos a utilizar la cadena strNumero para más cálculos, para mostrar el número,
le asignamos el resultado de la función Format(lngNumero, "#,##0").
Con esta utilización, la función Format devuelve una cadena formada por el número con
los separadores de miles.
La función Formatt tiene un amplio abanico de posibilidades en la conversión
de números y fechas a cadenas de texto.
El siguiente paso es comprobar si el número lngNumeroes primo, utilizando la función
EsPrimoque escribimos anteriormente.
Si lo fuera, escribiríamos en la etiqueta "El número " seguido del contenido de la
cadena strNumero, y el texto " es primo".
Si no lo fuera, escribiríamos lo mismo, pero indicando " no es primo". Terminado todo
esto llevamos el cursor al cuadro de texto txtNumeromediante su método SetFocus.
Todo muy bien. El cliente está contento y el programa responde a lo que nos
pedía, pero… Casi siempre hay un pero…
Viendo lo efectivos y rápidos que hemos sido, al cliente se le ocurre que sería
muy interesante poner dos botoncitos que al presionarlos, dado un número
cualquiera, nos muestre el número primo inmediatamente mayor ó menor al
número que hemos mostrado.
Tiene que ser fácil, total ya has hecho lo más importante y éste es un pequeño
detalle adicional, que no te costará prácticamente nada de tiempo y supongo
que no tendrás problemas para hacérmelo sin aumentar el importe
presupuestado…
¿A alguno le suena esta conversación?.
Y además, aunque ya has terminado lo que te pedían, como hay que añadirle este
“pequeño detalle…” no te pagan hasta que no lo termines…
Decido añadir dos botones con unas flechas en su interior.
Al primero, con una flecha hacia arriba lo llamo cmdPrimoSiguiente, y al segundo,
con una flecha hacia abajo, cmdPrimoAnterior.
Este es el diseño que le doy al formulario:
Cuando varias expresiones estén unidas por el Operador Lógico And, para que la
expresión total sea cierta, es necesario que lo sean cada una de esas expresiones. Con
que haya una falsa, la expresión total será falsa.
Por el contrario, cuando varias expresiones estén unidas por el Operador Lógico Or,
para que la expresión total sea cierta, es suficiente con que lo sea una cualquiera de las
expresiones que la forman.
A continuación nos encontramos con otro Operador, es el operador negación Not.
Do While Not blnPrimo
Not hace que la expresión lógica que le sigue cambie su valor. Así si blnPrimo contiene
el valor True
Not blnPrimo devolverá el valor False. La expresió equivale a:
Mientras blnPrimo no sea cierto
Que es equivalente a
Mientras blnPrimo sea falso.
Con ello se ejecutará el código contenido entre la línea de Doy la línea del Loop.
Cuando lngNumero sea primo, la función EsPrimo asignará True a blnPrimo, con lo que
se saldrá del bucle, pondrá la cadena de texto del número txtNumero en el cuadro de
texto y ejecutará el procedimiento cmdPrimo_Click, como si se hubiera presionado en
el botón [cmdPrimo].
Si el valor de lngNumero no hubiera cumplido con el rango de valores, pone un 1 en el
cuadro de texto txtNumero, y ejecuta el procedimiento cmdPrimo_Click.
En el procedimiento que maneja la pulsación de la tecla [cmdPrimoAnterior] aunque
tiene una estructura semejante, se introducen unos cambios que considero interesante
remarcar.
Private Sub cmdPrimoAnterior_Click()
' Ignorar el error
On Error Resume Next
Dim strNumero As String
Dim lngNumero As Long
strNumero = Trim(Nz(txtNumero, ""))
If IsNumeric(strNumero) Then
lngNumero = Val(strNumero)
If lngNumero < 2147483648# And lngNumero > 1 Then
lngNumero = lngNumero - 1
Do Until EsPrimo(lngNumero)
lngNumero = lngNumero - 1
Loop
txtNumero = CStr(lngNumero)
cmdPrimo_Click
Else
txtNumero = "2147483647"
cmdPrimo_Click
End If
Else
txtNumero = 2147483647" cmdPrimo_Click
End If
End Sub
En primer lugar utilizamos una estructura del tipo Do Until, en vez de Do While.
Además, como condición no utiliza una variable como en el caso anterior, sino que lo
compara directamente con el valor devuelto por la función EsPrimo, que devuelve True
ó Falsesegún sea el caso:
Do Until EsPrimo(lngNumero)
Con esto nos evitamos utilizar una variable y una sentencia adicional. Además el código
resulta algo más claro..
En este caso, si la variable no supera los filtros, pone el valor "2147483647" en el
cuadro de texto.
Operadores
A la hora de construir instrucciones en VBA, que contengan operaciones, no sólo
manejamos constantes, variable y expresiones, sino que utilizamos unos elementos
llamados Operadores, que aplicados a uno ó varios operandos, generan el resultado de la
operación.
Tipos de Operadores
Aritméticos Se usan para efectuar cálculos matemáticos
De Comparación Permiten efectuar comparaciones De Concatenación
Combinan cadenas de caracteres Lógicos
Realizan operaciones lógicas
Operadores aritméticos
VBA maneja la mayor parte de los operadores aritméticos habituales en los lenguajes de
programación.
Estos operadores son
Suma +
Resta -
Producto *
División /
Elevar a potencia ^
División entera \
Módulo ó Resto MOD
En general, el tipo devuelto por el resultado de una operación, es el del tipo del más
preciso de los operadores, salvo que el resultado supere su rango; en ese caso devolverá
el siguiente tipo de mayor precisión. Esta regla tiene abundantes excepciones.
Para más información consulte la ayuda de Access en la que se relata toda la casuística
pormenorizada para cada uno de los operadores.
Si el resultado de una operación fuese un dato de coma flotante y se asignara a un tipo
entero, se efectuaría un redondeo.
Si se trata de asignar un resultado fuera del rango de valores de la variable que va a
recibir el resultado de la operación, se generará un error de “Desbordamiento“ y se
interrumpirá la ejecución del código, salvo que el error fuera capturado y tratado.
Operador Suma
El operador suma (+), sirve para asignar el resultado de la suma de dos números, ó en el
caso de cadenas, dar como resultado una cadena compuesta por las dos anteriores.
La forma de usarlo es
resultado = expresión1+expresión2
Si expresión1 ó expresión2 tuvieran el valor Null, el resultado sería también el valor
Null.
expresión1 y expresión2 son los operandos, pudiendo ser cualquier valor numérico ó
expresiones que los generen.
Al contrario de otros lenguajes, VBA permite utilizar como operadores, tipos numéricos
distintos. Por ejemplo podemos sumar un tipo Byte con un tipo Long, ó con un tipo
Date.
Igualmente la variable resultado no tiene por qué ser del mismo tipo que los operandos.
Una de las limitaciones es que el resultado de la operación no debe sobrepasar la
capacidad del tipo correspondiente a la variable que va a recibir el resultado de la
misma. Esto es aplicable al resto de los operadores.
Por ejemplo
Public Sub SumaConError()
Dim bytResultado As Byte bytResultado = 10 + 23
Debug.Print bytResultado bytResultado = 150 + 150
Debug.Print bytResultado
End Sub
Nos imprimirá el resultado 33 y a continuación nos generará el error nº 6
“Desbordamiento“, ya que un tipo Byte sólo admite valores que van de 0 a 255.
Nos daría ese mismo tipo de error si tratáramos de hacer
bytResultado = 15 + (-16)
Ya que a un Byteno se le pueden asignar valores negativos
Lo mismo ocurriría en el siguiente código
Dim intResultado As Integer
intResultado = 30000 + 30000
ya que un tipo Integermaneja valores entre -32.768y 32.767.
Como hemos indicado en un punto anterior, si a una variable que maneja números
enteros le asignamos el resultado de una suma de números de coma flotante, efectuará
un redondeo del resultado al número entero más próximo.
Public Sub PruebaSumaComaFlotante()
Dim intResultado As Integer
intResultado = 3.1416 + 2.5468
Debug.Print intResultado
intResultado = -3.1416 + (-2.5468)
Debug.Print intResultado
End Sub
Nos mostrará como resultado los valores 6 y -6.
Cuando se utilizan como operandos dos valores de tipos distintos, VBA cambia el
menos preciso al tipo del más preciso. Por ejemplo si vamos a sumar un Integer con un
Long, VBA realiza un “moldeado de tipo” con el Integer, convirtiéndolo a Long antes
de realizar la operación.
Si uno de los operadores fuera del tipo Date, el resultado también lo será. Si desde la
ventana Inmediato hacemos
? #3/14/5# + 1
nos mostrará
15/03/2005
(El comando ?es equivalente a Print)
En este caso vemos que al sumar 1 a la fecha devuelve la fecha del día siguiente. Como
ya hemos comentado el operador Suma permite sumar o concatenar cadenas.
Esta facilidad puede en algún momento crearnos más problemas que ventajas sobre todo
cuando manejamos cadenas que contienen posibles valores numéricos.
Public Sub PruebaSumaCadenas() Dim strResultado As String
strResultado = 3 + 4
Debug.Print strResultado
strResultado = 3 + "4" Debug.Print strResultado
strResultado = "3" + "4" Debug.Print strResultado
End Sub
Este código nos devolverá
7
7
34
Curiosamente 3 + "4"devuelve 7. Además si tratamos de hacer
101 + " dálmatas"
Nos dará el “bonito error” nº 13; “No coinciden los tipos”.
Por ello recomendamos usar el operador & como operador para sumar, ó unir cadenas,
en vez del operador Suma +.
Operador Resta
El operador resta (-), sirve para asignar el resultado de la sustracción entre dos
números. Tiene dos formas sintácticas
resultado = expresión1 - expresión2
En la primera, la variable resultado recibe el valor resultante de restar expresión2 a
expresión1.
En la segunda se cambia el signo al valor numérico de expresión.
Si expresión1 ó expresión2 tuvieran el valor Null, resultado recibirá también el valor
Null.
Empty lo considera como valor Cero.
Como en el caso de la suma, si uno de los operadores fuera del tipo Date, el resultado
también lo será. Si desde la ventana Inmediato hacemos:
Print #3/14/5# - 100
nos mostrará
04/12/2004
Para obtener información sobre los distintos tipos devueltos, en función del de los tipos
de los operadores, consulte la ayuda de VBA.
Operador Producto
El operador producto (*), sirve para asignar el resultado del producto de dos números.
La forma de usarlo es
resultado = expresión1*expresión2
resultado es una variable de tipo numérico y tanto expresión1 como expresión2 pueden
ser cualquier expresión que de como resultado un valor numérico.
Operador División
El operador división (/),asigna el resultado de la división de dos números. La forma de
usarlo es
resultado = expresión1/expresión2
resultado es una variable de tipo numérico y tanto expresión1como expresión2
pueden ser cualquier expresión que de como resultado un valor numérico.
Si expresión2 fuera el valor Cero, daría el error 11 de “División por cero”. El tipo
numérico que recibe resultado normalmente será del tipo Double. Esta regla tiene varias
excepciones
Si los operandos son del tipo Byte, Integeró Single, resultadorecibirá un
Single, a menos que supere el rango de Single en cuyo caso será del tipo Double. Si uno
de los operandos fuera del tipo Decimal, resultado también lo será.
Es aplicable lo dicho en los anteriores operadores matemáticos respecto a Null y Empty.
Para más información consultar la ayuda de VBA.
4 \ 0.5 Error 11
4 \ 0.51 4
4 \ Empty Error 11
4\0 Error 11
Hay que tener un especial cuidado con este operador, y no olvidar que previamente
realiza un redondeo a cero decimales, tanto del numerador como del denominador.
Este redondeo utiliza el método de redondeo vigente en el sistema bancario
americano, que es ligeramente diferente al europeo.
De este tema hablaremos cuando veamos la función Round.
Operadores de Comparación
En algunos procesos podemos necesitar establecer si un valor es menor, igual ó mayor
que otro, por ejemplo para la toma de una decisión mediante una sentencia If . . . Then.
En VBA tenemos 6 tipos de operadores para esta tarea. Estos operadores son
< Menor que
<= < Menor ó igual que
> Mayor que
>= > Mayor ó igual que
= Igual a
<> < Distinto de
Vemos que para los operadores menor o igual, mayor o igual y distinto de hay dos
posibles formas de escritura. La forma más usual de uso es la escrita en primer lugar. Su
sintaxis es
resultado = expresión1 Operador expresión2
resultado es una variable de tipo boleano y tanto expresión1 como expresión2 pueden
ser cualquier expresión que de como resultado un valor numérico o de cadena.
Operadores de concatenación
Los operadores de concatenación sirven para unir varias cadenas en una sola. Estos
operadores son
+ Suma
& Ampersand
Ya he comentado la posibilidad que tiene el operador suma para unir cadenas, al igual
que el operador &.
También he comentado mi preferencia por el operador & para efectuar estas tareas. La
sintaxis para estos operadores es
resultado = expresión1 + expresión2 resultado = expresión1 & expresión2
Operadores lógicos
Los operadores lógicos sirven para realizar operaciones lógicas con los operandos.
Estos operadores son
Operador And
El operador And, realiza una conjunción lógica entre dos expresiones operandos. Su
sintaxis es
resultado = expresión1 And expresión2
Resultado puede ser cualquier variable numérica ó boleana.
resultado tomará el valor True, sólo y sólo si las dos expresiones son ciertas. Las
combinaciones de Nullcon Truedan Null.
Nullcon Nullda Null
Las combinaciones que contengan Falsedan False.
Cuadro de resultados del operador And
Expresión 1ª Expresión 2ª Resultado
True True True
True False False
False True False
False False False
And devuelve el bit 1 sólo si los dos bits correspondientes de los operandos, valen 1.
Este operador es útil para poder averiguar si un determinado bit de una expresión está
activado (tiene el valor 1).
Por ejemplo, si queremos averiguar directamente el valor del tercer bit de un número
entero M, es suficiente ver el resultado de realizar M And 4. Si el resultado es 4 el
tercer bit de M contiene el valor 1, si es 0el tercer bit contendrá el valor 0.
En general si queremos averiguar el bit Nº N de una expresión M comprobaremos si el
resultado de M And 2^(N-1)es igual a 2^(N-1).
Hay determinados dispositivos en los que la configuración viene determinada por los
bits de una determinada propiedad.
Operador Or
El operador Or, realiza una Disyunción lógica entre dos operandos. Su sintaxis es
resultado = expresión1 Or expresión2
Resultado puede ser cualquier variable numérica ó boleana.
resultado tomará el valor True, si cualquiera de las dos expresiones es True. Las
combinaciones de Falsecon Falseda False.
Nullcon Falseó con Nullda Null
Cuadro de resultados del operador Or
Expresión 1ª Expresión 2ª Resultado
A nivel de bits, en operaciones con números, Or dará 1 salvo en el caso de que ambos
bits valgan 0.
5 Or 13 13
0101
1101
1101
El binario 1101es en notación decimal el número 13
Con el operador And, hemos visto que podemos averiguar qué bit está activado en una
expresión.
El operador Ornos permite definir el valor de un determinado bit de un valor.
Supongamos que tenemos un dispositivo que contiene la propiedad Config de tipo
Long, que controla el funcionamiento del mismo.
Operador Not
El operador Not, realiza una Negación lógica sobre una expresión. Su sintaxis es
resultado = Not expresión
Resultado puede ser cualquier variable numérica ó boleana. Tomará el valor True, si
expresión es Falsey a la inversa. Si expresiónfuese Null, devolverá Null.
Cuadro de resultados del operador Not
Expresión Resultado True False
False True
A nivel de bits también se puede utilizar el operador Not.
Not 13 -14
13 0000000000001101
Not 13 1111111111110010
El binario 1111111111110010 es el número -14
Si nos ponemos en el cuadro Nombre del formulario, vemos que nos aparece una
flecha hacia abajo que nos permite seleccionar un formulario.
Si la base de datos era nueva nos aparecerá únicamente el formulario PruebaMacro
que acabamos de guardar. Seleccionaremos ese formulario.
las macros no pueden realizar tareas como el control de errores, o el acceso a un único
registro con la misma simplicidad que con VBA.
Vamos al panel de Exploracion y seleccionamos la macro Autoexec
Luego hacemos clic en el Boton Office, para luego indicarle la opción Guardar como,
luego Guardar objeto como
Tras esto nos aparece una nueva ventana en la que se nos propone cambiar el nombre de
la Macro.
En el segundo cuadro seleccionamos [Módulo] y presionamos el botón [Aceptar].
Aparecera otra ventana, no cambiamos esos valores y presionamos el botón [Convertir].
Si ahora nos vamos a la ventana de Módulos veremos que aparece un nuevo módulo
llamado Macro convertida - Autoexec.
Despues de hacer doble clic sobre esa macros aparecerá el código correspondiente
Tras esto nos aparecerá una columna vacía a la izquierda. Por pura
cuestión de orden vamos a separar las dos acciones, que se convertirán
en macros independientes.
Para ello ponemos el cursor a la izquierda de la celda donde aparece
CuadroMsj, y pulsamos dos veces en la opción de la cinta Filas
[InsertarFilas].
Ahora nos ponemos a la izquierda de la primera Acción (AbrirFormulario) y escribimos
como nombre para esa macro Autoexec.
En la celda que está a la izquierda de la acción CuadroMsj escribimos como nombre de
la macro algo tan original como Mensaje.
Con esto ya tenemos dos macros diferentes escritas en el mismo archivo de macros.
En el caso anterior teníamos una única macro llamada Autoexec que ejecutaba 2
acciones diferentes.
Ahora, al arrancar el fichero de access se ejecutará la macro Autoexec, que nos abrirá el
formulario, pero no se ejecutará la acción de la macro Mensaje. Puedes comprobarlo
cerrando el fichero access y volviéndolo a abrir.
Para solventar este problema, podemos llamar a la macro Mensaje desde la macro
Autoexec. Lo podemos conseguir mediante la Acción EjecutarMacro.
En la columna Acción, nos ponemos debajo de la celda en la que está escrita la acción
AbrirFormulario y seleccionamos la acción EjecutarMacro.
A continuación seleccionamos como parámetro la macro MacrosInicio.Mensaje.
Guardamos todo y vemos que ahora sí que se muestra el cuadro de mensaje para
indicarnos la apertura del formulario.
¿Cómo afectaría este cambio en las macros al código que se generaría con el conversor
de macros a código VBA?.
La respuesta la podemos obtener de forma inmediata.
Guardamos la macro, si es que no lo habíamos hecho, y desde la ventana macro,
seleccionamos nuestra flamante MacrosInicio y activamos la ficha [Herramientas de
base de datos] Cinta de opciones Macro y dentro de ella el botón [Convertir Macro a
Visual Basic]
Se nos genera un nuevo módulo, esta vez con el nombre Macro convertida-
MacrosInicio.
El código que contiene ese módulo es el siguiente
Option Compare Database
Option Explicit
'------------------------------------------------------------
' MacrosInicio_Autoexec
''------------------------------------------------------------
Function MacrosInicio_Autoexec()
On Error GoTo MacrosInicio_Autoexec_Err
DoCmd.OpenForm "PruebaMacro", acNormal, "", "", , acNormal
DoCmd.RunMacro "MacrosInicio.Mensaje", , ""
MacrosInicio_Autoexec_Exit: Exit Function
MacrosInicio_Autoexec_Err: MsgBox Error$
Resume MacrosInicio_Autoexec_Exit
End Function
'------------------------------------------------------------
' MacrosInicio_Mensaje
'------------------------------------------------------------
Function MacrosInicio_Mensaje()
On Error GoTo MacrosInicio_Mensaje_Err
Beep
MsgBox "Formulario abierto", vbOKOnly, ""
MacrosInicio_Mensaje_Exit: Exit Function
MacrosInicio_Mensaje_Err: MsgBox Error$
Resume MacrosInicio_Mensaje_Exit
End Function
Así como la primera vez nos creó un módulo con una única función, al tener ahora dos
macro en un mismo fichero de macros, nos crea un módulo con dos funciones.
El objeto DoCmd
El objeto DoCmd es un objeto específico de Access, creado para sustituir a las acciones
de las Macros. De hecho sustituye con ventaja a casi todas ellas.
Hasta Access 97, no existía ese objeto, pero sí existía el procedimiento DoCmd. Por
tanto el objeto DoCmdempezó a existir con Access 97.
Los argumentos de la acción serán ahora los argumentos del método de DoCmd.
En la acción AbrirFormulario, poníamos como Nombre del formulario
PruebaMacro, como vista Formulario y como modo de la ventana Normal.
Al método OpenForm, que abre un formulario, le pasamos como nombre del
formulario (FormName) "PruebaMacro", como vista (View) acNormal, y como tipo
de ventana (WindowMode)acNormal.
Las constante acNormalestá definida como una constante enumerada miembro de
Access.AcFormView. Su valor numérico es 0.
Ya comentamos las Constantes Enumeradas en la entrega 12. Este tipo de constantes
van a ir apareciendo con mucha frecuencia conforme vayamos avanzando en VBA.
Como habrás podido ver hay un paralelismo total entre la acción de macro y el método
correspondiente de DoCmd.
Pero no todas las Acciones de las macros están implementadas en los métodos de
DoCmd. Por ejemplo, en la conversión de macros a código VBA hemos visto que
CuadroMsj se sustituye por la función MsgBox.
Otras acciones no implementadas en DoCmdson
Acción Equivalencia en VBA
RunApp Función Shell
RunCode Llamada a la subrutina correspondiente
SendKeys Instrucción SendKeys
SetValue Operador =de asignación
StopAllMacros Instrucciones Stopo End
StopMacro Instrucciones Exit Subo Exit Function
Podemos ver directamente los métodos implementados en la clase DoCmd, mediante la
ventana del Examinador de objetos. Para activar esa ventana pulsaremos la tecla [F2]
desde el editor de código.
Para localizar la clase DoCmd seleccionamos la biblioteca de Access y escribimos el
nombre de la clase que queremos buscar.
Tras pulsar la tecla de búsqueda se nos posicionará en la clase DoCmd.
En la columna de la derecha podremos ver sus métodos.
Se puede comprobar que, al contrario de otras clases, no posee ni propiedades ni
eventos.
En nuestro caso vamos a crear un botón que haga que vayamos al registro siguiente
respecto al registro actual.
Primero debemos decidir qué categoría vamos a utilizar, por lo que seleccionaremos en
la izquierda la [Exploración de registros].
En la ventana de la derecha (acciones) seleccionaremos [Ir al registro siguiente].
Presionamos dos veces las sucesivas teclas [Siguiente] y ponemos como nombre del
botón cmdRegistroSiguiente, y presionamos la tecla [Finalizar].
Si hemos seguido estos pasos, nos mostrará en el formulario un botón con una flecha a
la derecha.
Si abrimos el módulo de clase del formulario veremos que ha escrito el siguiente código
Private Sub cmdRegistroSiguiente_Click()
On Error GoTo Err_cmdRegistroSiguiente_Click
DoCmd.GoToRecord , , acNext
Exit_cmdRegistroSiguiente_Click: Exit Sub
Err_cmdRegistroSiguiente_Click: MsgBox Err.Description
Resume Exit_cmdRegistroSiguiente_Click
End Sub
Como imagen seleccionamos Salir (la puerta con la flecha). Tras esto pasan dos cosas:
El botón se nos muestra en el formulario, con el gráfico de la puerta y la flecha:
Pero, aparte de esta imagen, más o menos estética, ha ocurrido algo muy importante en
el módulo de código asociado al formulario.
Si teniendo seleccionado el botón, abrimos la Hoja de
Propiedades, pulsando el botón [Hoja de Propiedades]
de la Cinta Herramientas, seleccionamos la pestaña
[Eventos] y en ella podemos ver que el evento Al hacer
clic tiene asociado un procedimiento de evento en el
código de clase asociado al formulario.
Para ver el código se debe pulsar en el botón [Ver Código] de la Cinta Herramientas:
MsgBox Err.Description
Resume Salir
End Sub
Lo primero que he hecho ha sido cambiar el nombre del procedimiento gestor del
evento Click del botón. Esto es pasó porque quiero que el botón se llame cmdCerrar.
cmd indica que es un botón y Cerrar indica el procedimiento que ejecuta, Cerrar el
formulario.
Nos volvemos al diseño del formulario cerrando la ventana del editor de código, por
ejemplo pulsando en el aspa superior derecha de la ventana.
Volvemos a abrir la ventana de propiedades, y lo primero que vamos a hacer es cambiar
el nombre del botón, cosa que haremos pulsando en la pestaña [Otras] seleccionando la
propiedad Nombre y escribiendo cmdCerrar.
Salir:
Exit Sub
HayError:
MsgBox Err.Description
Resume Salir
End Sub
Una vez instaladas las referencias a esta biblioteca, ya se puede desde Access trabajar
con DAO.
El siguiente ejemplo muestra un código VBA que emplea DAO para imprimir en la
ventana Inmediato el nombre de la base de datos actual
Dim dbcurr As Database
Set dbCurr = DBEngine.Workspaces(0).Databases(0)
Debug.Print dbCurr.Name
Métodos
Método CreateReplica
Método GetObjectReplicability
Método MakeReplicable Método
SetObjectReplicability Método
Synchronize
Propiedades
Propiedad ActiveConnection
Propiedad ConflictFunction
Propiedad ConflictTables
Propiedad DesignMasterID
Propiedad ReplicaID
Propiedad ReplicaType
Propiedad RetentionPeriod
Propiedad TableName
Propiedad Visibility
For i = 1 To rep.Filters.Count -1
Set flt = rep.Filters.Count – 1
Debug.Print flt.TableName, flt.FilterCriteria, flt.FilterType
Next i
End Sub
Preguntas de Repaso
1. ¿Cómo definiría un bucle para iterar a través de una matriz de 10 enteros?
2. Si desea que el código de un bucle se ejecute al menos una vez ¿Qué bucle
elegiría?
3. Como se podría asegurar que el código de una instrucción If funcione
correctamente?
4. ¿Para que se utiliza la instrucción Exit For?
5. ¿Los comandos como DoCMD también pueden usarse en otras
aplicaciones de Office?
6. ¿A que se refiere el botón de flechas que se muestra en un Menu?
TÉCNICOS Y
ADMINISTRADORES
INDUSTRIALES
FASCÍCULO DE APRENDIZAJE
COMPUTACIÓN E
INFORMÁTICA
Parte III
CÓDIGO: 89001212
Contenido
GENERALIDADES SOBRE LA ADMINISTRACIÓN DE PROYECTOS .................................. 1
LA ADMINISTRACIÓN DE PROYECTOS ....................................................................................... 2
Triángulo del Proyecto .................................................................................................... 2
Definir un proyecto.......................................................................................................... 4
Definir los objetivos del proyecto ..................................................................................... 6
Definir las delimitaciones del proyecto............................................................................. 9
Preparar un plan de administración del ámbito .............................................................. 10
Seguimiento y cierre de proyectos ................................................................................ 10
METODOLOGÍAS EFICACES EN LA ELABORACIÓN DE PROYECTOS ............................................... 11
ASPECTOS ADMINISTRATIVOS DEL PROYECTO ........................................................................ 11
PREGUNTAS DE REPASO ...................................................................................................... 12
INICIANDO MICROSOFT PROJECT 2007 .......................................................................... 13
INICIANDO MICROSOFT PROJECT .......................................................................................... 14
EL AMBIENTE DE TRABAJO DE MICROSOFT PROJECT ............................................................... 14
Barra de título ............................................................................................................... 15
Barra de menú .............................................................................................................. 15
Barra de herramientas .................................................................................................. 15
Barra de herramienta de estándar, Formato .................................................................. 15
Guía de Proyectos ........................................................................................................ 17
La escala temporal........................................................................................................ 18
Las Barras de desplazamiento ...................................................................................... 22
La Tabla de Tareas y el Área de Gráfico. ...................................................................... 22
CREACIÓN Y DEFINICIÓN DE PROYECTOS ................................................................................ 22
Definir las propiedades del archivo para el proyecto ...................................................... 23
Abrir una plantilla o un archivo existente ....................................................................... 24
Utilizar la Guía de Proyectos para iniciar un nuevo proyecto ......................................... 26
Basar el proyecto nuevo en una plantilla ....................................................................... 27
Basar el proyecto nuevo en un archivo existente ........................................................... 28
Basar el proyecto en una Base de datos existente ........................................................ 29
Introducir información clave del proyecto....................................................................... 29
Configurar el calendario del proyecto ............................................................................ 30
Las estadísticas del proyecto ........................................................................................ 34
PREGUNTAS DE REPASO ...................................................................................................... 35
LAS TAREAS ....................................................................................................................... 36
LAS TAREAS ........................................................................................................................ 37
Introducir y Organizar una lista de tareas ...................................................................... 37
Especificar las tareas y sus duraciones ......................................................................... 38
Incorporar una tarea a un proyecto ............................................................................... 38
Especificar una tarea que tiene lugar una vez ............................................................... 38
Especificar una tarea repetitiva ..................................................................................... 39
Especificar una duración ............................................................................................... 40
Crear un Hito ................................................................................................................ 40
Tareas condicionadas por el esfuerzo ........................................................................... 40
Desactivar la especificación tarea condicionada por el esfuerzo .................................... 41
Eliminar una tarea de la Lista de Tareas ....................................................................... 42
Crear un calendario para una tarea ............................................................................... 42
Asignar un calendario a una tarea ................................................................................. 44
Establecer dependencias y delimitaciones de tareas ..................................................... 45
Crear una dependencia entre tareas en un proyecto ..................................................... 46
Establecer tiempo de adelanto o de posposición entre tareas........................................ 47
Asignar una fecha límite para una tarea ........................................................................ 49
Utilizando PERT para obtener estimados de la duración de tareas................................ 49
Establecer una fecha de comienzo o fin específica para una tarea ................................ 51
Identificando tareas críticas........................................................................................... 53
Interrumpir el trabajo en una tarea ................................................................................ 54
PREGUNTAS DE REPASO ...................................................................................................... 55
ESTRUCTURAR LAS TAREAS ............................................................................................ 56
INTRODUCIR Y ORGANIZAR UNA LISTA DE TAREAS ................................................................... 57
Crear una tarea de resumen o fase ............................................................................... 57
Mostrar y ocultar las subtareas ..................................................................................... 58
Modificar una lista de tareas.......................................................................................... 58
Copiar, mover o eliminar la tarea................................................................................... 58
VINCULANDO Y DESVINCULANDO TAREAS UTILIZANDO LA VISTA DE GANTT.................................. 59
Vinculando y desvinculando tareas utilizando la vista de diagrama de red. .................... 60
CÓDIGOS DE ESTRUCTURA DE DESCOMPOSICIÓN DEL TRABAJO ................................................ 60
Mostrar códigos EDT .................................................................................................... 61
Utilizar códigos personalizados EDT ............................................................................. 62
Volver a numerar los códigos de tareas de EDT ............................................................ 64
Códigos de esquema personalizados............................................................................ 64
Crear un código de esquema ........................................................................................ 64
Asignar códigos de esquema a tareas o recursos ......................................................... 65
PROYECTOS Y SUBPROYECTOS ............................................................................................. 66
Insertar subproyectos en un proyecto principal.............................................................. 66
Mostrar u ocultar las tareas de resumen a nivel de proyecto ......................................... 66
PREGUNTAS DE REPASO ...................................................................................................... 67
LOS RECURSOS.................................................................................................................. 68
ESTIMAR LAS NECESIDADES DE RECURSOS............................................................................. 69
Especificar la información de recursos y establecer los períodos laborables.................. 70
Especificar o actualizar los nombres de los recursos en el proyecto .............................. 71
Especificar información básica de los recursos.............................................................. 71
Introducir información para un recurso de trabajo .......................................................... 71
Introducir información para un recurso material ............................................................. 72
Utilizar notas................................................................................................................. 72
Asignar un recurso........................................................................................................ 73
Asignar un único recurso de trabajo a tiempo completo ................................................. 73
Asignar un único recurso de trabajo a tiempo parcial..................................................... 74
Asignar un grupo de varios recursos de trabajo ............................................................. 75
Asignar la tasa de consumo para un recurso material.................................................... 77
Eliminar un recurso ....................................................................................................... 77
Eliminar la asignación de un recurso a una tarea .......................................................... 77
Eliminar un recurso de la Lista de recursos ................................................................... 78
Establecer períodos laborables, días no laborables y vacaciones a los recursos ........... 78
Establecer los períodos laborables y los días no laborables para todos los recursos del
proyecto........................................................................................................................ 79
Asignar un calendario base a un recurso....................................................................... 81
Cambiar los períodos laborables, los días no laborables y las vacaciones para recursos
individuales................................................................................................................... 81
Optimizando y nivelando la asignación de recursos....................................................... 82
PREGUNTAS DE REPASO ...................................................................................................... 83
LOS COSTOS....................................................................................................................... 84
ESTIMAR COSTOS ............................................................................................................... 85
Establecer tasas de pago y tarifas para recursos .......................................................... 85
Introducir tasas de recursos .......................................................................................... 86
Introducir un grupo de tasas por recurso ....................................................................... 86
Introducir varios grupos de tasas por recurso ................................................................ 87
INTRODUCIR UN COSTO POR USO ........................................................................................... 88
Capítulo I: Generalidades sobre la administración
Generalidades sobre la
Administración de Proyectos
En este capítulo trataremos:
La Administración de Proyectos
Metodologías eficaces en la elaboración de proyectos
Aspectos administrativos
SENATI-Computación e Informática 1
Microsoft Office Project 2007
La Administración de Proyectos
Los proyectos son una forma de organizar actividades que no
pueden ser tratadas dentro de los límites operativos normales
de la organización.
Los proyectos se usan a menudo como un medio de lograr el
plan estratégico de la organización, ya esté empleado el equipo
del proyecto por la organización o sea un proveedor de
servicios contratado.
La administración de proyectos es la planeación, organización,
dirección y control de los recursos para lograr un objetivo a
corto plazo.
La administración de proyectos es importante, ya que ofrece
nuevas alternativas de organización. Sirve para aprovechar de
mejor manera los recursos críticos cuando están limitados en
cantidad y/o tiempo de disponibilidad. También ayuda a
realizar acciones concisas y efectivas para obtener el máximo
beneficio.
Coste Ámbito
Tiempo
2 SENATI-Computación e Informáti
Capítulo I: Generalidades sobre la Administración
b. El coste
El coste, no solo es económico, puede ser humano (un
pintor), de equipamiento (un computador), de material
(hojas, tinta,...), de instalaciones (alquiler de un ambiente...).
Estos costes se traducen en presupuesto económico. Para
todos los proyectos, el coste supone una delimitación
restrictiva.
c. El ámbito.
El ámbito o alcance, es el trabajo requerido para
realizarlo y conseguir el objetivo del proyecto.
El ámbito del producto es el conjunto de
características, funciones, especificaciones y
calidad final que tiene dicho producto una vez
terminado. Los documentos (en forma de
manuales) que esquematizan esta información
sobre el producto, se denominan especificaciones
del producto. El ámbito viene definido por las
tareas a realizar.
El ámbito del proyecto está formado por las tareas. Las tareas, a su vez se
dividen en fases. Las tareas, definen el ámbito o alcance del proyecto. Las tareas
se definen en jerarquía. Unas tareas deben comenzar al terminar otras, otras
pueden iniciarse simultáneamente.
Coste Ámbito
Tiempo
SENATI-Computación e Informática 3
Microsoft Office Project 2007
2. Si el presupuesto del proyecto disminuye, puede que sea necesario disponer de más
tiempo ya que no se puede contar con tantos recursos como es necesario, o con
recursos tan especializados. Si no se puede incrementar el tiempo, puede que sea
necesario reducir el alcance del proyecto ya que son menos recursos y no se puede
realizar todo el trabajo previsto en el tiempo del que se dispone.
Coste Ámbito
Tiempo
3. Si el alcance del proyecto aumenta, puede ser necesario más tiempo y/o más
recursos para realizar el trabajo adicional. La variación del alcance puede resultar
perjudicial si el Administrador de proyecto no reconoce y planifica los nu evos
requerimientos.
Coste Ámbito
Coste Ámbito
Tiempo
Tiempo
Definir un proyecto
A continuación se describe los puntos importantes a tener en cuenta para definir un
proyecto.
1. El nombre del proyecto. Debe reunir las siguientes características:
- Debe ser conciso y expresar de la manera más precisa posible qué es lo que
deseamos o es preciso hacer
- Debe ser válido durante todo el ciclo de vida del proyecto
Utilice la siguiente gráfica para definir el nombre del proyecto
4 SENATI-Computación e Informática
2. Resumen ejecutivo del proyecto. El resumen ejecutivo proporciona una visión
general del documento de Definición de Proyecto. Esta sección contiene
explicaciones de alto nivel de los objetivos del proyecto, alcance, supuestos,
riesgos, costos, duración, enfoque y organización.
3. Visión General. Describir los antecedentes y el contexto del proyecto y por qué se
decidió llevar a cabo. Hablar del valor del negocio que será generado por el trabajo
que será realizado. Se debe incluir información suficiente de modo que el resto de
las secciones en la definición del proyecto hagan senti do.
4. Objetivos del proyecto. Los objetivos son declaraciones que describen lo que este
proyecto alcanzará y entregará. Los objetivos deben ser “Metas” Mesurable s,
específicos restringidos por el tiempo, alcanzables y sensatos o realistas. Para ser
específicos y concretos, los objetivos deben estar basados en entregables. La
obtención de un objetivo debe ser evidente a través de la creación de uno o más
entregables.
5. Alcance del Proyecto. El alcance es usado para definir lo que está dentro de las
fronteras del proyecto y lo que está afuera de estas fronteras. Ejemplos de áreas que
pueden ser examinadas son: Datos, Procesos, Aplicaciones, Áreas de negocio.
6. Entregables producidos. Todos los proyectos tienen entregables. En esta sección,
se deben describir los entregables del proyecto. Es necesario proporcionar la
explicación suficiente y detallada para que el lector pueda entender lo que será
producido
7. Organizaciones impactadas o afectadas. Especificar las áreas o grupos afectados
por, o que pueden participar en, el proyecto. Esta sección debe ser extensa pero de
alto nivel. No deben aparecer nombres de individuos, pero las organizaciones que
éstos representan se incluyen aquí.
SENATI-Computación e Informática 5
Microsoft Office Project 2007
a. Objetivo principal
Es el objetivo que pretende resolver el problema principal identificado y que
requiere de la ejecución del proyecto. Es el "para qué" se realiza el proyecto.
Debe formularse en términos de un solo objetivo.
6 SENATI-Computación e Informática
Ejemplo: Proyecto apícola en La Merced
Objetivo principal: Asegurar la producción apícola de la comunidad.
b. Objetivos específicos
Son los objetivos que expresan los productos entregables del proyecto mismo y
que podrán ser comprobados a su finalización. Se relacionan directamente con
las funciones principales que se darán en el proyecto y, también, con lo s
problemas concretos que le dieron origen. Así, en el proyecto apícola, se darán
las funciones de establecimiento de apiarios, manejo
técnico de la producción y comercialización.
Objetivos específicos:
1. Apiarios establecidos y en operación
2. Capacitación técnica de apicultores
3. Organización de la comercialización de la producción
c. Metas
Son las medidas cualitativas y cuantitativas (que pueden medirse en el transcurso
del proyecto) que indican, con claridad, los resultados esperados en términos de
cada objetivo específico.
SENATI-Computación e Informática 7
Microsoft Office Project 2007
d. Actividades principales
Son aquellas líneas de actividad que se van a ejecutar para lograr los resultados y
objetivos propuestos. Para la coherencia del proyecto, debe haber una relación
lógica entre objetivos y actividades. Es decir, por cada objetivo específico,
debemos tener una o más actividades que llevarán a su cumplimiento. No puede
haber objetivo específico que no tenga una actividad de respaldo.
8 SENATI-Computación e Informática
C
a
pítulo I: Generalidades sobre la Administración
Disponibilidad y uso de recursos (incluyendo personas, materiales y
equipamiento): Si algunas de las personas que van a trabajar en el proyecto están
bajo otro cargo, ¿a cargo de quién están? Y, ¿ha aprobado esa persona la
utilización de estos recursos?
Duraciones de las tareas: ¿Están fundamentadas las estimaciones de tareas en
una información sólida o en conjeturas?
Costos del proyecto: ¿Qué importancia tiene el costo en el proyecto? ¿Quién
debe aprobar el presupuesto o aumentarlo si es necesario?
Tiempo disponible: Si se está trabajando teniendo presente una fecha límite
conocida, ¿se puede completar de forma realista todas las tareas con un nivel
aceptable de calidad?
Resultados: ¿Cumple el resultado esperado las expectativas del cliente y de
otros participantes? Si se deben hacer concesiones en el resultado, ¿están de
acuerdo los participantes sobre los aspectos del resultado en que se han de hacer
las concesiones en primer lugar?
Estos son unos pocos ejemplos de los asuntos a considerar antes de empezar un
proyecto complejo. El éxito del proyecto depende en último término de la identificación
de suposiciones y de la realización de planes alternativos de seguridad, así como de
llevar a cabo el proyecto tal como fue planeado
SENATI-Computación e Informática 9
Microsoft Office Project 2007
10 SENATI-Computación e Informática
C
apítulo I: Generalidades sobre la Administración
SENATI-Computación e Informática 11
Microsoft Office Project 2007
Preguntas de Repaso
1. Para que sirve Microsoft Project
2. Qué es un Proyecto
12 SENATI-Computación e Informática
Capítulo
SENATI-Computación e Informática 13
Microsoft Office Project 2007
2. ,
14 SENATI-Computación e Informática
Capítulo II: Iniciando Micr
Barra de título
La barra de titulo muestra el nombre del archivo y los botones para minimizar,
restaurar y cerrar una ventana.
Barra de menú
Muestra el nombre del menú principal de Microsoft Project.
Barra de herramientas
Muestra gráficamente los comandos mas utilizados
La barra de herramienta de formato muestra los comandos para aplicar formato de texto
e identar las tareas
SENATI-Computación e Informática 15
Microsoft Office Project 2007
Herramienta Utilidad
Anula la sangría de la tarea o tareas seleccionadas.
Adjunta nota
16 SENATI-Computación e Informática
C
apítulo II: Iniciando Micr
Guía de Proyectos
Microsoft Office Project proporciona una Guía de proyectos con sencillas instrucciones
que le ayudan a configurar un nuevo proyecto.
Barra de herramienta
Guía de proyectos
SENATI-Computación e Informática 17
Microsoft Office Project 2007
La escala temporal
Algunas vistas, como Diagrama de Gantt o las vistas de uso, tienen una escala temporal
que aparece por encima del diagrama o de la parte de fase temporal de la vista. Puede
mostrar hasta tres niveles de escala temporal en cada vista y dar formato a cada uno de
ellos de manera individual. Por ejemplo, puede especificar las unidades de tiem po, las
etiquetas de fechas, la alineación y otras opciones de formato.
Escala temporal
18 SENATI-Computación e Informática
C
apítulo II: Iniciando Micr
Use las fichas Nivel inferior, Nivel intermedio y Nivel superior del cuadro de
diálogo Escala temporal para especificar las opciones de formato y vista para
estos tres niveles de la escala temporal de la vista actual.
El nivel inferior aparece cuando elige mostrar cualquiera de los tres
niveles disponibles.
El nivel intermedio aparece cuando elige mostrar al menos dos de los
tres niveles disponibles.
El nivel superior aparece cuando elige mostrar todos los niveles
disponibles.
La configuración predeterminada es mostrar dos niveles: el intermedio
y el inferior.
La escala temporal aparece en varias vistas, como Diagrama de Gantt, la vista
Uso de tareas y Gráfico de recursos.
SENATI-Computación e Informática 19
Microsoft Office Project 2007
Tamaño. Reduce o amplía la escala temporal para que pueda ver más o
menos tiempo en el mismo espacio. Escriba un número entero entre 25 y 1000.
Separador de escalas. Muestra líneas horizontales que separan los niveles de
la escala temporal. Desactive la casilla de verificación para ocultar las líneas
horizontales. Esta casilla de verificación está activada de manera
predeterminada.
Utilizar año fiscal. Especifica que se mostrará el año fiscal, en lugar del año de
calendario, para el proyecto. Por ejemplo, si el año fiscal 2009 del proyecto
comienza el 1 de octubre de 2008, las vistas y las copias impresas del proyecto
que muestren la fecha indicarán "Octubre de 2009" para octubre de 2008.
Separadores. Muestra líneas divisoras verticales entre las etiquetas. Desact ive la
casilla de verificación para ocultar las líneas verticales. Esta casilla de
verificación está activada de manera predeterminada.
20 SENATI-Computación e Informática
C
apítulo II: Iniciando Micr
SENATI-Computación e Informática 21
Microsoft Office Project 2007
Tabla de
Área de gráfico
Tareas
22 SENATI-Computación e Informática
Capítulo II: Iniciando Micr osoft Project
Esta fecha se basa en la fecha de comienzo, la duración, los calendarios, las fechas de
tareas predecesoras, las dependencias entre tareas y las delimitaciones de la tarea.), y
puede definir propiedades de archivo específi cas que ayuden a organizar o buscar el
proyecto.
Fecha de comienzo
del proyecto
Fecha de fin
del proyecto
SENATI-Computación e Informática 23
Microsoft Office Microsoft Office Project 2007
Ingresar los
datos generales
del proyecto
Para especificar las propiedades básicas del archivo en el proyecto activo, en el menú
Archivo, haga clic en Propiedades y, a continuación, en la ficha Resumen.
Escriba la información pertinente del proyecto en los cuadros de propiedades del
archivo.
Para agregar propiedades del archivo personalizadas en el proyecto activo, haga clic en
la ficha Personalizado.
Escriba la información pertinente en los cuadros Nombre, Tipo y Valor y, a
continuación, haga clic en Agregar.
24 SENATI-Computación e Informátic
Seleccione la
carpeta donde
Seleccione la guardo su
unidad de disco archivo
Luego de seleccionar el
archivo a recuperar
Hacer clic en el botón Abrir
Seleccione el
archivo
Seleccione la
carpeta
Hacer clic en la lista desplegable
Abrir
De las opciones presentadas elegir
“Abrir como de sólo lectura”
SENATI-Computación e Informática 25
Microsoft Office Project 2007
Guía de proyectos
Seleccionar la fecha
de inicio del
proyecto
26 SENATI-Computación e Informática
Capítulo II: Iniciando Micr osoft Project
Seleccionar “No”
Hacer clic en la
opción En PC …
SENATI-Computación e Informática 27
Microsoft Office Project 2007
Seleccione la
plantilla que
desea utilizar
28 SENATI-Computación e Informática
3. Del cuadro de diálogo presentado seleccionar el archivo
Seleccione la
carpeta
Seleccione “Bases
de datos de Project”
SENATI-Computación e Informática 29
Microsoft Office Project 2007
30 SENATI-Computación e Informática
C
apítulo II: Iniciando Micr osoft Project
Puede modificar estos calendarios para definir los días laborables y las horas de todo el
proyecto, para grupos de recursos, para recursos individuales y para tareas. Estos
calendarios son distintos de la vista Calendario, que muestra la programación del
proyecto en formato de calendario.
SENATI-Computación e Informática 31
Microsoft Office Project 2007
en los que todo el equipo esté trabajando en actividades que no sean del proyecto,
como las reuniones de la empresa o las retiradas de departamentos.
El calendario del proyecto se establece haciendo clic en el calendario en la lista
Calendario del cuadro de diálogo Información del proyecto.
32 SENATI-Computación e Informática
¿Cómo afectan las opciones de configuración de los calendarios a los tiempos de
trabajo?
La configuración de las opciones del calendario en la ficha Calendario del cuadro de
diálogo Opciones (menú Herramientas, comando Opciones) define la programación de las
horas en Project, pero no determina cuándo se puede programar el trabajo.
Únicamente los calendarios pueden determinar estos períodos.
SENATI-Computación e Informática 33
Microsoft Office Project 2007
34 SENATI-Computación e Informática
Capítulo
Las tareas
En este capítulo trataremos:
SENATI-Computación e Informática 35
Las tareas
Una tarea es un trabajo que tiene un comienzo y un fin. La finalización de una tarea es
importante para la finalización de un proyecto. Los proyectos se componen de tareas.
Hito
Es un punto de referencia que marca acontecimientos importantes en un proyecto, y
que se utiliza para controlar el progreso del proyecto. Cualquier tarea con duración cero
se muestra como hito.
Duración
La duración es la cantidad de tiempo necesaria para completar una tarea.
Un valor de duración va seguido de una unidad de tiempo:
Unidad de tiempo
A continuación se describe las unidades de tiempo que puede utilizar
minutos (m) horas (h) días (d) semanas (s) meses (me)
SENATI-Computación e Informática 37
Microsoft Office Project 2007
38 SENATI-Computación e Informática
Capítulo I II: Las Tareas
SENATI-Computación e Informática 39
Microsoft Office Project 2007
Crear un Hito
Un hito es un punto de referencia que marca acontecimientos importantes en un
proyecto, y que se utiliza para controlar el progreso del proyecto. Cualquier tarea con
duración cero se muestra como hito.
40 SENATI-Computación e Informátic
3. Hacer clic en el menú Proyecto, opción
4. Se presenta el siguiente cuadro de diálogo
Active la casilla de
verificación “Condicionada
por el esfuerzo”
SENATI-Computación e Informática 41
Microsoft Office Project 2007
Desactive la casilla de
verificación “Condicionada
por el esfuerzo”
42 SENATI-Computación e Informática
3. En el cuadro de diálogo Crear nuevo calendario base, escriba un nombre para el
nuevo calendario y, a continuación, elija si desea crear un nuevo calendario
base o hacer un calendario en función de una copia de otro calendario.
4. Haga clic en Aceptar para volver al cuadro de diálogo Cambiar calendario
laboral.
5. Para cambiar la semana laboral para el calendario de tareas, haga clic en la ficha
Semanas laborales.
SENATI-Computación e Informática 43
Microsoft Office Project 2007
44 SENATI-Computación e Informática
C II: Las Tareas
apítulo I
Predecesora
Una tarea que se debe comenzar o finalizar antes de que otra se pueda comenzar o
finalizar.
Sucesora
Una tarea que no puede empezar hasta que otra tarea comience o finalice.
SENATI-Computación e Informática 45
Microsoft Office Project 2007
Las tareas se vinculan definiendo una relación entre sus fechas de comienzo y de fin.
Existen cuatro tipos de relaciones entre tareas en Microsoft Project:
46 SENATI-Computación e Informática
Paso a Paso: Desvincular tareas
1. Hacer doble clic en la línea que relaciona las tareas.
Adelanto
Es un solapamiento de tareas que tienen dependencia. Si desea que una tarea comience
cuando su predecesora está a medio finalizar, podrá especificar una relación de fin a
comienzo de un 50 por ciento para la tarea sucesora. El adelanto se introduce como
valor negativo.
SENATI-Computación e Informática 47
Microsoft Office Project 2007
Tiempo de posposición
Representa un retraso entre tareas que tienen dependencia. Si necesita un retraso de dos
días entre el fin de una tarea y el comienzo de otra, especifique una relación de fin a
comienzo y especifique un tiempo de posposición de dos días. El tiempo de
posposición se introduce como valor positivo.
48 SENATI-Computación e Informática
II: Las Tareas
Capítulo I
SENATI-Computación e Informática 49
Microsoft Office Project 2007
Duración esperada. Período total de tiempo de trabajo activo previsto para una tarea,
es decir, el tiempo comprendido entre el comienzo y el fin previstos de una ta rea.) de
las tareas en la programación.
Programación. Medición del tiempo y secuencia de las tareas dentro de un proyecto.
Una programación se compone principalmente de tareas, dependencias entre tareas,
duraciones, delimitaciones e información del proyect o en función del tiempo.)
basándose únicamente en una duración optimista, pesimista o esperada.
Hay dos formas de realizar un análisis PERT:
Use los pesos predeterminados para los cálculos de la duración si cree que el
cálculo de la duración esperada es más probable que la pesimista o la optimista, y
si cree que los dos últimos cálculos son igualmente probables.
Cambie la forma en que Project pondera los cálculos de la duración si cree que las
duraciones optimista, esperada y pesimista tienen otras probabilidades de ocurrir
diferentes de las probabilidades predeterminadas de 1 de 6, 4 de 6 y 1 de 6,
respectivamente.
50 SENATI-Computación e Informática
C II: Las Tareas
apítulo I
SENATI-Computación e Informática 51
Microsoft Office Project 2007
Tipo de Nombre de
delimitación delimitación Descripción
Flexible Lo más tarde Programa la tarea lo más tarde posible, de tal forma
posible (LMTP) que la tarea finaliza antes de que termine el
proyecto y sin retrasar las tareas siguientes. Es la
delimitación predeterminada para aquellas tareas
cuando programa desde la fecha de fin del
proyecto. No especifique ninguna fecha de
comienzo o de fin sin esta delimitación.
Inflexible Debe finalizar el Programa la tarea para que finalice en una fecha
(DFE) especificada. Establece las fechas más próximas,
programadas y últimas de las fechas de fin que ha
especificado y delimita la tarea en la programación.
Inflexible Debe comenzar Programa la tarea para que comience en una fecha
el (DCE) especificada. Establece las fechas más próximas,
programadas y últimas de la fecha de comienzo que
ha especificado y delimita la tarea en la
programación.
52 SENATI-Computación e Informática
II: Las Tareas
Capítulo I
Elegir fecha de
delimitación
Seleccione el tipo
de delimitación
SENATI-Computación e Informática 5
Microsoft Office Project 2007
Preguntas de Repaso
1. Qué es una lista de tareas
54 SENATI-Computación e Informática
Capítulo
SENATI-Computación e Informática 55
Capítulo IV: Estructu rar las tareas
Introducir y Organizar una lista de tareas
Con Microsoft Project, es posible utilizar un esquema para organizar la programación a
medida que se van introduciendo las tareas o después de haber introducido todas las
tareas del proyecto. Cuando se esquematiza la programación del proyecto se simplifica
su organización para que resulte más sencillo crear, administrar y mantener el proyecto.
Herramientas para esquematizar las tareas.
Definiremos algunos conceptos utilizados
Esquema
Una estructura jerárquica para un proyecto que muestra cómo algunas tareas
(subtareas) están subordinadas a otras tareas (tareas resumen). En Microsoft Project, a
las subtareas se les aplica sangría bajo las tareas de resumen.
Subtarea
Una tarea que es parte de una tarea de resumen. La información acerca de la subtarea,
su duración y el costo, queda consolidada dentro de la tarea de resumen al vincular la s
subtareas.
Utilice los botones anular sangría y aplicar sangría para organizar las tareas.
Esquematice las tareas de su proyecto según se muestra en la gráfica.
SENATI-Computación e Informática 57
Microsoft Office Microsoft Office Project 2007
58 SENATI-Computación e Informática
rar las tareas
SENATI-Computación e Informática 59
Microsoft Office Project 2007
60 SENATI-Computación e Informática
rar las tareas
SENATI-Computación e Informática 61
Microsoft Office Project 2007
4. Hacer clic en el botón Aceptar para terminar, se mostrará el campo EDT según
la gráfica mostrada
62 SENATI-Computación e Informática
Capítulo IV: Estructu rar las tareas
SENATI-Computación e Informática 63
Microsoft Office Project 2007
64 SENATI-Computación e Informática
C
apítulo IV: Estructu rar las tareas
SENATI-Computación e Informática 65
Microsoft Office Project 2007
Proyectos y subproyectos
El Proyecto principal. Es un proyecto que contiene otros proyectos (que se
denominan proyectos insertados o subproyectos). También se denomina proyecto
consolidado.
Subproyecto. El Subproyecto es un proyecto insertado en otro proyecto. Los
subproyectos se utilizan como un medio de dividir proyectos complejos en partes má s
fáciles de manejar. También se denominan proyectos insertados.
Archivo consolidado. Un Archivo consolidado es un archivo que contiene uno o más
archivos de proyecto insertados (que también se denominan subproyectos). Los
proyectos insertados pueden conservar los vínculos con sus proyectos originales, de
modo que todos los cambios que se realicen en los proyectos insertados en el archivo
consolidado se reflejarán en el archivo de origen. Los proyectos insertados se pueden
vincular entre sí. Los archivos consolidados también se denominan archivos principales
de proyecto
La tarea de resumen a nivel de proyecto muestra información de resumen acerca de
todo el proyecto en una sola fila con la correspondiente barra de tareas de resumen en
la parte superior de la vista de Diagrama de Gantt. Si va a trabajar con subproyectos
consolidados dentro de un archivo de proyecto principal, cada proyecto tendrá su
propia tarea de resumen a nivel de proyecto que aparecerá en el proyecto principal
como una tarea de resumen para el subproyecto.
Preguntas de Repaso
1. Cómo se muestras y/o oculta las tareas
5. Qué es un subproyecto
66 SENATI-Computación e Informática
Capítulo
Los recursos
En este capítulo trataremos:
SENATI-Computación e Informática 67
: Los recursos
Capítulo V
Una vez que haya introducido la información de los recursos del proyecto puede
emplear los mismos en otros proyectos.
A continuación se describe los conceptos que utilizaremos en el siguiente tema.
Recursos
El personal, los equipos y suministros utilizados para completar las tareas de un
proyecto.
Calendario de recursos
Un calendario que especifica el horario de trabajo y el período no laborable de un
recurso determinado. El calendario de recursos difiere del calendario base en que éste
especifica el horario de trabajo y el período no laborable de más de un recurso. Es
posible utilizar calendarios de recursos para definir excepciones únicas para recursos
particulares, como vacaciones, diferentes días de trabajo o diferentes turnos.
Unidades
El número de unidades o la cantidad de un recurso asignado a una tarea.
Por ejemplo, si tiene una tarea de pintura, podría asignarle dos unidades o do s pintores.
Si tiene un pintor, podría asignarle 5 unidades (la mitad del tiempo de un pintor). El
número máximo de unidades es el número máximo de unidades disponibles del
recurso.
Por ejemplo, si tiene tres pintores trabajando en un proyecto, el número máximo de
unidades es tres: tres pintores trabajando a tiempo total. Por defecto las unidades de los
recursos se muestran en porcentaje.
SENATI-Computación e Informática 69
Microsoft Office Project 2007
Sobreasignación
Es el resultado de asignar a un recurso más tareas de las que puede realizar en el
horario de trabajo disponible. Microsoft Project determina qué recursos están
sobreasignados basándose en los valores del trabajo y la duración de las tareas
asignadas, el número máximo de unidades disponibles para el recurso y el calendario
utilizado por los recursos.
Grupo de recursos
Una serie de recursos que comparten alguna característica, agrupados bajo un nombre
de grupo. Por ejemplo, es posible agrupar recursos por su función y utilizar nombres
como pintores, expositores. También es posible agrupar los recursos por ti po de
contrato, lo que daría Contratados y Fijos.
70 SENATI-Computación e Informática
C : Los recursos
apítulo V
SENATI-Computación e Informática 71
Microsoft Office Project 2007
Utilizar notas
El campo Notas incluye comentarios indicados por el usuario acerca de una tarea, un
recurso o una asignación.
Tipos de datos
Notas (campo de tareas). Agregue el campo Notas a una vista de tareas cuando desee
mostrar notas acerca de una tarea. Cuando se agrega una nota a una tarea, aparece el
indicador de notas en el campo Indicadores, Si ve el texto en el campo Notas o señala
el indicador de notas, aparecerá la primera parte de la nota. Si hace doble clic en el
campo Notas y, después, en la ficha Notas, aparecerá el texto completo con formato en
el cuadro de diálogo Información de la tarea.
Notas (campo de asignación). Agregue el campo Notas a la parte de hoja de las vistas
Uso de tareas o Uso de recursos cuando desee mostrar las notas de una asignación. Si
se agrega una nota a una asignación, el indicador de notas aparecerá en el campo
Indicadores. Si ve el texto en el campo Notas o señala el indicador de notas, aparecerá
el principio de la nota. Si hace doble clic en el campo Notas y, después, en la ficha
Notas, se mostrará el texto completo con formato en el cuadro de diálogo Información
de la asignación.
72 SENATI-Computación e Informática
C : Los recursos
apítulo V
Paso a Paso: Como agregar una nota
1. Del menú Ver, elegir Diagrama Gantt.
2. Seleccione la tarea a la que desea agregarle una nota
Asignar un recurso
La asignación de recursos permite conocer quien se responsabiliza en desarrollar cada
una de las tareas y que recursos materiales u otros utilizará.
SENATI-Computación e Informática 73
Microsoft Office Project 2007
74 SENATI-Computación e Informática
3. Hacer clic en el botón Asignar recursos
Asignar 50% de su
jornada laboral
SENATI-Computación e Informática 75
Microsoft Office Project 2007
Asignar su
jornada laboral
76 SENATI-Computación e Informática
C : Los recursos
apítulo V
Eliminar un recurso
Es posible eliminar un recurso de la hoja de recursos, así mismo eliminar un recurso
asignado a una tarea.
SENATI-Computación e Informática 77
Microsoft Office Project 2007
78 SENATI-Computación e Informática
a
Establecer los períodos laborables y los días no laborables para todos los
recursos del proyecto
Inicialmente, la configuración de calendario de recursos coincide con el calendario de
proyectos.
Después de configurar un tiempo de descanso para un recurso, el calendario de
recursos refleja que este recurso no está disponible para el trabajo del proyecto este
mes en los últimos tres días de la segunda semana o en los primeros cuatro días de la
tercera semana.
Si cambia los tiempos de trabajo de un recurso modificando su calendario de recursos,
y el recurso ya está asignado a una tarea, ésta se vuelve a programar para reflejar los
cambios en los tiempos de trabajo.
SENATI-Computación e Informática 79
Microsoft Office Project 2007
80 SENATI-Computación e Informática
: Los recursos
Capítulo V
SENATI-Computación e Informática 81
Microsoft Office Project 2007
Definir los
días feriados
82 SENATI-Computación e Informática
Capítulo
Los costos
En este capítulo trataremos:
Estimar costos
Establecer tasas de pago y tarifas para recursos
Introducir tasas de recursos
Introducir un grupo de tasas por recurso
Introducir varios grupos de tasas por recurso
Introducir un costo por uso
SENATI-Computación e Informática 83
IV : Los Costos
Estimar Costos
Las consideraciones de costos determinan la rapidez con la que se llevan a cabo la s
tareas y cómo se emplean los recursos (empleados, equipos y suministros). En algunos
casos el éxito del proyecto se mide por la desviación entre los costos finales del
proyecto y los costos previstos.
A continuación se describen algunos conceptos important es.
Tasas
Para el trabajo de cada recurso, podrá introducir una tasa estándar y una tasa para la
hora extra.
Costos fijos
Podrá usar un costo fijo si sabe el costo exacto de una tarea.
SENATI-Computación e Informática 85
Microsoft Office Project 2007
y ésta dura más tiempo del planificado, se incrementa el costo del recurso para esa
tarea.
Un recurso puede tener también un costo único cada vez que se utilice. Por ejemplo, el
alquiler de equipo puede tener un costo de entrega de $50 o un cargo establecido por
cada vez que se utilice, además de un cargo por hora.
86 SENATI-Computación e Informática
IV : Los Costos
Capítulo
1 2
Seleccione la Escriba la
fecha a partir nueva tasa
de donde será estándar y
efectiva la hora extra.
nueva tasa
SENATI-Computación e Informática 87
Microsoft Office Project 2007
1 2
Seleccione la Escriba la
fecha a partir nueva tasa
de donde será estándar y
efectiva la hora extra.
nueva tasa
88 SENATI-Computación e Informática
Capítulo IV : Los Costos
por horas, además de la establecida. Para un recurso material, utilice este campo para
indicar un costo en el que se incurra una vez, independientemente del número de
unidades.
Ejemplo. Supongamos que cada vez que utiliza un servicio de transporte particular hay
una tarifa fija por entrega de 20 nuevos soles. Escriba un valor de costo por uso de 20
nuevos soles. Este cargo se aplicará cada vez que se utilice este servicio.
Supongamos que en el mismo proyecto hay una tarifa fija de almacenamiento de 600
asociadas al uso de ladrillos, un recurso material. Escriba el valor de costo por uso de
600. Este cargo se aplicará sólo una vez.
SENATI-Computación e Informática 89
Microsoft Office Project 2007
1 2
Seleccione la Escriba el
fecha a partir nuevo costo,
de donde será por uso.
efectiva la
nueva tasa
90 SENATI-Computación e Informática
C IV : Los Costos
apítulo
Ingresar costo
fijo
SENATI-Computación e Informática 91
Microsoft Office Project 2007
3
Cambiar de
página para
definir las
demás
tablas
1 2
Seleccione la Escriba el
fecha a partir nuevo costo,
de donde será por uso.
efectiva la
nueva tasa
92 SENATI-Computación e Informática
C IV : Los Costos
apítulo
SENATI-Computación e Informática 93
Microsoft Office Project 2007
Preguntas de Repaso
1. Cómo se estiman los costos
94 SENATI-Computación e Informática
Capítulo
La programación
En este capítulo trataremos:
SENATI-Computación e Informática 95
Microsoft Office Project 2007
4. Para ver las barras de Gantt en una escala temporal mayor o menor hacer clic en
los botones de comando Acercar – Alejar. De la barra de herramienta s
estándar
Si tiene que desplazarse hacia abajo para ver la fecha de fin del proyecto y ha
esquematizado las tareas jerárquicamente, puede ver sólo las tareas de resumen
96 SENATI-Computación e Informática
C
apítulo VII: La p rogramación
de nivel superior. Haga clic en el título del campo de identificación (la celda
situada en el extremo superior izquierdo del Diagrama de Gantt) y elija Ocultar
subtareas.
La escala temporal
La Escala Temporal es el área de la vista del Diagrama de Gantt que muestra las
unidades de tiempo, y las barras que representan gráficamente la asignación de tiempo
de las tareas.
La Escala Temporal puede mostrar hasta tres niveles en cada vista y dar formato a cada
uno de ellos de manera individual. Por ejemplo, puede especificar las unidades de
tiempo, las etiquetas de fechas, la alineación y otras opciones de formato.
También puede personalizar la escala temporal en la vista Calendario, de modo que se
adapte a sus necesidades. Por ejemplo, puede mostrar semanas de 5 o de 7 días,
representaciones reducidas de los meses anteriores y posteriores, o los días de la
semana con el nombre completo.
SENATI-Computación e Informática 97
Microsoft Office Project 2007
En la ficha Escala Temporal seleccione el formato para la escala principal y secundaria entre
unidades, etiqueta, intervalo, alineación, etc.
En la ficha Período no laborable seleccione el formato para las opciones ubicación del
dibujo, color y trama. En la parte inferior de la ficha visualice le selección en el cuadro de
vista previa.
98 SENATI-Computación e Informática
rogramación
Capítulo VII: La p
Aparecen las fechas de comienzo y fin del proyecto, así como el trabajo y el
costo total.
SENATI-Computación e Informática 99
Microsoft Office Project 2007
Por defecto Microsoft Project muestra en el Diagrama de Gantt las tareas no críticas de
color azul y las tareas críticas color rojo.
Es posible filtrar la programación de manera que aparezcan solamente las tareas
críticas. En el menú Proyecto, elija Filtro para y haga clic en Tareas críticas. En la lista
Filtro haga clic en Todas las tareas para mostrar de nuevo todas las tareas.
Una vez filtradas las tareas críticas, puede ordenarlas por duración para que se
muestren de la más larga a la más corta. Ordenar las tareas críticas le ayudará a
observar dónde debe esforzarse para reducir las tareas.
- Vista de tarea
- Vista de recurso
2. Si desea ver más vistas hacer clic en el menú Ver, opción Más vistas
3. Se presentará el siguiente cuadro de diálogo.
Seleccione la vista
que desea visualizar
Luego hacer clic en el
botón APLICAR.
De la lista de opciones
presentadas
Elegir la tabla que desee
utilizar
2. Para utilizar una tabla que no se encuentre en el submenú Tabla, haga clic en
la opción Más tablas
3. Se presenta el siguiente cuadro de diálogo
Elegir si utilizará
filtro de tarea o
recurso.
Elegir uno de los
filtros presentados
Completar los
datos solicitados
Hacer clic en el
botón Aplicar para
terminar.
a. Los operadores Y, O.
Y/O Si el filtro contiene más de una fila de criterios, escriba un operador para
cada fila, es decir Y u O.
Para mostrar o resaltar una tarea o recurso mediante un operador Y deben
cumplirse los criterios de ambas filas.
El efecto de un operador O es que deben cumplirse los criterios de una fila u
otra. Si no se escribe un operador, se utiliza de forma predeterminada el
operador Y.
c. Prueba
Escriba una prueba o haga clic en una de la lista. Project utiliza la prueba para
comparar el valor o valores que escriba en el cuadro Valores con la información
1. Igual a
Muestra o resalta tareas o recursos cuyos contenidos de campo coinciden
exactamente con el valor.
Por ejemplo, si filtra una vista de tareas para mostrar tareas cuyo campo
Nombre del recurso sea igual a "Elena ", Project mostrará todas las tareas a las
que sólo está asignada "Elena". Project no muestra las tareas a las que está
asignada "Elena" y varios recursos más.
2. Diferente de
Muestra o resalta tareas o recursos cuyos contenidos de campo no coinciden
exactamente con el valor.
3. Mayor que
Muestra o resalta tareas o recursos cuyo contenido de campo es mayor que el
valor.
5. Menor que
Muestra o resalta tareas o recursos cuyo contenido de campo es menor que el
valor.
7. Está comprendido en
Muestra o resalta tareas o recursos cuyo contenido de campo están dentro del
intervalo especificado por los dos valores.
8. No está comprendido en
Muestra o resalta tareas o recursos cuyo contenido de campo está fuera del
intervalo especificado por los dos valores.
9. Contiene
Muestra o resalta tareas o recursos cuyo contenido de campo contiene el valor.
Por ejemplo, si filtra por tareas cuyo campo Nombre contiene "desarrollo",
Project muestra "Documentación de desarrollo" así como "Tiene las
especificaciones de revisión del equipo de desarrollo".
10. No contiene
Muestra o resalta tareas o recursos cuyo contenido de campo no contiene el
valor.
12. Valores
Escriba los números, fechas o texto frente a los que se va a probar el contenido
del campo. También puede hacer clic en un campo de la lista para comparar su
contenido con el contenido del campo especificado en la columna Nombre del
campo. Los valores deben coincidir con el tipo de campo frente al que se está n
probando. Por ejemplo, si ha seleccionado Costo para el nombre del campo, no
puede utilizar Fecha de fin en el campo Valores. Cuando se escriben valores
inadecuados en el campo Valores, Project muestra un mensaje al intentar cerrar
el cuadro de diálogo.
Especificación de valores
Si el campo escrito está asociado a varios valores, el campo Valores
proporciona una lista de aquellos valores entre los que elegir. Por ejemplo, si el
campo escrito es Tipo de delimitación, entonces Valor presenta una lista con los
distintos tipos de delimitación. Si se definen códigos de esquema y otros
campos personalizados como Fecha1 o Costo3 con una lista de valores
múltiples, dichas listas personalizadas también están disponibles al filtrar.
Si desea filtrar mediante un carácter reservado para uso como comodín, escriba
un símbolo de intercalación (^) delante del carácter. Por ejemplo, para filtrar
por tareas que incluyan un asterisco en su nombre, escriba ^*.
Autofiltro
Puede establecer un AutoFiltro en muchas vistas para buscar rápidamente un
subconjunto de datos en un campo.
4. Para desactivar los Autofiltros, hacer clic en el menú Proyecto, opción Filtro
para, opción
Para ordenar las tareas con su estructura de esquema de forma que las subtareas
permanezcan con sus tareas de resumen, active la casilla de verificación Conservar la
estructura del esquema.
Para restablecer la ordenación con los valores predeterminados, haga clic en
Restablecer.
Hacer clic en el
grupo que desee
aplicar de la
siguiente lista
4. Para aplicar un grupo que no está en el submenú Agrupar por, hacer clic en la
opción Más grupos. Por ejemplo, para la Hoja de tareas, haga clic en Duración
para ver las tareas agrupadas por duración. Para la Hoja de recursos, haga clic
en Grupo de recursos para ver los recursos agrupados por la información del
campo Grupo.
Elegir si
utilizará
grupos de
tareas o
recursos
Luego elegir
un grupo
Administración de costos
Antes de terminar una programación, debe asegurarse de que los costos de los recursos
y los costos fijos se atienen al presupuesto. Utilice Microsoft Project para analizar si se
ha sobrepasado el presupuesto y también para recortar los costos.
Gráfico de Recursos
La vista Gráfico de recursos muestra un gráfica de barras que representa la cantidad
total de esfuerzo que un recurso empleará en cada una de las tareas del proyecto en un
intervalo específico. Puede mostrar la vista y modificar los intervalos para ver un día
en particular, un mes o un cuatrimestre.
Desplaza para
avanzar o retroceder
sobre el intervalo de
duración del
proyecto.
Hacer clic para
cambiar de recurso
Una línea de base es como una foto fija del plan final y sirve de punto de referencia
para examinar la evolución de lo planificado versus lo realmente ejecutado.
Para guardar un punto de control del progreso real del proyecto, puede conservar un
plan provisional y comparar los cambios realizados en el plan previsto.
Una vez que el proyecto está en marcha, puede escribir información real y compararla
con la línea de base.
Hacer clic en
Establecer plan
provisional
En el cuadro Copiar,
haga clic en el
nombre del plan
provisional actual.
En el cuadro En,
haga clic en un
nombre para el
siguiente plan
provisional, o
especifique un nuevo
nombre.
3. Hacer clic en Proyecto completo para guardar un plan provisional para todo el
proyecto.
4. Haga clic en Tareas seleccionadas para guardar una parte de la programación.
5. Finalmente hacer clic en el botón Aceptar.
Un plan provisional guarda las fechas de comienzo y fin de las tareas en los
campos Comienzo y Fin. Puede mostrar estas fechas de plan provisional
agregando los campos Comienzo y Fin a una tabla.
Redefinir la línea de base borra el plan original y la información que haya introducido
hasta ahora sobre sus fechas y costos.
Obtenga una copia del archivo del proyecto antes de redefinir la línea de base, por si la
necesita para conservar un historia o registro de todos los cambios efectuados.
Preguntas de Repaso
1. Cómo se identifica el camino crítico en un proyecto
Tiempo Dinero
Ámbito
Al ajustar uno de estos elementos se ven afectados los otros dos. Eventos como retrasos
inesperados, desfases de costos y cambios en los recursos pueden provocar problemas
en la programación.
Si mantiene actualizada la información del proyecto, podrá ver siempre el estado más
reciente del proyecto. De esta manera, puede identificar con anticipación problemas
que pueden afectar al éxito del proyecto y utilizar Microsoft Project para encontrar
soluciones.
Al especificar valores reales, la barra superior puede desplazarse para mostrar una
desviación respecto al plan.
3. Hacer clic en el menú Ver, opción Tabla, opción Variación. Para ver los
campos de variación
4. Si es necesario, presione la tecla TAB para ver los campos de variación.
Las tareas que comienzan o finalizan antes de lo previsto liberan recursos que pueden
trabajar en otras tareas de la programación. Microsoft Project utiliza los valores reales
introducidos por el usuario para reprogramar las partes restantes del proyecto.
Paso a Paso: Escribir las fechas reales de comienzo y fin de una tarea
1. Hacer clic en el menú Ver, opción Diagrama de Gantt
2. Hacer clic en el menú Ver, opción Barra de herramientas, opción
Seguimiento
Nota: Al escribir una fecha real de comienzo o de fin de las tareas, la correspondiente
fecha programada de la tarea cambia. Sin embargo, las fechas previstas no se ven
afectadas.
Escriba la duración
real de la tarea.
Escriba el porcentaje
de avance.
Cuando se actualiza el trabajo real que un recurso ha realizado en una tarea, Microsoft
Project calcula automáticamente el trabajo restante deduciendo el trabajo real efectuado
por el recurso del trabajo total que el recurso tiene programado.
El seguimiento de los costos para el proyecto puede ayudarle a determinar dónde deben
realizarse cambios para finalizar a tiempo el proyecto ajustándose al presupuesto, así
como a planear presupuestos para futuros proyectos.
Desactive la casilla
de verificación
“Microsoft Project
siempre calcula los
costos reales.
6. En el campo Costo real, escriba el costo real para la asignación cuyos costos
esté actualizando.
Además de una tasa estándar, en ocasiones los costos de asignación incluyen una
cantidad fija que se carga para un recurso cada vez que el recurso se asigna a una tarea,
como gastos de equipamiento, de instalación, de entrega o de alquiler. Puede
especificar este costo por uso haciendo clic en Hoja de recursos en el menú Ver y, a
continuación, escribiendo un nuevo costo en el campo Costo/Uso para el recurso cuyo
costo por uso desee modificar.
Microsoft Project actualiza automáticamente los costos reales de una tarea a medida
que progresa, según el método de acumulación que haya definido. Primero debe
desactivar la actualización automática de los costos reales para modificar los costos
reales. En el menú Herramientas, haga clic en Opciones y, a continuación, en la ficha
Cálculo.
7. Para especificar los valores reales para un recurso, seleccione un día u otro
período de tiempo en la parte de escala temporal de la vista y, a continuación,
escriba un valor en el campo Costo real para el recurso.
Puede ver los recursos asignados a una tarea y los costos de los recursos relacionados
con esa tarea.
En el menú Ver, haga clic en Uso de tareas.
En el menú Ver, elija Tabla y haga clic en Costo.
Arrastre la barra de división hacia la derecha y compare los valores de los
campos Costo total, Costo previsto, Real y Restante para los recursos asignados
a esa tarea.
Reduci
r el
Trabajo de un recurso
Una vez asignado un recurso a una tarea, puede cambiar los valores del trabajo total
realizado por el recurso en la tarea o cambiar los valores del trabajo de un período de
tiempo determinado en que el recurso trabaja en la tarea. Este ajuste de los valores de
trabajo permite obtener una programación más precisa y detallada.
4. Haga clic en el campo Id para seleccionar toda la fila de la tarea que debe
reasignar.
5. Arrastre la tarea hasta el recurso al que desea reasignar la misma.
4. En el diagrama de barras que aparece debajo, los márgenes de demora para las
tareas a que está asignado el recurso aparecen gráficamente en forma de barras
de margen de demora finas contiguas a las barras de Gantt normales.
5. Para asegurarse de que las tareas sucesoras no resultarán afectadas, no
especifique un tiempo de posposición mayor que el margen de demora
permisible para esa tarea.
6. Para volver a una vista única, en el menú Ventana, haga clic en Qu itar división.
3. En el calendario, seleccione los días que desee cambiar. Para cambiar un día de
la semana en todo el calendario, seleccione el día que aparece en la parte
superior del calendario.
4. Haga clic en Predeterminadas, Período no laborable o Período laborable no
predeterminado.
5. Si en el paso 4 hizo clic en Período laborable no predet erminado, escriba las
horas en las que desea que comience el trabajo en los cuadros Desde y las hora s
en las que desea que termine el trabajo en los cuadros Hasta.
6. Haga clic en Aceptar.
Creando reportes
En este capítulo trataremos:
Elegir la orientación
del papel
Definir los
márgenes del
documento.
Escribir su encabezado
de página
Estos botones
permiten insertar:
fecha, hora, No.
Página, etc.
Escribir su Pie de
página
Estos botones
permiten insertar:
fecha, hora, No.
Página, etc.
Definir el No.
de campos a
imprimir.
Elegir tipo de
informe
Elegir Plantilla
Elegir opción
Elegir tipo de
informe
Hace clic si
desea
modificar su
plantilla
Elegir Plantilla
3. Seleccionar plantilla
4. Hacer clic en el botón de comando Ver para mostrar los resultados
3. Hacer clic en el tipo de informe que desee y después haga clic en Seleccionar.
Preguntas de Repaso
1. Cómo se imprime un proyecto
10
MicroSoft InfoPath
En este capítulo aprenderemos:
Uso de InfoPath
Los usuarios pueden rellenar los formularios basados en las plantillas de formulario
que estén creadas en el modo de diseño. Cuando rellenan un formulario en InfoPath,
los usuarios pueden utilizar funciones familiares que se usan en documentos. Por
ejemplo, pueden comprobar la ortografía del formulario o insertar texto con formato y
gráficos dentro de determinados campos. Dependiendo del diseño de la plantilla de
formulario, los usuarios también podrán combinar los datos de varios formularios en un
único formulario o exportarlos a otros programas. Si una plantilla de formulario está
habilitada para explorador, los usuarios que no tienen InfoPath instalado en sus equipos
pueden rellenar el formulario en un explorador Web o en un dispositivo móvil.
Rellenar formularios
Abrir un formulario
Para abrir un formulario debe hacer lo siguiente:
1. Inicie Infopath, el cual se encuentra dentro de los programas de la suite de
Office 2007. Se muestra lo siguiente:
Corregir formularios
En Microsoft Office InfoPath 2007, puede diseñar una plantilla de formulario que se
pueda abrir tanto en InfoPath como en un explorador Web. Si la plantilla de formulario
se puede abrir mediante un explorador, se denomina plantilla de formulario compatible
con el explorador. También puede diseñar plantillas de formulario que funcionen en
InfoPath 2003 además de Office InfoPath 2007, o convertir formularios creados en
Microsoft Office Word u otros programas en Office InfoPath 2007.
7. Pulse cerrar.
Imagine que tres usuarios (Antonio Bermejo, Jesús Escolar y Cecilia Cornejo) rellenan
formularios basados en su plantilla de formulario. En el campo Motivo profesional,
Antonio escribe Conferencia, Jesús escribe Visita de cliente y Cecilia escribe Viaje
de negocios. Dado que los controles de cuadro de texto que usan un tipo de datos de
texto no admiten la combinación de datos de manera predeterminada, el director que
combine estos formularios de informe de gastos verá únicamente un valor en el campo
Motivo profesional: el valor que ya estaba en el formulario de destino. Por
consiguiente, si el formulario de Cecilia es el formulario de destino, sólo aparecerá en
el formulario combinado el valor escrito por Cecilia para este campo.
Al personalizar la configuración de combinación del campo o grupo al que está
enlazado un control, los usuarios pueden combinar los datos de ese campo o grupo
procedentes de varios formularios.
En este ejemplo, puede personalizar la configuración de combinación del control de
cuadro de texto Motivo profesional de modo que los usuarios puedan combinar los
datos de los formularios que contengan ese campo. Para personalizar aún más la
configuración de combinación, habilite la aparición de un separador entre cada valor
combinado.
Un separador puede ser un espacio, una coma, un signo de punto y coma, una línea
vertical, un salto de línea, un salto de párrafo o un carácter de subrayado. Por ejemplo,
si Antonio escribe Conferencia en el campo Motivo profesional, Jesús escribe Visita
de cliente y Cecilia escribe Viaje de negocios, y habilita la combinación para ese
campo y especifica un separador en forma de coma, los datos combinados resultantes
se mostrarán como Viaje de negocios, Visita de cliente, Conferencia (si el formulario
de Cecilia es el formulario de destino).
Diseñar formularios
Al diseñar una plantilla de formulario de Microsoft Office InfoPath, debe considerar
cómo diseñar, o disponer, los elementos de la plantilla.
En general, las distintas partes de la plantilla de formulario deben organizarse de forma
que los usuarios que la rellenen puedan desplazarse por el formulario de manera lógica.
Además, es conveniente alinear los cuadros de texto, las casillas de verificación y otros
elementos con respecto a las líneas horizontal y vertical de una cuadrícula imaginaria.
Puede usar tablas de diseño para definir los límites de la cuadrícula y ayudar a alinear
los elementos de la plantilla de formulario.
Lo idóneo es diseñar una plantilla de formulario que sea visualmente atractiva y fácil
de usar. Las tablas de diseño pueden ayudarle a lograr ambos objetivos.
El panel de tareas Diseño ofrece una colección de tablas de diseño prediseñadas que
puede usar en la plantilla de formulario para proporcionar una estructura visual.
Una tabla de diseño es similar a cualquier otra tabla, excepto que se utiliza con fines de
diseño en lugar de usarse para presentar datos. Además, a diferencia de otras tablas, la s
tablas de diseño no tienen bordes visibles de forma predeterminada. Al diseñar la
plantilla de formulario en el modo de diseño, los bordes de la tabla de diseño se
representan mediante líneas discontinuas, para que sepa que está trabajando dentro de
la tabla. Sin embargo, cuando los usuarios rellenan un formulario basado en la plantilla,
los bordes no aparecen.
Entre otras finalidades, puede usar las tablas de diseño para organizar los controles,
separar las secciones, crear secciones de encabezado y pie de página, e incluir
logotipos y otros gráficos.
En el siguiente ejemplo, se utiliza una tabla de diseño para organizar cuadros de texto
dentro de una sección de una plantilla de formulario.
Control Descripción
Para diseñar un formulario Abra InfoPath y en la pantalla inicial que se muestra puede
seleccionar un ejemplo predefinido o usar uno en blanco, es decir desde cero:
Una plantilla de formulario puede tener dos tipos de orígenes de datos: un origen de
datos principal único y, opcionalmente, uno o más orígenes de datos secundarios.
Para trabajar con un origen de datos active el panel Tareas de diseño, esto se logra
haciendo clic en el menú Ver, luego en Panel de tareas
A través del panel Tareas de diseño podemos realizar las siguientes acciones:
Haga clic en la opción correspondiente, por ejemplo para trabajar con controles haga
clic en Controles, se mostrarán los controles disponibles para añadir a la plantilla de
formulario.
Si en cambio hacemos clic en Origen de datos del Panel de tareas, podemos ver la lista
de campos y grupos usados en la plantilla de formulario actual
Para dar formato a los datos puede pulsar el botón derecho del ratón sobre un campo y
elegir la opción Propiedades, tal como lo muestra la imagen:
Se activará el cuadro de diálogo Propiedades del grupo o campo, desde el cual podrá
elegir el tipo de datos y aplicar una Validación a través de la ficha Validación
También puede hacerlo a través del campo insertado, pulsando el botón derecho del
ratón sobre el campo y eligiendo Validación de datos…
Desde aquí podrá pulsar el botón Agregar… para incluir una regla de validación para
el campo.
Impresión de formularios
Las plantillas de formulario de Microsoft Office InfoPath 2007 están diseñadas para
visualizarse y rellenarse en un equipo informático. Sin embargo, los usuarios pueden
optar por imprimir una copia de un formulario rellenado por motivos personales o por
otras razones, de modo que debe comprobar que el formulario tiene un aspecto
adecuado después de imprimirlo. Por ejemplo, debe asegurarse de que los controles se
ajustan a los márgenes de la página impresa y de que el texto de la plantilla es legible
después de la impresión.
Puede imprimir la plantilla de formulario para obtener una visión general del modo que
aparecerán los controles y otros objetos en la página impresa o para comprobar la
configuración de impresión, tal como la impresión de encabezados o pies de página.
Si sigue estos pasos, puede que vea determinados elementos en la plantilla de
formulario, tales como botones, que no aparecen realmente cuando el usuario imprime
el formulario.
1. En la barra de herramientas Estándar, haga clic en Imprimir .
2. Para ajustar la configuración de impresión, haga clic en Configurar página en
el menú Archivo y, a continuación, seleccione las opciones que desea en las
fichas Configurar página y Configuración de impresión.
Preguntas de Repaso
1. ¿Qué es InfoPath?
11
Microsoft Publisher
En este capítulo aprenderemos: 2
Iniciar Microsoft Publisher
Identificar los elementos que componen la pantalla
principal
Identificar los elementos que componen una publicación
Crear una Publicación
Personalizar el trabajo
Insertar Imágenes, Autoformas, Gráficos, Objetos de
WordArt
Fundamentos
Microsoft Publisher es el componente de Microsoft Office 200 7 encargado de la
creación de publicaciones de todo tipo, ya sean comerciales o personales. Todas la s
publicaciones pueden ser generadas muy fácilmente por medio de los asistentes que
este programa incluye.
Contiene un gran número de publicaciones predefinidas, como pueden ser tarjetas de
presentación, hojas membretadas, folletos, sobres, etc. En el caso de publicaciones
comerciales, el software permite crear y mantener la imagen corporativa permitiendo
basar todas las publicaciones de la empresa en diseños maestros. De esta forma todos
los diferentes documentos de la empresa ya sean sobres, membretes, etiquetas, tarjetas,
etc. tendrán el mismo diseño en lo que se refiere a colores, logotipos y apariencia
general.
a)
c)
b)
d)
INICIAR UN ASISTENTE
Para iniciar estos asistentes simplemente debemos seleccionar del panel de tareas el
tipo de publicación que deseamos realizar. Para nuestro ejemplo aremos clic en la
primera opción del panel “Publicaciones para impresión”. Con lo que se desplegara una
lista con todos los asistentes disponibles
Personalizando el Trabajo
Sobre el panel de tareas se dispondrá de ciertos controles mediante los cuales podremos
personalizar el diseño de acuerdo a nuestras necesidades particulares. Estas opciones se
mantendrán independientemente al tipo de asistente que hayamos elegido al comienzo
de nuestro trabajo, por lo tanto lo que se explique en este asistente podrá ser aplicado
con el resto de ellos.
Las opciones disponibles son:
1) Opciones de membrete:
Como se puede apreciar en la figura se puede indicar al asistente si se desea o
no modificar la plantilla, haciendo clic en el botón “Cambiar plantilla”
2) Combinación de colores:
Los diseños están basados en una cierta combinación de colores la cual define
que color se utilizará para cada parte del diseño, esto es, texto, recuadros,
fondos, etc. Esta combinación puede ser cambiada por cualquiera de nuestro
gusto.
Aquí podremos definir el color para cada parte de nuestro trabajo, cada color
posee una lista desplegable que al se activada presenta una paleta de colores de
la cual poder elegir. Esta paleta es la misma que utiliza Word por ejemplo, así
que no le será difícil interpretarla.
Más opciones de colores: Preste atención a los cuadros de paletas, verá que
poseen una opción “Más colores….”, esta da acceso a la paleta de colores
extendida de Office.
También se dispone de la
opción de efectos de relleno
mediante la cual se presenta el
siguiente cuadro de diálogo
En definitiva con estas
herramientas se puede lograr
ajustar los colores a gusto y
sin mucho trabajo.
Una vez lograda la
combinación adecuada usted
podrá guardar esta
combinación para ser utilizada
más adelante en futuros
trabajos, preste atención al
cuadro de diábolo
personalizar, verá que posee
un botón marcado como
“Guardar combinación..”
3) Combinación de fuentes
Por último disponemos de la opción “Combinación de fuentes”, la cual se
refiere a los tipos de letras que serán aplicados a cada sección del documento
Cuadros de texto
Existen varios tipos de objetos que Publisher, o en realidad los asistentes,
utilizan para “armar” las diferentes áreas de nuestra publicación. A diferencia
de Microsoft Word, que la mayoría del contenido del documento es colocado
sobre la hoja dividiéndolos en párrafos, en Publisher las diferentes partes de la
publicación suelen estar “encapsuladas” en lo que se llaman “cuadros de
textos”.
Por lo tanto en Publisher, a diferencia de las demás aplicaciones de Office, el
texto no se incorpora de manera directa (haciendo clic y escribiendo), sino que
cada frase o párrafo se debe colocar dentro de un “contenedor”, denominados
cuadros de texto. También se puede agregar texto dentro de una autoforma o
utilizando la herramienta de WordArt.
Un cuadro de texto se podría interpretar como si se tratará de una etiqueta
autoadhesiva que se pega en el lugar deseado y luego se escribe en ella.
Veamos el caso de nuestra hoja membretada
Diferentes Cuadros
de texto para cada
sección de la
Publicación
a)
b
a
El cuadro se divide en seis fichas (a) mediante las cuales se podrán ajustar sus
distintas características.
Colores y líneas (b) coloca bordes y sombras al objeto. En este cuadro las
opciones son:
Relleno (c) permite elegir un color para el fondo del cuadro de texto,
también se puede dar un grado de transparencia a este color (d).
Línea (e) coloca un marco al objeto con el estilo de línea, color y grosor
indicados. Se puede indicar en que laterales se pondrán bordes (f).
Predeterminado (g), si activa este cuadro todos los nuevos objetos del
tipo cuadro de texto serán creados con los bordes y sombras indicados.
Tamaño y Diseño
Las fichas Tamaño y diseño permiten variar el tamaño del cuadro de texto y su
posición dentro de la publicación respectivamente. Estos procedimientos son
más sencillos arrastrando los controles del objeto directamente sobre la
publicación.
Publisher ajusta de manera automática el tamaño del texto reduciéndolo para
que quepa dentro del cuadro de texto, si es necesario puede deshabilitar esta
funcionalidad desde la ficha Cuadro de texto (a). Lo cual permitirá variar el
tamaño del cuadro de texto independientemente del contenido del mismo.
a
d
a b
g
e
Ficha Texturas:
Se muestran las
diferentes texturas
disponibles
Ficha Tramas:
Permite colorear el objeto con una de las tramas disponibles (a), se puede
especificar el color de primer y segundo plano de la trama (b).
Autoformas y dibujos
Existe la posibilidad de incorporar ciertos dibujos a las publicaciones,
estos dibujos se encuentran disponibles en la barra de objetos. Existen
algunos dibujos simples como elipses, rectángulos y líneas. Y otros más
complejos que se agrupan en la herramienta autoformas.
Para hacer las primeras pruebas con estos objetos utilizaremos la
herramienta rectángulo. Sobre la barra de objetos haga clic sobre la
herramienta rectángulo, luego lleve el puntero dentro de la hoja de trabajo
y por último haga un clic y sin soltar el botón del Mouse desplace el
puntero hasta darle el tamaño deseado al nuevo objeto.
a b
Efectos disponibles
En la mayoría de los casos Publisher permite agregarle a los objetos de las
publicaciones efectos de sombras (a) y efectos de 3D (b). Estos efectos
están disponibles en la barra de herramientas Formato
En donde:
a. Quita el efecto de sombra.
b. Diferentes modelos de sombras disponibles para el objeto
seleccionado.
c. Configura manualmente los valores de la sombra (color de
sombra, distancia al objeto, etc)
Efectos 3D
Un efecto 3D proporciona al objeto la sensación de tercera dimensión
dándole profundidad y perspectiva a la publicación.
Para aplicar este efecto seleccione un objeto, haga clic en el botón 3D de
la barra de herramientas Formato, con lo que se presentará un el siguiente
submenú
En donde:
a. Quita el efecto de 3D.
b. Grupo de diferentes modelos de efectos 3D disponibles para el
objeto seleccionado.
c d
a e
Escriba el texto en cuestión (a), defina el tipo de letra (b), el tamaño (c) y
si deberá tener efecto Negrita y/o Cursiva (d) por último acepte (e).
El texto deberá aparecer en la publicación con el efecto indicado.
Barra de herramientas WordArt:
A partir de este punto es posible realizar modificaciones sobre el objeto
de WordArt simplemente haciendo clic sobre el objeto con lo que se
presentará la barra de herramientas de WordArt.
j
b
c
d e f g h i
En donde:
a. Puede agregar otro objeto WordArt directamente desde esta barra.
b. Modifica el texto del objeto seleccionado, se puede cambiar
también el tamaño y los efectos de negrita y cursiva.
c. Permite especificar un modelo de efecto diferente al actual.
d. Formato de WordArt, accede a las propiedades del objeto donde
podrá realizar modificaciones sobre el color de relleno y contorno.
e. Forma de WordArt, modifica la curvatura del objeto sin realizar
cambios en el tipo de efecto. Presenta el siguiente submenú:
Incorporando Imágenes
Publisher permite como todas las aplicaciones de Office hacer uso de la galería
de imágenes prediseñadas de este paquete de software.
Las imágenes pueden ser incorporadas a través de la misma barra de
herramientas objetos, mediante la opción Insertar imágenes prediseñadas (a),
insertar imagen (b) o desde un escáner o cámara (c).
c b
Imágenes prediseñadas
Al hacer clic sobre el botón de imágenes prediseñadas (a) se activará el panel de
tareas en la modalidad imágenes prediseñadas, el cual permite acceder a la
biblioteca de imágenes de Office.
Este panel también se puede activar haciendo clic en el menú Insertar, luego en
Imagen y por último en Imágenes prediseñadas. Se presentará el siguiente
panel:
f
a
sobre una imagen aparece una lista desplegable (f) que presenta un menú con
opciones (e) desde donde se podrá, entre otras cosas, pegar la imagen en la
diapositiva o copiarla para tenerla disponible en el panel de portapapeles.
Preguntas de Repaso
1. ¿Qué es una Publicación?
3. ¿Cuáles son las alternativas con las que el usuario cuenta para aplicar formatos de
colores y fuente?
10. Los objetos en general tienen algunos efectos especiales, ¿Cuáles son?
Panel de Tareas
Barra de Herramientas
Area de Trabajo
Barra de Objetos
3. Cree una publicación y aplique los modelos conocidos. Guárdelo con el nombre
“Apague las Luces”
MicroSoft Visio
12
En este capítulo aprenderemos:
Diagramas de flujo
Organigramas
Los jefes de proyecto pueden utilizar organigramas para mostrar las estructuras
de los equipos y la división de las tareas al desarrollar las programaciones de
los proyectos.
Los jefes de departamento pueden utilizar organigramas para visualizar cómo
Reestructurar sus departamentos o valorar las necesidades de personal.
Los profesionales de recursos humanos pueden crear organigramas y publicarlos en la
intranet de una empresa.
Diagramas de bloques
Diseños de oficina
Mapas de direcciones
Los agentes de tráfico pueden utilizar los mapas de direcciones para evaluar los
patrones del tráfico.
Los diseñadores de eventos pueden utilizar los mapas de direcciones para
proporcionar direcciones a los empleados en los eventos de una compañía.
Los responsables de ventas pueden utilizar los mapas de direcciones para proporcionar
direcciones a los clientes en las ferias comerciales.
Calendarios
Escalas de tiempo
Los jefes de proyecto pueden utilizar las escalas de tiempo para representar la
duración y los hitos de los proyectos.
Los supervisores pueden emplear escalas de tiempo para asegurarse de que los
miembros del equipo conozcan sus plazos límites.
Los especialistas en documentación pueden emplear escalas de tiempo para realizar un
seguimiento de las fechas de finalización del proceso.
Los jefes de proyecto pueden utilizar los diagramas de lluvia de ideas en las
reuniones del equipo para analizar y resolver los problemas o para identificar
nuevas ideas.
Los escritores pueden organizar visualmente sus ideas mediante los diagramas
de lluvia de ideas.
Los miembros del equipo de proyecto pueden utilizar los diagramas de lluvia de ideas
para generar elementos de acción.
Diagramas Web
Planos de planta
Planos de emplazamiento
Diagramas de software
mobiliario para planos de plantas de oficinas. ¿Le parece exagerado? Pues hay
muchísimas más.
Además, las formas de Visio no se limitan a permanecer quietas y ser bonitas. También
tienen un comportamiento interactivo, es decir, cuando se trabaja con ellas, reaccionan
de una determinada manera
Hay dos tipos de formas en Visio: 1D y 2D
Cuando trabaja con formas de Visio, puede cambiarlas de tamaño, girarlas,
desplazarlas, darles formato, etc.
Pero el comportamiento que muestren cuando realice estas acciones dependerá del tipo
de forma al que pertenezcan. Hay dos tipos de formas en Visio: formas
unidimensionales (formas 1D) y formas bidimensionales (formas 2D).
Cada tipo de forma se comporta de una determinada manera. Una vez que sepa a qué
tipo pertenece la forma, podrá trabajar con ella de manera satisfactoria.
Las formas 1D son formas que, cuando se seleccionan, tienen un punto inicial y un
punto final . Las formas 1D son normalmente líneas. Aquí se muestran algunos
ejemplos.
¿Cómo se comportan las formas 1D cuando trabaja con ellas? Si mueve el punto inicial
o el punto final, sólo cambia una dimensión: la longitud.
Pero el comportamiento más eficaz de las formas 1D es su capacidad para conectar
otras dos formas. Por ejemplo, en un diagrama de procesos de empresa, puede conectar
dos departamentos con una línea o una flecha. En el ejercicio práctico que sigue a
continuación le mostraremos más detalles acerca de la conexión.
Probablemente estará pensando, "Un momento, a mí estas líneas no me parecen
formas". Es cierto, la palabra "forma" suele utilizarse para objetos con un contorno o
un borde diferenciado. Pero Visio considera que estas líneas son formas y las denomina
formas, por lo que, si se acostumbra a ello ahora, evitará confusiones más adelante.
Una forma 2D es una forma que, cuando se selecciona, no tiene un punto inicial ni un
punto final, sino ocho controladores de selección . Las formas que se muestran aquí son
todas ellas bidimensionales (2D).
¿Cómo se comportan las formas 2D? Cuando hace clic y arrastra un controlador de
selección situado en una esquina, puede cambiar dos dimensiones: la longitud y el
ancho. Pero no puede utilizar formas 2D para conectar otras formas. Sólo las formas
1D tienen esta característica.
Las formas 2D se utilizan normalmente para representar algo: puede ser un concepto
general, como un paso en un diagrama de flujo, o un objeto específico, como una
fábrica o un equipo.
Como el equipo portátil y el bloque que se muestran aquí, el dibujo de algunas formas
2D tiene un aspecto tridimensional. Aún así, Visio las considera 2D. La razón son los
ocho controladores de selección.
No se deje engañar. La forma superior parece ser bidimensional (2D), pero es
unidimensional (1D). Y la forma inferior es bidimensional (2D), no unidimensional
(1D).
A primera vista, algunas formas parecen bidimensionales (2D) pero son realmente
unidimensionales (1D), y viceversa. Para evitar confusiones, seleccione siempre la
forma y Visio le indicará cuál es su tipo.
Por ejemplo, la forma de flecha de la parte superior de esta ilustración parece que es
bidimensional porque tiene espesor. Pero si la selecciona, vería un punto inicial y un
punto final, por lo que es unidimensional (1D) con toda seguridad. En lugar de
utilizarse para representar un concepto o un objeto, esta flecha se usa para conectar
otras formas.
Por una parte, la forma de curva parece ser unidimensional (1D). Después de todo, su
aspecto es el de una línea. Pero si la selecciona, verá los ocho controladores de
selección , lo que indica que es bidimensional (2D). Por lo tanto, esta curva re presenta
el concepto de una curva de datos en forma de campana. Por otra parte, esta línea no
puede conectar otras formas.
Para muchas personas, "1D" describe una forma con una dimensión y "2D" describe
una forma con dos dimensiones. Estas son definiciones familiares de 1D y 2D. Sin
embargo, como puede ver en estos ejemplos, las definiciones de Visio dependen del
comportamiento de las formas, no de su aspecto.
Formas con un comportamiento especial
Si arrastra un controlador en una forma Puerta, puede abrirla y cerrarla. En este caso, es
evidente que los muebles están demasiado cerca de la puerta
Todas las formas de Visio son unidimensionales (1D) o bidimensionales (2D),
dependiendo de cómo se comporten. Sin embargo, algunas formas tienen algún otro
comportamiento que es exclusivo de ellas y que no depende de que sean
unidimensionales (1D) o bidimensionales (2D). Esta característica hace que esta s
formas sean muy útiles y prácticas.
Por ejemplo, algunas formas tienen controladores amarillos que permiten al usuario
interactuar con ellas. En esta ilustración, la forma Puerta tiene un controlador que
permite girarla para abrirla y cerrarla. ¿Será un obstáculo la mesa que está próxima?
Parece que no. Lo mejor será buscar una mesa más pequeña o realizar otros ajustes con
el mobiliario para que este problema no se presente en la realidad.
Los controladores no son el único signo de que una forma tenga un comportamiento
interactivo especial. Pueden encontrarse algunos comportamientos especiales haciendo
clic con el botón secundario del mouse (ratón) en ella.
Cualquier cosa es una forma
Cuando trabaje con Visio, es probable que desee agregar texto, fotografías o imágenes.
Aunque no se trata de formas creadas por Visio, no obstante, en Visio todos estos
elementos se consideran formas. Si escribe texto en una parte vacía de la página, ese
texto será una forma 2D y tendrá ocho controladores cuando la seleccione. Si
selecciona una imagen importada, también tendrá dichos controladores.
Seamos realistas. Para Visio, cualquier elemento de la página es una forma. Cualquiera.
Cómo obtener formas
Hay seis maneras de obtener formas
En Visio, todo... es una forma. Y hay cientos de formas de Visio entre la s que elegir;
más de las que pueda memorizar. Por lo tanto, conviene saber cómo se pueden
encontrar cuando se necesitan.
Las maneras de obtener formas no son tan numerosas como las propias formas, pero
hay muchas. Es por ello que formas diferentes son idóneas para finalidades diferentes.
Eche un vistazo y vea cuáles le gustan.
Las formas se encuentran dentro de las galerías de símbolos y estas están contenidas en
la ventana Formas
Antes de hablar sobre cómo se obtienen formas, es necesario asegurarse de que se
entienden tres términos:
Ventana Formas: esta ventana contiene galerías de símbolos.
Galerías de símbolos: las galerías de símbolos no son formas. Es importante
saberlo. Las galerías de símbolos contienen formas.
Formas: En Visio, casi todas las cosas son formas. Pero las formas no son
galerías de símbolos. Las galerías de símbolos contienen formas.
La ilustración muestra la galería de símbolos Formas para organigramas y sus formas.
Observe las otras dos galerías: Bordes y títulos y Fondos. Para ver las formas de
cualquiera de estas galerías de símbolos, sólo tiene que hacer clic en su nombre
Obtener formas con plantillas
Una manera de obtener formas es elegir una plantilla. Una plantilla es una de las
opciones de tipo de dibujo que ve cuando inicia Visio. Cuando elige una plantilla, las
galerías de símbolos y las formas de esa plantilla aparecerán en la ventana Formas,
listas para trabajar con ellas.
La ventaja de usar una plantilla es que proporciona una gran cantidad de formas
organizadas para una finalidad específica y relacionadas entre sí. En este ejemplo, la s
formas son específicas de los diagramas de flujo. Si elige otra plantilla, obtendrá
formas diseñadas y organizadas para la finalidad de esa plantilla.
Obtener formas buscando
Si no puede encontrar la forma que necesita en Visio, siempre puede dibujar su propia
forma. Esta forma puede ser simple o compleja, desde una línea ondulada a un equipo
de oficina personalizado.
El método para dibujar sus propias formas queda fuera del alcance de este curso. La
punta del iceberg es la barra de herramientas Dibujo, que se muestra aquí. Permite
crear formas partiendo de cero mediante el uso de herramientas sencillas.
Para obtener más información sobre cómo se dibujan formas propias, vea los recursos
adicionales que se enumeran en la Tarjeta de referencia rápida
Insertar imágenes
Suponga que le gustaría insertar una fotografía en un diagrama. Para ello, en el menú
Insertar, debe elegir Imagen y, a continuación, hacer clic en Desde archivo. Este
proceso es similar al de otros programas de Office con los que puede estar
familiarizado.
Cuando inserta una imagen, Visio la convierte automáticamente en una forma 2D y
coloca en ella ocho controladores.
Las formas creadas mediante la inserción de imágenes no son tan inteligentes como la s
procedentes de galerías de símbolos. En lo que respecta al comportamiento interactivo,
no son mucho más que un cuadrado en la página. Sin embargo, son formas, lo que
significa que puede conectarlas con formas 1D, cambiar su tamaño, colocarlas, etc.
Nota Cuando inserta una imagen del panel de tareas Imágenes prediseñadas, Visio la
convierte también en una forma 2D
Introducción a las formas
Uno de los principales motivos por los que se utilizan diagramas es porque para
comunicar información son mucho más eficaces que una gran cantidad de texto. Sin
embargo, algunos diagramas no lo son porque sus formas tienen una posición poco
cuidada.
Eche un vistazo a estos ejemplos. El diagrama situado a la derecha es obviamente más
fácil de entender porque está mejor organizado. Se siguen fácilmente las conexiones de
las formas. El diagrama situado a la izquierda parece aleatorio y resulta difícil de
seguir.
Al colocar las formas con destreza y cuidado en una página, los diagramas no sólo
tendrán una apariencia eficaz sino que también comunicarán claramente la información
que contienen.
Usar flechas de autoconexión
Cuando está activada la característica Autoconexión, puede usar las flechas de color
azul para agregar una forma ordenadamente a la página y conectarla
Desea que las formas estén cuidadosamente colocadas. Pero, además, en la mayoría de
los casos, también desea conectarlas con otras formas. Para alcanzar ambos objetivos,
puede utilizar las flechas de autoconexión. ¿Cómo funcionan?
debidamente sin tener que recurrir a maniobras complicadas. Las formas se colocan en
el lugar donde usted desee y se mantienen en ese lugar, a menos que las mueva
Seguir las guías
Las guías son incluso más visibles que las líneas de la cuadrícula. Las guías son líneas
verticales u horizontales que se pueden colocar en una pági na. Se arrastran desde una
regla y, de manera predeterminada, aparecen en color azul, tal y como puede observar
en la ilustración.
Las guías ayudan a organizar los diagramas según su contenido. Por ejemplo, si sabe
que un diagrama de flujo muestra tres procesos, podrá espaciar de manera uniforme
tres guías verticales en la página. A continuación, podrá colocar las formas
verticalmente a lo largo de cada una de las guías. (Las guías no aparecen en los
diagramas impresos. Son su secreto.)
Sugerencia Las guías también son útiles para marcar los márgenes de una página
Abrir la ventana Tamaño y posición
La cuadrícula, las reglas y las guías son fabulosas cuando se crea un diagrama de
manera planificada y organizada. Sin embargo, a veces, preferirá trabajar libre y
espontáneamente, dejando la organización para el final. Eso es totalmente
comprensible y Visio permite hacerlo.
Cuando trabaja a mano alzada o cuando ya ha terminado, podrá ordenar el diagrama
mediante el comando Alinear formar en el menú Forma.
Este comando permite alinear las formas de manera sencilla. Seleccione la forma con la
que las demás formas deben alinearse y, a continuación, haga clic en la opción de
alineación que desee. En el ejemplo que se muestra aquí, un botón de alineación
vertical se encargó de alinear estas formas. Es como un perro pastor que arrea las
ovejas.
Puede usar la cuadrícula, las reglas y las guías para colocar las formas una por una. ¿Y
si el diagrama tiene docenas de formas? Gracias al comando Distribuir formas en el
menú Forma, llegará a casa antes de la cena.
Tiene las formas deseadas en la página pero una de ella s se encuentra demasiado cerca
de otra y una tercera está demasiado alejada. Lo ideal es que haya el mismo espacio
entre todas las formas. Podrá conseguirlo en tres pasos sin tener que recurrir a
complicadas maniobras con el mouse (ratón).
Simplemente, seleccione tres o más formas, haga clic en el comando y elija una opción
de distribución. En este ejemplo, se ha optado por una distribución horizontal
Girar formas
A veces, una forma tiene la posición correcta, tiene el tamaño adecuado y se encuentra
debidamente espaciada pero, aún así, necesita algún que otro ajuste.
Por ejemplo, quizás desee colocar una forma de estallido en un ángulo para llamar la
atención. O bien, quizás desee girar una flecha de modo que apunte al lugar debido, o
bien, girar una mesa en un diseño de oficinas para aprovechar más la luz natural que
entra por una ventana.
Para girar formas 2D, utilice el controlador de rotación . Simplemente haga clic y
arrastre ese controlador hasta la nueva posición.
Para girar formas 1D, haga clic, arrastre el punto inicial o el punto final y mueva la
forma hasta la posición deseada.
Agregar y editar texto
Los diagramas de Visio incluyen mucho espacio para texto. El texto se utiliza para
etiquetar las formas de modo que tengan un significado para los usuarios. También se
pueden etiquetar los conectores, es decir, las líneas entre las formas.
Sin embargo, el texto también es importante para asignar al diagrama un título en la
parte superior de la página. Y, a veces, se necesita simplemente un texto independiente
de cualquier forma. .
Hacer clic para agregar texto
La mayoría de las formas simplemente requieren una etiqueta de texto rápida. Hay
varias maneras de agregar texto a formas, pero la que se muestra en la imagen es
infalible:
¿Cómo hay que editar texto que ya se encuentra en una forma? Para editarlo, hay que
proceder de manera ligeramente diferente:
Lo mismo para la revisión: haga clic y escriba el texto que desee agre gar, o bien, haga
doble clic una forma para editar el texto. Es muy sencillo. ¿Y si necesita editar el texto
de una forma que es parte de un grupo? Podría recurrir a los mismos métodos si bien no
siempre funcionarán debido a la configuración de algunos gru pos.
Éste es un buen método para agregar y editar el texto de formas agrupadas:
¿Por qué se debe volver a la Herramienta Puntero? Quizás no se haya fijado, pero la
Herramienta Puntero de Visio se utiliza aproximadamente un 90% del tiempo. Le
permite realizar una tarea muy importante: seleccionar. Sin embargo, si se mantiene
activa la Herramienta Texto, no se puede seleccionar nada. Sólo se puede escribir texto.
Es fácil de olvidar. De hecho, muchas personas escriben desesperadamente a Microsoft
preguntando cómo hay que proceder para que Visio deje de agregar texto. Es fácil:
haciendo clic en la Herramienta Puntero en la barra de herramientas Estándar y todo
estará solucionado.
Texto especial
El texto que hemos mostrado es texto que usted mismo escribe. Es el tipo de texto más
común que va a utilizar y en el que se centra este curso. En lo que este curso no hace
hincapié (al menos, en el resto de las páginas) es en otro tipo de texto que Visio
"escribe" para usted.
Ese tipo de texto especial se denomina campo. Un campo es un área de texto especial
que indica a Visio que muestre automáticamente la correspondiente información. Por
ejemplo, puede insertar un campo de fecha en una forma y Visio mostrará
automáticamente la fecha actual sin que usted tenga que escribirla.
Los campos pueden resultar especialmente prácticos cuando se utilizan datos con el
diagrama. Por ejemplo, un organigrama puede tener asociados algunos datos como
nombres de empleados, departamentos, números de teléfono, etc. Si se utilizan campos, las
formas podrán mostrar automáticamente estos datos sin que haya que escribirlos en
cada una de las formas, lo cual es bastante cómodo.
Procedimiento para vincular datos a los diagramas
Visio mejora el valor del contenido visual, ya que hace que el diagrama incluya más
información. Es una interfaz visual para ver y realizar un seguimiento de los datos
acerca de su equipamiento.
Además, se trata de información actualizada. Se puede actualizar el diagrama en
cualquier momento para observar los cambios de los datos. Por tal motivo, el diagrama
es una herramienta activa y útil para realizar el seguimiento de los datos de su empresa
Ahora bien, ¿cómo se vinculan los datos a los diagramas? El procedimiento está
compuesto por tres pasos diferentes: el primero consi ste en colocar las formas en la
página; el segundo, en conectarse al origen de datos y el tercero, en arrastrar los datos
hacia cada forma.
Paso 1: Colocar las formas en la página. Esto podría parecer evidente, pero el proceso
de importación comentado en este curso funciona mejor si ya se han colocado formas
en la página. Los diagramas que se muestran aquí son buenos ejemplos. El diagrama de
flujo, el diagrama de red o el organigrama (cualquier tipo de diagrama) pueden
asociarse a datos. Si ya ha realizado un diagrama, ábralo y habrá avanzado un tercio del
proceso. Asimismo, siempre podrá agregar más formas más adelante. No es necesario
que todas las formas estén en la página desde el comienzo.
Paso 2: Conectarse al origen de datos
1 Para comenzar, haga clic en Vincular datos a las formas en el menú Datos. Se le
preguntará a qué tipo de origen de datos desea conectarse y en qué lugar se
encuentra.
2 Cuando haya respondido a estas preguntas, aparecerán los datos como filas en
la ventana Datos externos.
El próximo paso consiste en vincular los datos a las formas, tal como se explica en la
siguiente sección.
Paso 3: Arrastrar las filas hacia las formas
Por último, pasemos al tercer paso, que consiste en arrastrar las filas. Es el momento de
la verdad. Para vincular una fila de datos con una forma, debe arrastrar la fila desde la
ventana Datos externos hasta la forma.
Nota Si tiene que vincular muchas filas, este proceso podría alargarse. En tal caso,
existe una alternativa, llamada vinculación automática, que trataremos en el siguiente
curso "Vincular datos a los diagramas IV".
Haga clic en la forma y, en la ventana Datos de formas, se mostrarán todos los datos
importados que están vinculados con la forma.
El segundo resultado, que es más sutil, es que se importan los datos de toda la fila en la
forma. Para ver todos los datos de la forma, seleccione la forma y observe la ventana
Datos de formas. (Si no la ve, haga clic en el menú Ver para activarla).
Icono de vínculo
El tercer resultado que se produce cuando arrastra una fila hacia una forma es que
aparece un icono de vínculo de la fila en la ventana Datos externos. El icono indica una
conexión entre los datos y la forma.
¿Por qué es importante el icono de vínculo? En primer lugar, cuando trabaja con
muchas filas es útil saber cuáles están vinculadas y cuáles no. No obstante, el icono de
vínculo también servirá de recordatorio cuando actualice los datos incluidos en el
diagrama. Cuando actualiza los datos con el menú Datos, todos los datos de la ventana
Datos externos se actualizarán y las filas que tengan un i cono de vínculo enviarán las
actualizaciones a la forma con la que estén vinculadas.
Nota No necesita vincular todas las filas a una forma, por lo cual no todas las filas
tendrán necesariamente un icono de vínculo. Puede arrastrarlas más adelante o no
hacerlo en absoluto. Puede vincular ciertas filas y dejar otras sin vincular.
Recomendaciones para los datos
En la lección anterior, desarrollamos el tema sobre cómo vincular datos a los
diagramas. Sin embargo, existen otras cuestiones importantes que le aconsejamos
aprender antes de trabajar con sus propios diagramas y datos. Por ejemplo, ¿qué tipos
de formatos de datos puede usar? ¿Se deben preparar los datos de un modo especial?
En esta lección se abordarán dichos temas
Requisito de los datos: cada fila debe describir una forma. Por ejemplo, si cada fila
describe una parte del equipo de computación, dichos datos funcionarán con un
diagrama que contenga formas del equipo de computación. Si cada fila describe a un
empleado con el departamento, el número de oficina, etc., los datos funcionarían si los
importara a un organigrama que contenga formas de empleados. Las filas que
describen procesos podrían funcionar para un diagrama de flujo, etc.
Los datos deben presentarse en forma de tabla con encabezados
Dado que las filas están asociadas a las formas, hay otras maneras de asegurarse de que
resulte más fácil trabajar con los datos en Visio. La primera manera es asegurarse de
que los datos estén organizados en forma de tabla, con encabezados de columna en la
parte superior y filas debajo.
Si usa una base de datos, muy probablemente esto ya esté resuelto. Sin embargo, si
trabaja con Microsoft Office Excel, el usuario debe asegurarse de que los datos estén
organizados de esta forma.
En la imagen, en el ejemplo A se observan datos organizados en columnas y filas con
encabezados de columna en la parte superior. Con este esquema podrá trabajar
perfectamente. Con el ejemplo B, podría trabajar correctamente, pero será más difícil
para el usuario y para Visio, dado que falta un encabezado de columna y hay una fila
en blanco.
Los datos deben tener una columna con valores únicos
Otra forma de que facilitar el trabajo en Visio con los datos es asegurarse de que la
columna en el origen de datos contenga valores únicos. Cuando actualiza los datos
vinculados a un diagrama, Visio necesita identificar a qué fila en la ventana Datos
externos (y, por lo tanto, qué forma en el diagrama) se deben aplicar las
actualizaciones. Una columna con valores únicos, tales como nombres o números de
identificador, le garantiza que esto ocurrirá sin inconvenientes.
En la imagen anterior, en el ejemplo A se observa esta situación. Sin embargo, en el
ejemplo B, hay valores duplicados en la columna de identificadores. Esto podría causar
confusiones para Visio y para el usuario; ¿cómo sabrá a qué corresponde cada
columna?
Nota Las columnas de valores únicos también se denominan columnas de clave o
claves principales. Si el origen de datos es una base de datos, es muy posible que esto
ya esté resuelto. Sin embargo, si trabaja con Excel, deberá asegurarse de que exista
dicha columna.
Si es necesario, prepare los datos
Otra recomendación útil es asegurarse de que los datos sean los adecuados para el
diagrama. Por ejemplo, si desea que se muestren las cantidades como barras de
progreso o medidores, no mezcle texto y números. Observe la columna CPU en la tabla
de la izquierda; sólo contiene números. Sin embargo, en el ejemplo de la derecha hay
texto combinado con números. Si mezcla texto y números, los datos se tratarán como
texto y la barra o el medidor no mostrarán las cantidades de la manera esperada.
Orígenes de datos compatibles
Dado que los datos que se importan son externos a Visio, deben estar almacenados en
un origen que Visio comprenda. Los orígenes de datos que puede usar son:
Libros de Microsoft Office Excel
Bases de datos de Microsoft Office Access
Listas de Microsoft Windows SharePoint Services
Bases de datos de Microsoft SQL Server
Orígenes de datos OLEDB o ODBC