Curso access

126
Microsoft Access Avanzado Corpus Ruiz Fernández Coordinación de Informática DIRECCIÓN PROVINCIAL DE LA TGSS DE CIUDAD REAL ------------------------------------------------------------------------------------ Curso del 4 al 5 de julio de 2007

Transcript of Curso access

Page 1: Curso access

Microsoft Access Avanzado

Corpus Ruiz Fernández

Coordinación de Informática

DIRECCIÓN PROVINCIAL DE LA TGSS DE CIUDAD REAL ------------------------------------------------------------------------------------

Curso del 4 al 5 de julio de 2007

Page 2: Curso access

Access Avanzado 2003 

Page 3: Curso access

Corpus Ruiz Fernández 

Índice

Introducción................................................................................................................................... 7

Access es un Sistema Gestor de Base de Datos (SGBD) ........................................................ 9

Concepto de tablas, campos y registros ................................................................................. 10

Tipos de datos y su aplicación................................................................................................. 10

Campo clave............................................................................................................................ 11

Estructura de un fichero Access.............................................................................................. 12

Diseño del proyecto de Base de Datos....................................................................................... 13

Mi primera base de datos ........................................................................................................ 15

Ventana de Localidad.mdb .................................................................................................. 16

Breve descripción de cada uno de los objetos .................................................................... 17

Crear la tabla Localidad ....................................................................................................... 18

Establecer la clave principal................................................................................................. 19

Guardar la tabla ................................................................................................................... 19

Estudio previo de la información a introducir........................................................................... 19

Tablas y campos necesarios................................................................................................ 20

Tipo de relaciones................................................................................................................ 20

Relación entre la tabla Localidad y la tabla Funcionario ..................................................... 22

Relación entre la tabla Funcionario y la tabla Curso ........................................................... 22

Resumen de nuestro supuesto ............................................................................................ 22

Vincular tablas de otra base de datos.................................................................................. 23

Crear la tabla Funcionario.................................................................................................... 24

Relacionar las tablas Funcionario y Localidad..................................................................... 25

Integridad referencial ........................................................................................................... 28

Ejercicios.................................................................................................................................. 30

Consultas..................................................................................................................................... 32

Page 4: Curso access

Access Avanzado 2003 

Introducción ............................................................................................................................. 34

Tipos de consultas................................................................................................................... 34

Creación de mi primera consulta ............................................................................................. 34

Consulta en más de una tabla................................................................................................. 37

Crea un campo calculado con una consulta............................................................................ 39

Formularios.................................................................................................................................. 42

Introducción ............................................................................................................................. 44

¿Cómo se construyen?............................................................................................................ 44

Los controles............................................................................................................................ 45

Formas de crear formularios.................................................................................................... 46

Nombre que se le van a dar a los formularios......................................................................... 46

Creación de formularios mediante el asistente ....................................................................... 47

El formulario GestionSolicitud.................................................................................................. 47

El formulario Solicitud .............................................................................................................. 51

Agregar un campo a un formulario ...................................................................................... 52

Orden de tabulación............................................................................................................. 53

Establecer controles como de sólo lectura .......................................................................... 53

Evitar aprender códigos ....................................................................................................... 54

Propiedades de un formulario .............................................................................................. 58

Hacer referencia a los controles de un formulario o informe................................................... 59

Exportar registros utilizando el Filtro por formulario................................................................ 60

Ejercicios.................................................................................................................................. 63

Subformularios ............................................................................................................................ 65

Introducción ............................................................................................................................. 67

Repaso de lo hecho hasta ahora............................................................................................. 67

Crear formulario y subformulario al mismo tiempo.................................................................. 68

Crear subformularios basado en consultas ............................................................................. 70

Consulta del formulario principal: ConFuncionario.................................................................. 70

Consulta del subformulario: ConSubCurso ............................................................................. 71

El formulario principal Funcionario .......................................................................................... 72

Page 5: Curso access

Corpus Ruiz Fernández 

El subformulario SubCurso...................................................................................................... 73

Insertar el subformulario en el formulario principal.................................................................. 75

Función de nuestros formularios en el proyecto...................................................................... 76

Ejercicios.................................................................................................................................. 79

Macros......................................................................................................................................... 81

Introducción ............................................................................................................................. 83

Crear botones en Funcionario.............................................................................................. 83

Crear un macro........................................................................................................................ 85

Grupo de macros ..................................................................................................................... 86

El grupo Funcionario................................................................................................................ 86

Macro Añadir ........................................................................................................................ 87

Macro Modificar.................................................................................................................... 87

Macro Buscar ....................................................................................................................... 88

Resumen.............................................................................................................................. 90

El grupo Curso......................................................................................................................... 90

El grupo Solicitud..................................................................................................................... 90

Macro Exportar..................................................................................................................... 91

Macro Imprimir ..................................................................................................................... 92

Resumen.............................................................................................................................. 94

El grupo Comun....................................................................................................................... 94

Macro Funcionario ............................................................................................................... 94

Macro Curso......................................................................................................................... 94

Macro Solicitud..................................................................................................................... 95

Macro Aceptar...................................................................................................................... 95

Formulario Curso ..................................................................................................................... 97

Formulario Funcionario............................................................................................................ 98

Formulario Solicitud ................................................................................................................. 99

Formulario GestionCurso....................................................................................................... 100

Formulario GestionFuncionario ............................................................................................. 101

Formulario GestionSolicitud................................................................................................... 102

Page 6: Curso access

Access Avanzado 2003 

Formulario SubCurso............................................................................................................. 103

Formulario SubFuncionario ................................................................................................... 104

ANEXO DE LAS ACCIONES MÁS UTILIZADAS.................................................................. 105

Ejercicios................................................................................................................................ 107

INFORMES................................................................................................................................ 109

Introducción ........................................................................................................................... 111

Formas de crear un informe .................................................................................................. 111

Crear informe con ayuda del asistente.................................................................................. 111

Elementos de un informe....................................................................................................... 114

Secciones principales ........................................................................................................ 114

Opciones en un informe..................................................................................................... 115

Agregar campos u otros controles a un informe existente .................................................... 115

Agregar campos a un informe existente ............................................................................ 115

Agregar o modificar el agrupamiento y la ordenación........................................................... 116

El informe Listado Cursos...................................................................................................... 116

Filtrado de datos en un informe............................................................................................. 118

El informe Listado funcionarios ............................................................................................. 120

Forzar nueva página en cada encabezado de grupo ........................................................ 121

Filtrar los datos del informe desde el formulario Solicitud ................................................. 122

Creación de etiquetas postales ............................................................................................. 122

Creación de un formulario desde el panel Impresoras y faxes.......................................... 123

Acuses de recibo para impresoras matriciales .................................................................. 123

Acuses de recibo para impresoras láser............................................................................ 126

Page 7: Curso access

Corpus Ruiz Fernández 

Introducción

Page 8: Curso access

Access Avanzado 2003 

Page 9: Curso access

Corpus Ruiz Fernández 

Microsoft Access es un programa para la gestión de información que diseña las estructuras

para almacenar la información y los medios para su introducción y explotación. Para explicar

este propósito general de Access, se introducen primero los conceptos principales de las

bases de datos, comenzando por el mismo concepto de base de datos. Se comienza con el

concepto de base de datos compuesta de tablas con estructura plana (todos los datos se

encuentran en una tabla y son más difíciles de gestionar) para pasar a diseñar bases de datos

compuestas de varias tablas entre las que existe una relación (estructura relacional).

La versión de Access que se va a presentar es la 2003 para Windows y el alumno, al finalizar

el curso, será capaz de realizar aplicaciones de bases de datos que relacionen varias tablas,

generando formularios e informes enlazados mediante macros para, así, generar una interfaz

de usuario sencilla y completa.

A la vez que se da la teoría iremos creando una aplicación que al final sea capaz de gestionar

las solicitudes de los Cursos de Formación.

El curso está dirigido a todos los trabajadores de la Dirección Provincial del INSS ó TGSS que,

conociendo el Gestor de Base de Datos Microsoft Access –a partir de ahora Access- desea

profundizar en el programa hasta un nivel más alto.

Access es un Sistema Gestor de Base de Datos (SGBD)

Un software específico dedicado a servir de intermediario entre la base de datos, el usuario y

las aplicaciones que la utilizan y gestiona información se denomina un sistema de gestión de

bases de datos SGBD ó DBMS (Data Base Management System). La estructura básica de esta

información son tablas.

Para una mejor gestión de la información y para reducir el número de datos, las tablas se

relacionan. Por ejemplo, si se desean tener un listado de los cursos solicitador por los

funcionarios, en vez de incluir el nombre y apellidos en cada una de las solicitudes, bastará

con almacenar los números del DNI en cada curso. El número de DNI sirve para establecer una

relación con la tabla que contiene el nombre y los apellidos. Debido a este carácter relacional,

Access es un sistema de gestión de bases de datos relacional SGBDR ó RDBMS (Relational Data Base Management System).

Si se hubiese utilizado sólo una tabla, al añadir los registros hubiera sido necesario introducir

varias veces el nombre y apellido de la persona que lo ha solicitado, almacenándose

información redundante, pudiendo cometerse errores como se muestra en la siguiente tabla.

Page 10: Curso access

Access Avanzado 2003 

Concepto de tablas, campos y registros

La información se almacena en tablas. Cada una de ellas tiene que tener un nombre único en

la Base de Datos y están compuestas por filas (llamadas registros) y columnas (llamadas

campos).

En el ejemplo anterior, la base de datos está formada por dos tablas:

Funcionario: Contiene información sobre los funcionarios, consta de 2 campos (DNI y

Nombre y apellidos) y 1 registro.

Curso: Contiene información sobre los cursos, consta de 3 campos (Código curso,

nombre curso y DNI) y 3 registros.

Por tanto, una base de datos contiene tablas que se utilizan para gestionar un determinado tipo

de información. Ejemplos de base de datos son:

Base de datos para la gestión de los cursos de nuestra Dirección Provincial.

Base de datos que gestionan los ingresos en un hospital.

Base de datos que gestionan los pedidos de una empresa.

Tipos de datos y su aplicación

En Access se usa la propiedad Tipos de datos para especificar el tipo de datos almacenado en

un campo de una tabla. Cada campo sólo puede contener datos de un tipo. Dicha propiedad

puede tener los valores siguientes:

Tipo Pueden contener… Tamaño

Texto Caracteres alfanuméricos –cualquier carácter del teclado. Los números no pueden usarse en operaciones aritméticas.

El tamaño por defecto es 50 y el máximo 255

Memo Cualquier carácter del teclado y se usa para almacenar grandes cantidades de información. Un ejemplo de este tipo de campo sería un campo de sugerencias o comentarios.

Hasta 65.534 caracteres.

Numérico Datos numéricos utilizados para cálculos matemáticos. Pueden ser enteros o reales.

De diferentes longitudes

Fecha/hora Valores de fecha y hora para los años 100 al 9999. 8 bytes

Moneda Números enteros o fraccionarios (como máximo de 4 decimales).

8 bytes

Autonumérico Número secuencial único que Access asigna cada vez 4 bytes

10 

Page 11: Curso access

Corpus Ruiz Fernández 

que se añade un registro a una tabla.

Booleano (Sí/No) Sólo dos valores: Sí o No. 1 bit

Objeto OLE Objeto (como documento Word, imágenes…) vinculado o incrustado en una tabla.

Hasta 1Gb

Hipervínculo Dirección de página web, de correo electrónico o de un archivo en el disco local.

2048 caracteres

Asistente para búsquedas

Crea un campo que permite elegir un valor de otra tabla o de una lista de valores mediante un cuadro de lista o cuadro combinado.

Igual al campo utilizado para realizar la búsqueda

El campo por omisión es de tipo Texto, ya que en él se puede almacenar cualquier carácter. Si

lo que queremos es almacenar bastante texto, debemos elegir el campo tipo Memo. Por otro

lado, cuando vayamos a introducir datos de tipo numérico elegiremos entre Numérico o Texto,

dependiendo si deseamos realizar operaciones matemáticas con ellos o no, respectivamente.

El campo Autonumérico lo podemos utilizar para numerar los registros automáticamente

según los vamos introduciendo en la tabla.

Cuando el campo sólo pueda contener una afirmación o una negación usaremos el tipo Sí/No –

tipo de datos booleano. Por último, tenemos los campos Fecha/hora que sirven para introducir

fechas y horas en diferentes formatos; el campo Moneda que utiliza un máximo de 4 decimales

y añade el tipo de moneda especificada, y el campo ObjetoOLE que nos puede servir para

insertar cualquier objeto OLE compatible en Windows, como puede ser una hoja de cálculo,

una carta, una imagen, un gráfico, etc.

Se recomienda especificar el valor más pequeño posible en la propiedad Tamaño del campo, pues los tamaños más pequeños pueden procesarse más rápidamente y requieren menos memoria.

Precaución: Si cambia un valor de Tamaño del campo grande por otro más pequeño para un campo que ya contiene datos, es posible que pierda información. Por ejemplo, si un campo de tipo Texto tiene el valor 255 en Tamaño del campo y lo cambia por 50, los datos que se extiendan más allá de los 50 primeros caracteres se perderán.

Si los datos de un campo de tipo Numérico no caben con un nuevo valor de Tamaño del campo, los números fraccionarios se pueden redondear, o pueden dar el valor Nulo. Por ejemplo, si cambia el tamaño de campo de Simple a Entero, los valores fraccionarios se redondearán al número entero más cercano, y los superiores a 32.767 o inferiores a -32.768 serán reemplazados por valores nulos.

No es posible deshacer los cambios en los datos provocados por una modificación de la propiedad Tamaño del campo después de haberlos guardado en la vista Diseño de la tabla.

Campo clave

En cada una de las tablas de una base de datos relacional debemos de tener al menos un campo o varios cuyo valor sea único e identifique unívocamente a cada registro de la tabla.

Por ejemplo, en nuestro caso de la gestión de los cursos, las tablas funcionario y curso tienen

un campo clave (DNI y Código curso respectivamente).

11 

Page 12: Curso access

Access Avanzado 2003 

En el caso de que no podamos encontrar un campo clave se añade a la tabla un campo de tipo

Autonumérico o bien podemos elegir varios campos como la clave de la tabla.

Estructura de un fichero Access

Como se explica más adelante en este documento, una base de datos consta de distintos

objetos: tablas, consultas, relaciones, informes, formularios, etc. Todos los objetos de una

base de datos se almacenan físicamente en un sólo fichero. Por ello en Access, se identifica

una base de datos con el fichero en el que se almacena. Este fichero tiene la extesión mdb.

Esta estructura de ficheros de Access es propia de esta aplicación. Otros formatos de base de

datos utilizan otros criterios. Por ejemplo los ficheros dBase de Lotus Approach utilizan un

fichero para cada tabla con extensión dbf.

Información: Siempre que una base de datos mdb se encuentre abierta, en la misma carpeta de la base de datos se crea como archivo temporal de trabajo otro archivo con el mismo nombre que la base de datos pero extensión ldb. Este archivo es eliminado de forma automática al ser cerrada la base de datos. Existe mientras la base de datos está en uso.

12 

Page 13: Curso access

Corpus Ruiz Fernández 

Diseño del proyecto de Base de Datos

13 

Page 14: Curso access

Access Avanzado 2003 

14 

Page 15: Curso access

Corpus Ruiz Fernández 

A partir de aquí vamos a ir desarrollando la teoría con un ejercicio práctico –Mi proyecto- que

consistirá en diseñar una base de datos que sea capaz de gestionar las solicitudes de los

Cursos de Formación de la Dirección Provincial.

Empezaremos creando nuestra primera tabla –Localidad- para almacenar el código postal y el

pueblo del funcionario que presenta la solicitud. Veremos los distintos tipos de objetos que

aparecen en una base de datos y otros conceptos básicos como clave principal, clave ajena e

integridad referencial e insistiremos en lo importante que es un buen diseño de una base de

datos y el establecimiento de las relaciones entre las diferentes tablas que componen nuestro

proyecto de Base de Datos.

Al final de cada tema se propone unos ejercicios para evaluar si se ha comprendido todos

estos conceptos.

Mi primera base de datos

Para crear una sencilla base de datos -Localidad.mdb- que contenga información sobre las

localidades de la provincia de Ciudad Real una vez iniciada una sesión de Access, los pasos a

seguir son:

Hacer clic en Base de datos en blanco, del Panel de tareas.

Nota: Si no aparece el panel de tareas, hacer clic en Ver Panel de tareas.

En el cuadro de diálogo que aparece se elige la ubicación exacta del archivo que se va

a crear y el nombre que va a recibir (en nuestro caso Localidad.mdb). Si bien Access

otorga por defecto el nombre bd1.mdb y lo ubica en la carpeta Mis Documentos.

Finalizar haciendo clic en Crear.

15 

Page 16: Curso access

Access Avanzado 2003 

Ventana de Localidad.mdb

La ventana de la base de datos Localidad.mdb que acabamos de crear es la que se muestra

en la figura siguiente:

y presenta los siguientes elementos:

Barra de títulos: En la parte superior de la ventana. Muestra el nombre de la base de

datos en la que se está trabajando junto con los botones Minimizar, Restaurar-Maximizar y

Cerrar.

Barra de botones: Situada debajo de la barra de títulos, permite crear nuevos objetos

y abrir o visualizar los ya creados.

16 

Page 17: Curso access

Corpus Ruiz Fernández 

Panel de objetos: Situado a la izquierda, en él aparece una botonera con los

diferentes objetos que puede tener una base de datos. Para ir de una a otra hacemos clic en

el nombre del objeto.

Ventana del documento: A la derecha del panel de objetos, presenta el nombre de

todos los objetos que han sido creados –en nuestro caso ninguno ya que todavía la base de

datos está vacía- y los asistentes para crearlos.

Breve descripción de cada uno de los objetos

Tablas: Principal objeto de la base de datos donde se almacena la información,

estructurada en registros y campos.

Consultas: Permite realizar una operación sobre la base de datos para seleccionar,

modificar, insertar ó borrar registros según un criterio. Las consultas se pueden realizar

sobre una o varias tablas.

Formularios: Es una ventana diseñada para la introducción y edición de datos de una

o varias tablas. Permite introducir, modificar, consultar y borrar los registros de la tabla o

consulta para la que se ha diseñado. La ventaja frente a la presentación como hoja de datos

es que los campos se presentan de forma más adecuada al usuario, con un diseño que

ayuda a su comprensión, utilizando los controles más adecuados a cada tipo de

información.

Informes: Si el formulario es idóneo para introducir y editar los datos, la mejor forma de

mostrarlos es mediante un informa en una página impresa o su presentación en la pantalla

del ordenador. Access proporciona herramientas para diseñar informes con gran flexibilidad

y posee funciones para agrupar registros y mostrar totales y subtotales de los campos

deseados.

Macros: Son conjunto de acciones que realizan una operación determinada, como

abrir un formulario o imprimir un informe. Las macros pueden ayudar a automatizar las

tareas comunes, como imprimir un informe cuando el usuario pulsa un botón.

17 

Page 18: Curso access

Access Avanzado 2003 

Módulos: Conjunto de declaraciones y procedimientos de Visual Basic. No se verán en

el curso ya que está dirigido a los programadores.

Páginas: Para crear páginas Web que se puedan utilizar para ver, agregar, modificar o

borrar datos actuales de una base de datos de Access. Igual que los formularios pero a

través de navegadores de Internet. Orientado a programadores para presentar los

formularios vía Internet o Intranet.

Crear la tabla Localidad

Para crear una tabla tenemos que posicionarnos en la ventana base de datos con el objeto

Tablas seleccionado y hacer clic en el icono de la barra de botones. Se abrirá una

ventana con las distintas formas para crear una tabla:

De ellas, elegiremos Vista Diseño que será el método que utilizaremos. Otra forma de crearla

sería haciendo clic sobre el icono . Aparecerá la ventana Diseño de tabla desde la que

se teclea el nombre de los campos, se selecciona el tipo de datos del campo y –opcionalmente-

se indica una descripción para cada campo:

18 

Page 19: Curso access

Corpus Ruiz Fernández 

En la parte inferior de cada campo tenemos la ficha General para definir propiedades del

campo como por ejemplo:

Código CP Nombre

Tamaño del campo1 Entero Entero 30

Formato 2 00000 00000

Título 3 Código del pueblo Código Postal Localidad

Lugares decimales 0 0

Requerido 4 Sí Sí Sí

Indexado 5 Sí (Sin duplicados) Si (Con duplicados) No

Establecer la clave principal

Antes de guardar la tabla tendremos que definir el campo Codigo como clave principal (el

único que nos sirve para identificar los registros. No podemos elegir como clave principal el

campo CP ya que hay pueblos que tienen el mismo Código Postal) eligiéndolo y haciendo clic

en el icono clave principal de la barra de herramientas. A la izquierda del nombre del

campo aparecerá una llave indicándonos que dicho campo es clave principal de la tabla.

Guardar la tabla

Por último, se guarda la tabla haciendo clic sobre el icono y se escribe el nombre de la tabla

–en nuestro ejemplo, Localidad.

Nota: Si no hubiéramos asignado clave principal a la tabla, al salir del modo diseño aparecería un cuadro de diálogo avisándonos de ello y preguntándonos si queremos que Access cree una. Si decimos que Sí, se añade un campo Autonumérico a la tabla y lo define como clave principal, si decimos No se guarda la tabla sin clave principal.

Ya podemos empezar a introducir datos haciendo doble clic en la tabla Localidad.

Estudio previo de la información a introducir

Antes de crear una base de datos debemos pensar bien el diseño de la misma, pues una vez

creada y con datos introducidos, es más difícil modificarla. 1 Depende del tipo de dato:

Texto: Puede tomar valores entre 0 y 255.

Numérico: Entero, por lo que almacena números del -32768 al 32767.

2 Para personalizar la forma en que los números, fechas, horas y texto se muestran e imprimen.

3 La etiqueta para el campo cuando se utiliza para un formulario.

4 Hacer obligatoria o no la entrada de datos en el campo.

5 Un índice para acelerar las búsquedas y ordenamientos en un campo.

19 

Page 20: Curso access

Access Avanzado 2003 

Lo primero que debemos hacer es determinar la finalidad de la base de datos y las tablas que

va a contener. En segundo lugar, debemos distribuir toda la información por campos, de forma

que cada campo corresponda a una tabla y que la información no se encuentre duplicada ni

dentro de una tabla ni en tablas diferentes. Por último, determinaremos las relaciones entre las

diferentes tablas.

Cada uno de estos pasos lo vamos a hacer partiendo de un supuesto básico: Una base de

datos que gestiona los cursos de formación de la Dirección Provincial:

Tablas y campos necesarios

Desde que el funcionario solicita el curso hasta que salen los listados de los admitidos ha sido

necesario recoger una serie de información –DNI, nombre y apellidos, nombre de los cursos,

etc… Toda esta información podemos recogerla en dos tablas:

Tabla Funcionario: Con información relativa sobre quienes van a realizar los cursos.

Tabla Curso: Con información relativa a los cursos.

Tipo de relaciones

Las relaciones entre tablas se hacen a través de sus claves principales. La clave principal de la

tabla Funcionario es el DNI y de la tabla Curso el Código por ser los campos que identifican a

cada uno de los registros.

Las relaciones posibles entre tablas pueden ser:

Uno a uno: Cada registro de una de las tablas está relacionado con uno y sólo un

registro de la otra tabla. Un ejemplo sería la relación entre la tabla Sección y la tabla Jefe,

ya que en una sección sólo puede haber un jefe y cada jefe sólo puede serlo de una

sección.

20 

Page 21: Curso access

Corpus Ruiz Fernández 

Uno a varios: Cada registro de una de las tablas está relacionado con uno o varios

registros de la otra tabla. Un ejemplo sería la relación entre la tabla Funcionario y la tabla

Localidad, donde en una localidad pueden vivir uno o más funcionarios y un funcionario

sólo puede vivir en sólo una localidad.

Varios a varios: Cada registro de una tabla está relacionado con uno o más de la otra

tabla y cada registro de ésta con uno o varios registros de la otra.

21 

Page 22: Curso access

Access Avanzado 2003 

Por tanto, nuestro ejemplo corresponde a una relación de varios a varios. Vamos a ver que

hay que hacer con las claves de las tablas en cada uno de los tipos de relaciones:

Relación entre la tabla Localidad y la tabla Funcionario

Esta relación, como vimos, es de uno a varios. Lo que se hace, en este caso, es añadir a la

tabla Funcionario la clave de la tabla Localidad –El Codigo del pueblo ya que, como

sabemos, el Código Postal se repite en algunos pueblos.

Al campo CodigoPueblo de la tabla Funcionario se le llama clave ajena.

Relación entre la tabla Funcionario y la tabla Curso

Dicha relación es de varios a varios. Cuando la relación es de este tipo, lo que se hace es crear

otra tabla intermedia –Solicitud- con las claves de las dos tablas (DNI de la de Funcionario y

Código de la tabla Curso). Además, de una solicitud nos interesa, por ejemplo, la fecha de

entrada y la fecha en la que empieza el curso, por lo que podemos añadir dos campos más a la

tabla Solicitud.

Resumen de nuestro supuesto

Al final, las relaciones que se han establecido en nuestro proyecto quedaría así:

22 

Page 23: Curso access

Corpus Ruiz Fernández 

1 Clave principal de la tabla Localidad Localidad.Codigo

2 Clave principal de la tabla Funcionario Funcionario.DNI

3 Clave ajena de la tabla Funcionario Funcionario.CodigoPueblo

4 Clave ajena de la tabla Solicitud Solicitud.DNI

5 Clave ajena de la tabla Solicitud Solicitud.CodigoCurso

6 Clave principal de la tabla Curso Curso.Codigo La clave principal de la tabla Solicitud sería la combinación de los campos DNI, CodigoCurso y FechaCurso.

Así que tendremos que crear 4 tablas con sus respectivos campos cada una, indicando de qué

tipo son. Como ya hemos creado la tabla Localidad en la base de datos Localidad.mdb -que

posiblemente la utilizaremos en otras bases de datos que tengamos o vayamos a crear-, en

vez de crear en nuestro proyecto nuevamente la tabla Localidad optaremos por vincular la que

ya tenemos a nuestra base de datos.

Vincular tablas de otra base de datos

La vinculación de tablas es la manera que tiene Access de compartir tablas entre distintos

archivos de bases de datos. Así no se necesario abrir otro archivo para conectarse con las

tablas contenidas en él. La vinculación de tablas funciona con archivos Access mdb y de otro

tipo de bases de datos como DBase (la que utiliza Lotus Approach).

Las tablas vinculadas pueden ser leídas pero no modificadas. Para poderlo hacerlo se necesita

tener abierto el archivo mdb que las contiene.

Para ejemplificarlo, creamos la base de datos de nuestro proyecto, a la que llamaremos

Cursos de Formación, y desde allí vincular la tabla Localidad de la base de datos

Localidad.mdb:

Archivo Obtener datos externos Importar…

23 

Page 24: Curso access

Access Avanzado 2003 

Selecciona el archivo Localidad.mdb y pulsa el botón Vincular.

En la ventana Vincular tablas selecciona la tabla Localidad y pulsa el botón Aceptar.

Ahora podremos ver que la tabla Localidad está vinculada a nuestra base de datos ya que

aparece con un signo en forma de flecha:

Crear la tabla Funcionario

Seguimos los mismos pasos que cuando se creó la tabla Localidad, añadiendo los campos

siguientes:

24 

Page 25: Curso access

Corpus Ruiz Fernández 

Vamos a comentar algunas propiedades de estos campos:

DNI Tamaño del campo: Entero largo, ya que el DNI no contiene decimales y tiene un tamaño suficiente para almacenar los DNI’s. Formato: 00000000, para que cuando se introduzca un DNI de 7 o menos cifras se rellene a la izquierda con ceros. Lugares decimales: 0, ya que no contiene decimales.

Indexado: Sin, sin duplicados. Para acelerar las búsquedas por este campo y no duplicar valores.

Nombre

Primer apellido

Segundo apellido

Tamaño del campo: Con 15 caracteres tenemos suficiente para los nombres de los funcionarios. Requerido: Sí, para hacer obligatoria la entrada de datos en estos campos.

Permitir longitud cero: No, para no permitir cadenas de longitud cero en los campos. Indexado: Sí, si quieres acelerar las búsquedas u ordenación por estos campos, en caso contrario No.

Domicilio Tamaño del campo: Con 35 caracteres tenemos suficiente para el domicilio. Siempre habrá tiempo para aumentar el tamaño cuando queramos.

Requerido: Sí, para hacer obligatoria la entrada de datos en ese campo.

Sueldo Formato: Euro.

Lugares decimales: 2, ya que el euro contiene 2 decimales.

CodigoPueblo Tamaño del campo: Con Entero tenemos una longitud suficiente para introducir los posibles valores de este campo.

Formato: 00000, para completar con 0 a la izquierda el número que se introduzca.

Lugares decimales: 0, ya que es un número entero por lo que no contiene decimales. Requerido: Sí, para hacer obligatoria la introducción de datos en este campo.

Relacionar las tablas Funcionario y Localidad

Una vez hemos creado las tablas Funcionario y Localidad, a Access se le tiene que decir

cómo debe combinar la información mediante una relación. En una relación, los campos

relacionados deben ser del mismo tipo de datos pero no es necesario que tengan el mismo

nombre.

Para crear una relación hay que seguir estos pasos:

Hacer clic en Relaciones en la barra de herramientas o Herramientas

Relaciones… en la barra de menús.

Como aún no se ha definido ninguna relación, se mostrará automáticamente el cuadro

de diálogo Mostrar tabla:

25 

Page 26: Curso access

Access Avanzado 2003 

Hacer doble clic en las tablas que vamos a relacionar -Funcionario y Localidad- y

cerrar el cuadro de diálogo Mostrar tabla. Aparecerán las dos tablas en el cuadro de

Relaciones, donde podemos observar los diferentes campos de las tablas. Los campos

clave de cada tabla vienen en negrita.

Arrastrar el campo que deseamos relacionar de una de las tablas al campo relacionado

de la otra. Como vimos anteriormente, los campos a relacionar son Localidad.Codigo y

Funcionario.CodigoPueblo que son la clave principal de la tabla Localidad y la clave

ajena de la tabla Funcionario. En el cuadro de diálogo Modificar relaciones hay que

comprobar que los campos mostrados en las dos columnas son correctos y pulsar

Crear.

26 

Page 27: Curso access

Corpus Ruiz Fernández 

En la ventana de relaciones aparecerá la relación que acabamos de crear:

Nota: Las relaciones entre Funcionario-Solicitud y Solicitud-Curso se proponen como ejercicio. Quedarían así:

Asimismo, cada una de estas tablas contendrá estos campos:

27 

Page 28: Curso access

Access Avanzado 2003 

Integridad referencial

La integridad referencial es un conjunto de reglas de Access que garantizan que las relaciones

entre los registros de tablas relacionadas son válidas y que no se eliminan ni modifican

accidentalmente datos relacionados que satisfacen dicha relación. Sirve para aumentar la

seguridad en el tratamiento de los datos que coexisten entre dos tablas relacionadas.

Se puede establecer integridad referencial cuando:

El campo que relaciona ambas tablas tiene que ser en la tabla principal un campo clave (indexado si y sin duplicados) y en la otra tabla clave ajena, también indexado (con o

sin duplicados según proceda). Ejemplo: En la relación entre las tablas Funcionario y

Solicitud, el campo que las relaciona –DNI- es clave principal en la tabla Funcionario y

clave ajena en la tabla Solicitud.

Los campos relacionados tienen el mismo tipo de datos, a excepción de que la

relación se establezca entre un campo de tipo Autonumérico y un campo de tipo

Numérico, siempre y cuando este último sea un Entero largo (por lo tanto los dos campos

con la misma longitud: entero largo). No se pueden relacionar un campo de texto con uno de

fecha, uno numérico con uno de texto...

Ambas tablas deben pertenecer a la misma base de datos de Access (estar dentro del

mismo archivo mdb). Por lo tanto, no podrá establecerse integridad referencial entre la tabla

Funcionario y la tabla vinculada Localidad ya que pertenecen a distintas bases de datos.

Cuando se establece la integridad referencial entre dos tablas, se van a cumplir las siguientes

reglas:

No podemos introducir un valor para el campo que es clave ajena en la tabla

relacionada si antes no ha sido introducido en el campo que es clave principal de la tabla

principal. Por tanto, no podemos tener solicitudes cuyo DNI no esté mecanizado en la tabla

Funcionario.

No se puede eliminar un registro de la tabla principal –Funcionario- si existen registros

coincidentes en la tabla relacionada –Solicitud-, salvo que se active la casilla Eliminar en cascada los registros relacionados en la ventana Modificar relaciones. Esta opción es

muy arriesgada ya que una vez que Access borra un registro ya no puede volverse a

recuperar si no es desde una copia de seguridad.

No se puede cambiar el valor de la clave principal de la tabla principal –Funcionario-

si tiene registros relacionados en la otra tabla –Solicitud-, salvo que se active la casilla

28 

Page 29: Curso access

Corpus Ruiz Fernández 

Actualizar en cascada los campos relacionados en la ventana Modificar relaciones.

29 

Page 30: Curso access

Access Avanzado 2003 

Ejercicios

Crear la base de datos Cursos de formación con las tablas Funcionario, Solicitud y

Curso.

Vincular la tabla Localidad de la base de datos Localidad.mdb. ¿Puede haber integridad

referencial entre la tabla Localidad y la tabla Funcionario.?

Relacionar las tablas Funcionario-Solicitud y Solicitud-Curso.

Para probar que las relaciones están bien hechas, introducir dos o tres registros en cada

una de las tablas siguiendo este orden:

o Añadir datos algunos funcionarios.

o Añadir distintos tipos de cursos.

o Añadir unas cuantas solicitudes de funcionarios que ya estén mecanizados.

30 

Page 31: Curso access

Corpus Ruiz Fernández 

31 

Page 32: Curso access

Access Avanzado 2003 

Consultas

32 

Page 33: Curso access

Corpus Ruiz Fernández 

33 

Page 34: Curso access

Access Avanzado 2003 

Introducción

El objeto Consulta de Access nos permite visualizar o imprimir una serie de registros de una o

varias tablas que cumplen unas determinadas condiciones y elegir los campos a visualizar. Los

datos se almacenan en las tablas y no en las consultas por lo que las modificaciones tendrán

efecto sobre las tablas origen de la consulta.

Podemos utilizar una consulta para proporcionar datos a un formulario o informe y presentar

sólo los registros que se han obtenido.

Tipos de consultas

Consultas de selección: Es la más habitual y sencilla. Con este tipo de consulta

podemos:

o Obtener los datos de una o más tablas y mostrarlos en una hoja de datos en la

que poder actualizar los registros.

o Calcular datos a partir de los registros de la tabla:

Campos calculados (para cada registro) y campos resumen (para un

conjunto de registros: total, sumas, promedios, etc.)

Consultas de acción: Realiza operaciones con los datos de una tabla (eliminar, o

actualizar una serie de registros, crear tablas con los datos de otras, importar datos de

tablas a otra –datos anexados.

Consulta de tablas de referencias cruzadas: Para resumir los datos de una o varias

tablas en forma tabular.

Creación de mi primera consulta

Una vez presentadas las solicitudes para los cursos, el personal de Formación junto con los

sindicatos se reúnen para elegir a los funcionarios que van a asistir a los cursos. Por tanto,

necesitamos un campo más en la tabla Solicitud para poder distinguir quién de los que han

solicitado los cursos van a realizarlos y quien no –a dicho campo lo llamaremos Aceptado y

será de tipo booleano ya que contiene valores que pueden ser sólo Verdadero o Falso (Sí/No):

34 

Page 35: Curso access

Corpus Ruiz Fernández 

¿Cómo visualizar todas las solicitudes que han sido aceptadas utilizando un objeto consulta?...

Sigamos estos pasos:

Nos situamos en la ventana del objeto Consultas de Access y pulsamos en el icono

Nuevo.

Elegimos Asistente para consultas sencillas y clic en Aceptar.

En Tablas/Consultas elegimos la tabla Solicitud y seleccionamos los campos que

queremos visualizar (DNI, CodigoCurso, Fecha Curso y Aceptado.) Clic en Siguiente.

La consulta es de detalle ya que se va a presentar todos los registros de la tabla

Solicitud que hayan sido aceptadas y no resúmenes de los mismos. Dejamos la opción

por defecto que presenta Access. Clic en Siguiente.

35 

Page 36: Curso access

Access Avanzado 2003 

Damos un nombre a la consulta –Solicitudes aceptadas- y pulsamos Finalizar. Elegimos la opción Modificar el diseño de consulta- para que se abra la consulta en

modo diseño desde donde podremos modificarla y añadir las condiciones que debe

cumplir.

El resultado que obtenemos en Access será similar a éste:

La ventana de diseño de consultas tiene dos áreas: La superior -donde aparecen las tablas que

participan en la consulta- y la inferior –rejilla que presenta los campos añadidos a la consulta y

donde se especifican los criterios que tiene que cumplir. En nuestro caso, establecer como

criterio en el campo Aceptada el valor Sí, ya que queremos visualizar sólo las solicitudes

aceptadas.

36 

Page 37: Curso access

Corpus Ruiz Fernández 

Para ejecutar la consulta hay que seleccionarla y pulsar el botón Abrir. El resultado será

similar a éste:

Que nos presenta, en una hoja de datos, los registros que cumplen los criterios establecidos en

la consulta.

Consulta en más de una tabla

Si miramos el resultado de la consulta anterior, no podemos saber cómo se llama el funcionario

ni el curso al que hace referencia los registros que cumplían los criterios. Access permite hacer

una consulta en la que estén implicados campos pertenecientes a más de una tabla.

Vamos crear otra consulta con los siguientes campos:

Tabla Campos Solicitud Aceptada y FechaCurso Funcionario Nombre, Primer apellido y Segundo apellido

Curso Nombre

Borramos la consulta anterior y seguimos los mismos pasos anteriores. La única

diferencia es que tenemos que elegir la tabla a la que pertenecen los campos que

vamos a añadir.

Para diferenciar los campos con el mismo nombre pero de distintas tablas, Access

antepone al campo el nombre de la tabla a la que pertenece (Funcionario.Nombre y

Curso.Nombre)

Le damos el mismo nombre que a la anterior –Solicitudes aceptadas- Si se ha seguido

correctamente los pasos, la consulta quedaría así:

37 

Page 38: Curso access

Access Avanzado 2003 

En la zona superior aparecen las tablas que participan en la consulta con sus relaciones y en la

inferior los campos a visualizar. Con ayuda del ratón, podemos modificar la posición de las

tablas para ver mejor la relación entre las mismas. Asimismo, introducimos el criterio de la

consulta.

Al ejecutarla, su resultado será:

En la que, ahora sí, podemos saber el nombre y apellidos así como el curso de las solicitudes

que han sido aceptadas.

Podríamos seguir añadiendo criterios, como:

Criterio Fórmula Obtener solicitudes de un año en concreto Año([FechaEntrada])=2007

Obtener solicitudes del año actual Año([FechaEntrada])=Año(Ahora())

Obtener solicitudes del mes actual Año([FechaEntrada])=Año(Ahora()) Y Mes([FechaEntrada])=Mes(Ahora())

Obtener solicitudes presentadas en un intervalo de fechas.

>#01/01/2007# Y <#30/06/2007#

38 

Page 39: Curso access

Corpus Ruiz Fernández 

Crea un campo calculado con una consulta

Un campo calculado es el resultado de una operación con uno o más campos de las tablas. Por

ejemplo, podemos combinar los campos Nombre, Primer apellido y Segundo apellido y definir

un campo calculado como:

Apellidos y Nombre = Primer Apellido + “ “ + Segundo Apellido + “; “ + Nombre

Volvemos a borrar la consulta Solicitudes aceptadas y la crearemos ahora en vista de Diseño:

Añadimos las tablas que necesitamos para la consulta (Funcionario, Solicitud y

Curso) eligiéndola y pulsando Aceptar.

Añadimos los campos desde las tablas a la rejilla y establecemos el criterio Sí al campo

Aceptada.

Definimos el campo calculado (Apellidos y Nombre) como el resultado de la

combinación de los campos Primerapellido, Segundoapellido y Nombre de la tabla

Funcionario, separados por sus respectivos espacios y coma:

Nombre y Apellidos: [Funcionario.Primerapellido] + " " + [Funcionario.Segundoapellido] + ", " + [Funcionario.Nombre]

Nota: Cada campo va precedido de la tabla al que pertenece separado por un punto.

El resultado de la ejecución de la consulta será:

39 

Page 40: Curso access

Access Avanzado 2003 

Vamos a utilizar el generador de expresiones para crear la fórmula del campo calculado:

Nos situamos en la celda donde vamos a generar el campo calculado. Botón derecho

Generar.

En el generador de expresiones se escribe el nombre del campo calculado seguido de

dos puntos y el signo igual.

El primer campo de la fórmula es Funcionario.Nombre. Para elegirlo nos situamos en

la tabla Funcionario, elegimos el campo Nombre y hacemos clic en Pegar para añadirlo

a la fórmula.

40 

Page 41: Curso access

Corpus Ruiz Fernández 

Añadir el espacio en blanco que viene después del nombre haciendo clic en el símbolo +

del generador de expresiones y escribir “ “. Idem para los espacios siguientes.

Para añadir las campos Primerapellido y Segundoapellido se actúa de forma similar a

cuando añadimos el campo Nombre. Finalizar pulsando el botón Aceptar.

Al final la fórmula quedaría así:

41 

Page 42: Curso access

Access Avanzado 2003 

Formularios

42 

Page 43: Curso access

Corpus Ruiz Fernández 

43 

Page 44: Curso access

Access Avanzado 2003 

Introducción

Los formularios son la parte de la aplicación que va a estar a disposición de los usuarios,

constituyendo el núcleo de la interfaz aplicación-usuario. Por eso es necesario tener un

especial cuidado en su diseño y construcción. Los usuarios que manejen los formularios deben

encontrarlos sencillos y eficientes. Aunque es posible utilizar las hojas de datos de tablas y

consultas para realizar muchas de las funciones de los formularios, éstos tienen la ventaja de

presentar la información de forma clara y ordenada. Un formulario convenientemente diseñado

acelera la introducción de datos y minimiza los errores de los usuarios.

Los formularios son el tipo de objeto más potente que incorpora Access para visualizar y editar

los datos de una tabla o consulta. Permiten mostrar los datos en un formato personalizado que

el usuario podrá diseñar según sus necesidades.

Nota: Los formularios pueden estar basados en tablas o en consultas. Son más eficientes los diseñados a través de consultas.

¿Cómo se construyen?

Los formularios se construyen partiendo de un conjunto de elementos de diseño

independientes denominados controles u objetos de tipo control. Los controles son los

componentes habituales de las ventanas y diálogos de Access y otras aplicaciones Windows.

Un formulario consiste en una ventana en la que se sitúan varios tipos de controles: los que

muestran los datos de las tablas y los que muestran datos estáticos como etiquetas o logotipos,

los que permiten generar acciones, tales como botones que abren otros formularios o imprimen

informes, etc.

Los formularios Access son versátiles: permiten realizar tareas que no son posibles en las

hojas de datos Tabla o Consulta. Es posible validar las entradas en base a información

contenida en otras tablas distintas a la editada. Se pueden crear formularios que incorporen

otros formularios (subformularios). Además, desde un formulario, es posible realizar cálculos

y mostrar totales.

44 

Page 45: Curso access

Corpus Ruiz Fernández 

Los controles

Son los objetos que utilizamos para crear los formularios e informes y distribuyen la información

en la pantalla.

Etiqueta : Presenta un texto descriptivo que ayuda al usuario a entender lo que

representan otros controles, como cuadros de texto o cuadro combinado.

Cuadro de texto :

o Dependientes: Se utiliza para presentar, modificar o introducir los registros de

las tablas (cuadro de texto dependiente).

o Independientes: Se utiliza para presentar los resultados de un cálculo o para

aceptar la entrada de datos de un usuario. No se almacenan en las tablas sino

en la memoria del ordenador.

Grupo de opciones : Se utiliza junto con las casillas de verificación, los botones de

opción o botones de alternar para presentar un conjunto limitado de alternativas que hace

que el usuario sólo tenga que hacer clic en el valor que desee –sólo se puede seleccionar

una opción del grupo a la vez. Las opciones deben de ser pocas, en caso contrario es mas

aconsejable utilizar un cuadro de lista o cuadro combinado.

Botón alternar, botón de opción y casilla de verificación : Se utilizan

para añadir una nueva opción a un grupo de opciones ya creado o para presentar un campo

booleano (Sí/No) –si el botón o casilla aparece marcado el valor del campo es Sí.

Cuadro combinado : Se utiliza para seleccionar un valor de una lista, que puede

contener datos de una tabla o valores que hayamos añadido al crearlo. También asegura

que la información que se ha introducido en el campo es correcta. Puede tener una o más

columnas.

Cuadro de lista : Idem que el cuadro combinado a diferencia que los valores

aparecen desplegados en todo momento.

Botón de comando : Permite ejecutar una acción con un simple clic como abrir un

formulario, añadir un registro o ejecutar una macro.

Imagen : Para insertar una imagen que no variará al cambiar de registro, como un

logo.

Marco de objeto independiente : Para insertar controles como un archivo de

sonido, un documento Word, etc. No varían al cambiar de registro.

Marco de objeto dependiente : Idem que el anterior pero que varían en cada

registro.

45 

Page 46: Curso access

Access Avanzado 2003 

Salto de página : Sólo tiene efecto en la Vista preliminar de un formulario y a la

hora de imprimir.

Control ficha : Sirve para presentar registros con muchos campos que no caben

en una sola pantalla y queremos organizarlos en varias fichas.

Subformulario/Subinforme : Para insertar un subformulario o un subinforme.

Importante cuando se quiere representar una relación uno a varios.

Línea : Para insertar una línea.

Rectángulo : Para insertar un rectángulo.

Controles más complejos .

Nota: Para añadir un control a un formulario hay que elegirlo del cuadro de herramientas y hacer clic en el lugar del formulario donde se quiere insertar.

Formas de crear formularios

Utilizando el asistente: Permite diseñar formularios con un formato estándar de una

forma rápida. Puede contener campos de varias tablas o consultas.

Autoformularios: Elabora un formulario sencillo con campos de una sola tabla sin pedir

ninguna información al usuario.

Vista diseño: Para crear formularios desde cero. Sólo recomendable para expertos en

el caso de que el asistente no satisfaga los requerimientos de los usuarios.

Nombre que se le van a dar a los formularios

GestionFuncionario: Para añadir o modificar registros en la tabla Funcionario. Basado

en la consulta ConGestionFormulario.

GestionCurso: Para añadir o modificar registros en la tabla Curso. Basado en la

consulta ConGestionCurso.

GestionSolicitud: Para añadir o modifcar registros en la tabla Solicitud. Basado en la

consulta ConGestionSolicitud.

Curso: Para visualizar los cursos. Contiene un subformulario que lista los funcionarios

que los han solicitado. Basado en la consulta ConCurso.

Funcionario: Para visualizar los funcionarios. Contiene un subformulario que lista los

cursos que han solicitado. Basado en la consulta ConFuncionario.

Solicitud: Para visualizar las solicitudes. Basado en la consulta ConSolicitud y desde

el que se podrá exportar e imprimir los valores de los campos en un documento o plantilla

de Microsoft Word.

46 

Page 47: Curso access

Corpus Ruiz Fernández 

SubCurso: Subformulario asociado al formulario principal Funcionario. Basado en la

consulta ConSubCurso.

SubFuncionario: Subformulario asociado al formulario principal Curso. Basado en la

consulta ConSubFuncionario.

Nota: Antes de crear un formulario, crearemos la consulta en la que se va a basar.

Creación de formularios mediante el asistente

Es el que más se utiliza, ya que no es tan rígido como los autoformularios ni tan laborioso como

el realizado en Vista diseño. Facilita muchos pasos tediosos y permite una posterior

personalización. Esta forma de creación de formularios optimiza y, a su vez, minimiza el acceso

a los datos, sobre todo cuando se trabaja en un sistema de red.

El formulario GestionSolicitud

Como todo formulario va a estar basado en una consulta, debemos de empezar por crearla y

que llamaremos ConGestionSolicitud:

Identificar qué campos vamos a utilizar en el formulario.

Tabla Campos

Solicitud Todos (en los formularios que se utilizan para añadir o modificar registros se añaden todos los campos de la tabla que se va a gestionar.)

Funcionario Nombre, Primer apellido, Segundo apellido y Domicilio.

Localidad CP y Localidad

Curso Nombre

Crear la consulta añadiendo los campos y guardarla como ConGestionSolicitud.

Una vez creada la consulta, vamos a crear nuestro primer formulario –GestionSolicitud-

utilizando el asistente.

47 

Page 48: Curso access

Access Avanzado 2003 

Nota: Si queremos que nuestra base de datos recoja información sobre el número de horas de cada curso se tendrá que añadir otro campo (Horas) a la tabla Solicitud.

Una vez abierta la base de datos y situados en el objeto Formulario, los pasos a seguir son los

siguientes:

Pulsar el botón para abrir el asistente y seleccionar Asistente para formularios y clic en Aceptar.

En Tabla/Consultas, seleccionar la consulta antes creada –ConGestionSolicitud- y

añadir todos los campos pulsando y Siguiente.

48 

Page 49: Curso access

Corpus Ruiz Fernández 

Elegimos, como forma de distribuir los campos en el formulario, la opción Justificado.

Cualquiera de los estilos a aplicar, por ejemplo Estándar.

Damos el nombre de GestionSolicitud al formulario y activamos la opción de Modificar el diseño del formulario para ir al modo diseño. Se termina pulsando Finalizar.

49 

Page 50: Curso access

Access Avanzado 2003 

Quizás parezca algo difícil de entender lo que vemos en pantalla en el modo diseño del

formulario, pero no es más que el esquema. Básicamente se compone de tres partes:

Encabezado: Representa lo que aparece en la parte superior y se utiliza para insertar

texto o una imagen que proporcione información sobre lo que hace el formulario.

Detalle: Zona donde aparecen los nombres de los campos dentro de unos recuadros.

Con hacer clic y arrastrar el ratón podrás moverlos a cualquier parte de la zona Detalle y

modificar su posición en la pantalla.

Pie: Para mostrar información como el número de página o la fecha.

Para aumentar el tamaño de la altura de cada una de estas partes hay que situar el puntero del

ratón entre la línea que las divide hasta que el curso del ratón aparezca como . Pulsar

botón izquierdo del ratón y desplazarlo hacia abajo o hacia arriba para darle para aumentra o

disminuir la altura.

50 

Page 51: Curso access

Corpus Ruiz Fernández 

Por último, vamos eligiendo los diferentes objetos del formulario y situándolos donde mejor

veamos, así como añadiendo nuevos objetos.

El formulario Solicitud

Lo utilizaremos para visualizar las solicitudes presentadas. Tanto la creación de la consulta –

ConSolicitud- como del formulario son similares a los anteriores. Sólo varía el modo de

presentación y distribución de los campos.

51 

Page 52: Curso access

Access Avanzado 2003 

Agregar un campo a un formulario

Puede agregar rápidamente campos a un formulario o informe mediante el panel Lista de campos.

Para ver u ocultar la lista de campos ir a Ver Lista de campos.

52 

Page 53: Curso access

Corpus Ruiz Fernández 

Sólo hay que arrastrar uno de los campos que aparecen en la lista hasta el formulario o

informe y Access crea automáticamente el control apropiado para mostrar el campo, como

cuadro de texto o cuadro combinado y después enlaza el control a ese campo. El tipo de

control creado depende de cual esté seleccionado en el cuadro de herramientas.

Si el campo a añadir no está incluido en la lista de campos es porque no se añadió a la

consulta. Para que aparezca, hay que editar la consulta –ConGestionSolicitud- y añadirlo.

Orden de tabulación

El orden de tabulación define el orden en el que un usuario se mueve por los controles y, por

defecto, es siempre el orden por el que se han añadido al crear la consulta.

Para comprobar si es el correcto, editamos el cuadro de diálogo Orden de tabulación desde el

modo diseño haciendo clic con el botón derecho del ratón en el formulario y fuera de los

objetos .

Seleccionamos las filas haciendo clic y arrastramos el campo al lugar deseado. Al final tiene

que quedar así:

Establecer controles como de sólo lectura

Como se puede observar, los campos con fondo amarillo no pertenecen a la tabla Solicitud

por lo que deberemos de marcarlos como de sólo lectura para evitar modificarlos. Para ello,

hay que poner a Sí en la propiedad Bloqueado y No en la propiedad Activado.

53 

Page 54: Curso access

Access Avanzado 2003 

Evitar aprender códigos

Si añadimos un registro directamente desde GestionSolicitud vemos que al introducir el

Código del Curso debemos escribir el código que tiene asignado en el campo Codigo de la

tabla Curso.

Podemos evitar memorizar dichos códigos y facilitar la introducción de datos en ese campo

creando un control de cuadro combinado siguiendo los siguientes pasos:

Desde el modo diseño y teniendo activado el asistente para controles del cuadro de

herramientas, seleccionamos el control cuadro combinado y hacemos clic en el

lugar del formulario donde queremos crearlo.

Se abrirá el Asistente para cuadros combinados. Pulsamos siguiente una vez

comprobado que hemos elegido la opción siguiente:

Elegimos la tabla Curso que será la que proporcione los valores para el cuadro

combinado y clic en Siguiente.

54 

Page 55: Curso access

Corpus Ruiz Fernández 

Seleccionamos los campos Codigo y Nombre de la tabla Curso para que aparezcan en

el cuadro combinado. El campo Codigo contiene la información a almacenar en el

campo CodigoCurso de la tabla Solicitud y el campo Nombre posee información del

nombre del curso que nos ayudará a elegir el código.

Ordenamos la lista por el campo Nombre.

Podemos ocultar o no la columna clave (campo Codigo). En nuestro caso no la

ocultaremos.

55 

Page 56: Curso access

Access Avanzado 2003 

Se selecciona el campo Codigo como el valor a guardar en el campo CodigoCurso de

la tabla Solicitud.

Se almacena el valor seleccionado en el campo CodigoCuso de la tabla Solicitud.

Se le da un nombre a la etiqueta que acompaña al cuadro combinado –Codigo Curso.

56 

Page 57: Curso access

Corpus Ruiz Fernández 

Se borra el cuadro de control Codigo Curso para evitar información duplicada, se diseña a

gusto el cuadro combinado y se coloca en el lugar adecuado.

Que en el modo Vista aparecerá así:

Nota: Para añadir un campo que no esté en la consulta, habrá que editar ésta y añadir dicho campo a la misma. Por ejemplo, si por error no se hubiera añadido a la consulta el campo Localidad de la tabla Localidad y fuera necesario presentarla en el formulario habría que editar la consulta y añadir dicho campo.

57 

Page 58: Curso access

Access Avanzado 2003 

Propiedades de un formulario

Para visualizar las propiedades de cualquier objeto hay que situarse en él. Si no aparece un

cuadro de diálogo con sus propiedades hay que hacer clic en el icono o ir a Ver

Propiedades.

Están agrupadas en categorías:

Ficha formato: Presenta características sobre la apariencia del formulario

o Vista predeterminada: Especifica la presentación inicial del formulario

Un único formulario: Muestra un solo registro por pantalla

Formularios continuos: Muestra tantos registros como quepan en la

pantalla.

Hoja de datos: Muestra los campos como la vista de hoja de datos.

o Selectores de registros: Pequeño cuadro o barra colocado a la izquierda de

un registro en el que se puede hacer clic para seleccionar todo el registro.

o Botones de desplazamiento: Botones para desplazarse por los registros.

o Separadores de registros: Se suele utilizar cuando la vista predeterminada es

la de formularios continuos.

58 

Page 59: Curso access

Corpus Ruiz Fernández 

Ficha datos: Características sobre la procedencia de los datos, permisos, filtros y

ordenación.

o Origen del registro: Indica la tabla o consulta de donde se sacan los datos

que se visualizan en el formulario.

o Filtro: Permite poner una condición para filtrar registros del origen.

o Permitir filtros: Da la posibilidad o no de poder permitir filtros.

o Permitir ediciones: Se podrá o no realizar cambios en los datos que aparecen

en el formulario. Si está establecida a No sólo se podrán visualizar.

o Permitir eliminaciones: Permite o no eliminar registros desde el formulario.

o Permitir agregar: Permite o no agregar registros desde el formulario.

o Entrada de datos: Sólo tiene efectos cuando la anterior propiedad está

establecida a Sí. El formulario se abre presentando sólo un registro en blanco.

Ficha otras:

o Emergente: Un formulario es emergente cuando permanece encima de otras

ventanas. Puede ser modal o no.

o Modal: Un formulario abierto como modal debe de cerrarse si se quiere pasar

a otro formulario. Los cuadros de diálogo y los mensajes suelen ser modales.

o Ciclo: Permite establecer qué sucede cuando se pulsa la tecla TAB y el

enfoque se encuentra en el último campo de un formulario.

Todos los registros: Pasaremos al siguiente registro.

Registro activo: Volvemos al primer campo del registro.

Página activa: Regresamos al primer campo de la página.

Hacer referencia a los controles de un formulario o informe

Para hacer referencia al valor de un control de un formulario se escribe el identificador del

formulario o informe que contiene el control, seguido del operador ! y del nombre del control.

59 

Page 60: Curso access

Access Avanzado 2003 

Para saber el nombre del control del campo Domicilio edite sus propiedades (clic en el control

y Ver Propiedades. La propiedad Nombre de la ficha Otras es el nombre del control:

Como el nombre del formulario es Solicitud, la referencia al control Domicilio sería la siguiente:

Formularios ! [GestionSolicitud] ! [Domicilio]

Exportar registros utilizando el Filtro por formulario

Con frecuencia, se producirán situaciones en las que los datos estén almacenados en Access y

necesitemos utilizarlos desde un archivo Word para combinarlos. En este caso, exporte el

contenido de la base de datos de Access a una hoja de cálculo de Excel y después combine la

correspondencia utilizando el archivo de Excel con los datos exportados.

Los pasos a seguir son los siguientes:

Identificar los datos que se desea exportar: Buscar el objeto formulario que contiene los

datos que se desea exportar. En el ejemplo, el formulario Solicitud basado en la

consulta ConSolicitud.

Abrir el objeto que contiene los datos y realizar una búsqueda utilizando el Filtro por

formulario .

60 

Page 61: Curso access

Corpus Ruiz Fernández 

Un filtro por formulario permite establecer condiciones de filtrado algo más complejas

utilizando condiciones o criterios de selección en cada uno de los controles que contiene el

formulario

Establecer los criterios. Por ejemplo, solicitudes del curso Approach que se han

impartido en el 2002.

Aplicar el filtro haciendo clic en el icono aplicar filtro .

Clic en Archivo Exportar… y elegir el tipo de archivo de Excel para exportar los

datos. Darle un nombre a la hoja de cálculo.

Nota: La combinación de correspondencia desde Word se puede utilizar usando como origen de los datos el archivo Excel anteriormente exportado.

61 

Page 62: Curso access

Access Avanzado 2003 

62 

Page 63: Curso access

Corpus Ruiz Fernández 

Ejercicios

Crear un formulario para gestionar los cursos –GestionCurso- y los funcionarios –GestionFuncionario- que los solicitan basándose en las consultas ConGestionCurso y ConGestionFuncionario. Establecer el orden de tabulación.

63 

Page 64: Curso access

Access Avanzado 2003 

64 

Page 65: Curso access

Corpus Ruiz Fernández 

Subformularios

65 

Page 66: Curso access

Access Avanzado 2003 

66 

Page 67: Curso access

Corpus Ruiz Fernández 

Introducción

Un subformulario es un formulario que se inserta en otro. El formulario primario se denomina

formulario principal, y el formulario dentro del formulario se denomina subformulario. Una

combinación formulario/subformulario se denomina a menudo formulario jerárquico, formulario

principal/detalle o formulario principal/secundario.

Los subformularios son muy eficaces cuando se desea mostrar datos de tablas o consultas

con una relación uno a varios. Por ejemplo, puede crear un formulario con un subformulario

para mostrar los cursos que ha hecho un funcionario. Los datos de la tabla Funcionario es el

lado “uno” de la relación y los datos de la tabla Solicitud constituyen el lado “varios” de la

relación, ya que cada funcionario puede haber presentado más de una solicitud.

En la imagen, podemos observar que el funcionario Manuel Ruiz Fernández ha solicitado los

cursos de Approach y Word.

Nota: Aunque un subformulario, al igual que el formulario principal, pued estar basado en tablas y en consultas, para aumentar la efectividad en nuestro proyecto se crearán subformularios basados en consultas, aunque vamos a ver inicialmente cómo crear a la misma vez formulario y subformulario a partir de tablas.

Repaso de lo hecho hasta ahora

Hasta ahora, hemos diseñado tres formularios con sus correspondientes consultas.

Formulario Descripción Consulta asociada GestionSolicitud Para añadir o modificar registros de la tabla Solicitud. ConGestionSolicitud

GestionFuncionario Para añadir o modificar registros de la tabla Funcionario. ConGestionFuncionario

GestionCurso Para añadir o modifica registros de la tabla Curso ConGestionCurso

Solicitud Para visualizar registros de la tabla Solicitud ConSolicitud

67 

Page 68: Curso access

Access Avanzado 2003 

Crear formulario y subformulario al mismo tiempo

Utilizando el asistente para formularios vamos a crear a la misma vez un formulario y un

subformulario. El formulario contendrá información sobre los funcionarios y el subformulario

datos sobre los cursos solicitados.

Elegir qué datos vamos a presentar tanto en el formulario como en el subformulario.

Tabla Campos Funcionario DNI, Nombre, Primer apellido, Segundo apellido, Domicilio y CodigoPueblo

Localidad Código Postal y Localidad

Solicitud DNI, Fecha del curso, número de horas y Aceptada

Curso Nombre del curso

Desde el asistente para formularios, añadir todos los campos anteriores.

Hay que seleccionar por Funcionario, ya que queremos visualizar los cursos que ha

hecho un funcionario, y Formulario con subformulario.

68 

Page 69: Curso access

Corpus Ruiz Fernández 

Elegir Tabular como distribución a aplicar al subformulario para así poderle añadir

también controles como botones.

Indicar el título para el formulario –Formulario ejemplo- como para el subformulario –

Subformulario Ejemplo.

Diseñar el formulario principal y el subformulario y distribuir los campos a nuestro gusto

y establecer el orden de tabulación

Establecer como de sólo lectura todos los campos del subformulario para evitar

modificarlos. Idem para los campos del formulario principal que no pertenezcan a la

tabla Funcionario -CP y Localidad.

69 

Page 70: Curso access

Access Avanzado 2003 

Crear subformularios basado en consultas

Queremos construir un formulario que sea capaz de presentarnos en cada registro un

funcionario y, relacionado con éste, otro que permita visualizar la relación de cursos que ha

solicitado.

Por tanto, hay que crear un formulario principal –Funcionario- y un subformulario –SubCurso-

siguiendo estos pasos:

Crear las consulta en la que se van a basar el formulario principal y el subformulario.

Crear el formulario principal basado en su consulta asociada.

Crear el subformulario basado en la consulta asociada.

Insertar el subformulario en el formulario principal.

Eliminar del subformulario el control DNI ya que esa información la tenemos repetida en

el formulario principal.

Consulta del formulario principal: ConFuncionario

A esta consulta la llamaremos ConFuncionario y será idéntica que la consulta

ConGestionFuncionario que ya hemos construido. Por tanto, por no partir desde el inicio,

podemos copiarla y después darle su nombre siguiendo estos pasos:

Ir al objeto consultas, hacer clic con el botón derecho en ConGestionFuncionario y

elegir copiar.

70 

Page 71: Curso access

Corpus Ruiz Fernández 

Botón derecho Pegar. En el cuadro de diálogo dar el nombre a la consulta:

ConFuncionario.

Consulta del subformulario: ConSubCurso

Merece la pena dedicarle tiempo a este primer paso ya que contendrá la información que hay

que presentar, en nuestro caso una relación de los cursos solicitados. Recordemos que las

relaciones entre las tablas del proyecto son las siguientes:

La relación entre las tablas Funcionario y Solicitud es de uno a varios. El formulario principal

representa la parte “uno” y el subformulario la parte “varios”.

La información de la parte varios no tiene por qué ser todos los campos de la tabla Solicitud,

sino la más representativa para nosotros, como la fecha de realización del curso, su duración o

si la solicitud ha sido o no aceptado, y lo principal: ¡Cómo se llama el curso!

Para representar el nombre del curso tenemos dos opciones:

Mediante el campo CodigoCurso de la tabla Solicitud o mediante el campo Nombre

de la tabla Curso. El más representativo y descriptivo es éste último.

Otro campo que hay que añadir es el campo que representa la clave ajena de la tabla

Solicitud –DNI- para poder vincular el formulario principal y el subformulario en el último paso.

Resumiendo, la consulta se llamará ConSubCurso y constará de estos campos:

71 

Page 72: Curso access

Access Avanzado 2003 

Tabla Campos Solicitud DNI, FechaCurso, Horas y Aceptada

Curso Nombre

El formulario principal Funcionario

Una vez abierto el asistente, se seleccionan todos los campos de la consulta

ConFuncionario en Tablas/Consultas y se pulsa Siguiente.

Se selecciona distribución justificada y clic en Siguiente.

72 

Page 73: Curso access

Corpus Ruiz Fernández 

Se elije cualquier formato, por ejemplo estándar, y se le da el nombre de Funcionario.

El diseño del formulario se retoca para que quede más presentable:

El subformulario SubCurso

Abrimos el Asistente para formularios y seguimos estos pasos:

Elegir en Tablas/Consultas la consulta creada anteriormente –ConSubCurso- y añadir

todos los campos que contiene. Pulsar Siguiente.

73 

Page 74: Curso access

Access Avanzado 2003 

Como queremos un listado de las solicitudes, elegimos –como forma de ver los datos-

por Solicitud y clic en Siguiente.

Se elige distribución tabular para presentar los registros en filas y clic en Siguiente.

74 

Page 75: Curso access

Corpus Ruiz Fernández 

Se le aplica el estilo Estándar y se le da el nombre de SubCurso.

El subformulario tendrá un aspecto similar a este, al ser de distribución tabular. Se utilizará

para visualizar registros por lo que todos sus campos serán de sólo lectura.

Insertar el subformulario en el formulario principal

Con el formulario principal abierto en modo Diseño, activar el Asistente para controles

del cuadro de herramientas y el control Subformulario/Subinforme:

Hacer doble clic en el lugar del formulario principal donde queremos insertar el

subformulario. Se abrirá el asistente para controles que nos irá guiando para crear el

subformulario.

Elegimos el subformulario creado anteriormente y clic en Siguiente.

Definimos los campos que relacionan las tablas Funcionario y Solicitud –DNI en las

dos tablas. Pulsar Siguiente.

75 

Page 76: Curso access

Access Avanzado 2003 

Por último se le da un título, por ejemplo: Cursos Solicitados, y finalizamos haciendo

clic en Finalizar. No hay que confundir el título y el nombre del subformulario.

Para evitar duplicidad de información, eliminamos del subformulario el campo DNI. Establecemos como de sólo lectura los demás campos del subformulario. Quedará en

modo Vista así:

Nota: A todos los formularios creados se le pueden añadir botones a través de los cuales se podrán realizar acciones sencillas como añadir o modificar registros, ir a otros formularios, etc. Veremos cómo se hace cuando tratemos las macros.

Función de nuestros formularios en el proyecto

Formulario Funcionario: Sólo para visualizar los datos de los funcionarios -todos los

campos con la propiedad Activado=No y la propiedad Bloqueado=Si. Se impedirá que

desde él se puedan añadir, modificar o eliminar registros –para esas acciones tenemos

el formulario GestionFuncionario. Tiene agregado el subformulario SubCurso, que

76 

Page 77: Curso access

Corpus Ruiz Fernández 

lista los cursos pedidos por cada funcionario.

Formulario Curso: Para visualizar datos de los cursos que se han podido solicitar hasta

ahora en la Dirección Provincial –idem que el anterior respecto a las propiedades

Activado y Bloqueado . Se impedirá que desde él se puedan añadir, modificar o

eliminar registros. Tiene agregado el subformulario SubFuncionario.

Subformulario SubCurso: Todos los campos como sólo lectura y sólo para visualizar los

cursos solicitados por los funcionarios.

Subformulario SubFuncionario: Todos los campos como sólo lectura y sólo para

visualizar los funcionarios que han presentado un determinado curso.

77 

Page 78: Curso access

Access Avanzado 2003 

78 

Page 79: Curso access

Corpus Ruiz Fernández 

Ejercicios

Crea un formulario -Curso- que visualice información sobre los cursos que se pueden

impartir en la Dirección Provincial y un subformulario –SubFuncionario- con datos sobre los

funcionarios que han solicitado cada uno de los cursos.

Inserta el subformulario en el formulario principal

Nota: Tanto el formulario principal como el subformulario tienen que estar basados en

consultas.

Nota: Observese que en el subformulario hay un campo calculado: Nombre y apellidos

79 

Page 80: Curso access

Access Avanzado 2003 

80 

Page 81: Curso access

Corpus Ruiz Fernández 

Macros

81 

Page 82: Curso access

Access Avanzado 2003 

82 

Page 83: Curso access

Corpus Ruiz Fernández 

Introducción

Las macros son un método sencillo para realizar una o más tareas básicas como abrir un

formulario o imprimir un informe. Las macros pueden ayudar a automatizar las tareas comunes.

Por ejemplo, puede ejecutar una macro que imprima un informe cuando el usuario haga clic en

un botón de comando.

Una macro puede ser una macro compuesta de una secuencia de acciones, o puede ser un

grupo de macros. También se puede usar una expresión condicional para determinar si se

llevará a cabo una acción en algunos casos cuando se ejecute la macro.

Si guardamos la macro con el nombre de AutoExec, cada vez que se abra la base de datos se

ejecutará automáticamente ya que Access al arrancar comprueba si existe una macro con ese

nombre. Si la encuentra será el primer objeto que se ejecute antes de lanzar cualquier otro.

Por defecto, sólo se visualizan las columnas Acción y Comentario. Para mostrar Nombre de macro y Condición vaya al menú ver.

Nombre de macro: Identifica el nombre de la macro dentro de un grupo de macros.

Condición: Expresión condicional para determinar la ejecución o no de una acción.

Acción: Se utiliza para especificar una acción que desea que ejecute una macro. Para

especificar la acción de una macro haga clic en la celda acción y seleccione una acción de

la lista.

Comentario: Texto para describir lo que hace la acción.

Al seleccionar una acción aparece en la parte inferior sus. Por ejemplo, al elegir la acción

AbrirFormulario los argumentos que aparecen son los siguientes:

Crear botones en Funcionario

Abrir, en modo diseño, el formulario Funcionario.

Visualizar Cuadro de herramientas y desactivar asistente para controles .

Selecciona el control .

83 

Page 84: Curso access

Access Avanzado 2003 

Clic en el lugar del formulario donde se desea crear el botón.

Darle nombre y tamaño al botón.

Mostrar las propiedades del botón y asociar una macro al evento Al hacer clic –por ejemplo,

Funcionario.Añadir que añade un registro de la tabla Funcionario.

Crear los demás botones siguiendo los mismos pasos anteriores.

El formulario principal quedaría diseñado así:

Al pulsa los botones se ejecuta la macro asociada.

84 

Page 85: Curso access

Corpus Ruiz Fernández 

Crear un macro

Podríamos definir una macro que abra el formulario GestionFuncionario, para agregar un nuevo

registro, cuando el usuario haga clic en un botón.

Es fácil, tienes que ir al objeto Macro de la base de datos y hacer clic en . Se abrirá la

ventana de diseño desde la que se irán seleccionando las acciones que deberán ejecutarse de

entre las existentes en la lista desplegable:

En la columna comentario se describe para qué sirve la acción.

Una vez elegida la acción, en la parte inferior aparecen sus opciones:

Donde:

Nombre del formulario es el formulario que queremos abrir. Hay que hacer clic en la fila

y seleccionarlo de la lista que aparece.

Vista especifica el modo en que se abre el formulario (formulario, diseño, vista

preliminar, etc.)

Nombre del filtro a aplicar al abrir el formulario.

Condición: Expresión SQL que se ejecuta para seleccionar los registros que cumplen la

condición. Se genera con el generador de expresiones haciendo clic en …

Modo de datos, para especificar el modo de entrada de datos:

o Agregar: Abre el formulario para agregar un nuevo registro.

o Modificar: Abre el formulario para modificar un registro.

o Sólo lectura: Los registros aparecen en modo lectura y no se pueden modificar

los campos.

Modo de la ventana: Especifica el modo en que se abrirá el formulario:

o Normal: Propiedad establecida por defecto.

o Oculta: Abre pero no muestra el formulario.

85 

Page 86: Curso access

Access Avanzado 2003 

o Icono: Abre el formulario y lo minimiza.

o Diálogo: Formulario modal (debe de cerrar el formulario para poder hacer clic

fuera de él) y emergente (permanece por encima de otras ventanas de la

aplicación.)

Se pueden añadir tantas acciones como queramos pero debiéndolas colocar en el orden por el

que deseamos que se ejecuten. Para insertar o eliminar acciones se utilizan los botones

insertar o eliminar filas. Cuando se termina la macro puede guardarse o

ejecutarse .

Grupo de macros

Cuando se tienen varias macros –como será el ejemplo de nuestro proyecto- puede resultar

dificultoso localizar una macro. Para solucionar este problema se crean grupos de macros para

reunir las que están relacionadas.

Se crearán grupos de macros con el nombre del objeto desde el que se ejecuta. Por ejemplo,

todas las macros que se ejecutan desde el formulario GestionFuncionario estarán contenidas

en el grupo de macros GestionFuncionario.

Para hacer referencia a una macro contenida en un grupo de macro hay que especificar el

nombre del grupo y de la macro separados por un punto. Por ejemplo, la macro AñadirRegistro

del grupo GestionFuncionario tendrá la referencia GestionFuncionairo.AñadirRegistro.

El nombre en la columna Nombre de macro identifica a cada macro. Cuando se ejecuta una

macro en un grupo de macros, Access lleva a cabo la acción de la columna acción y

cualquiera otra que siga inmediatamente con una columna Nombre de macro en blanco.

El grupo Funcionario

Compuesto por todas las macros que se van a ejecutar desde el formulario Funcionario –que

lleva incrustado el subformulario SubFormulario.

Botón Macro asociada Acciones Modificar Modificar Abre el formulario GestionFuncionario para añadir un

nuevo registro.

Añadir Añadir Abre el formulario GestionFuncionario para modificar un registro.

Buscar Buscar Realiza búsquedas por el DNI.

86 

Page 87: Curso access

Corpus Ruiz Fernández 

Macro Añadir

El formulario que utilizamos para añadir nuevos funcionarios es GestionFuncionario. Por

tanto, la acción que se ejecutará al hacer clic en el botón será abrir el formulario con

estos argumentos:

Modo de datos = Agregar porque vamos a añadir un registro

Modo de la ventana = Diálogo para que se abra el formulario no pueda desplazarse a otro objeto hasta que no se cierre y la información que se muestre permanezca encima de las demás ventanas de Access.

Macro Modificar

Para modificar registros de la tabla Funcionario también usaremos el formulario

GesitonFuncionario. La acción a ejecutar una vez se haga clic en consistirá en abrir

el formulario especificando estos argumentos:

87 

Page 88: Curso access

Access Avanzado 2003 

Modo de datos = Modificar ya que modificaremos un registro.

Condición WHERE = [Funcionario] ! [DNI] = [Formularios] ! [Funcionario] ! [DNI] ya que queremos presentar en el formulario GestionFuncionario el funcionario cuyo DNI

sea igual al que tenemos visualizado en el formulario Funcionario.

Macro Buscar

Útil para búsquedas basadas en el DNI de los funcionarios –clave principal. Puede ocurrir que

se encuentren o no registros, de ahí que para que se ejecute o no la acción deberá evaluarse

una expresión condicional. Si la condición es verdadera, Access lleva a cabo la acción en esa

fila y cualquiera de las acciones inmediatamente posteriores que vayan precedidas por puntos

suspensivos (…) en la columna Condición.

Habrá que añadir al formulario Funcionario otro botón más para que lleve a cabo estas

acciones y un control de texto independiente –no vinculado a ningún campo de las

tablas y que llamaremos VarBuscar- donde introduciremos el DNI a buscar.

El formulario Funcionario quedará así:

88 

Page 89: Curso access

Corpus Ruiz Fernández 

Para saber si en la búsqueda se ha encontrado o no registros se utiliza la función Dcont que

devuelve el número de registros hallados:

Si es igual a 0 No se ha hallado ningún registro y por tanto se presenta un mensaje

advirtiéndoselo al usuario.

Si es distinto de 0 Se presenta el registro hallado. Sólo se pueden encontrar como

máximo un registro ya que el DNI es clave principal de la tabla Funcionario y su valor –

recordémoslo- es único.

La sintaxis de la función DCont:

DCont(expr; dominio [; criterios] )

exp: Expresión requerida que identifica el campo por el que se desea contar los

registros DNI

dominio: Argumento requerido. Puede ser el nombre de una tabla o consulta

Funcionario

criterios: Opcional. Expresión de cadena utilizada para restringir el intervalo de los

datos en los que se ejecuta la función DCont.

[DNI] = [Formularios]![Funcionario]![VarBuscar]

Por tanto, las dos posibles condiciones son:

Si se ha encontrado algún registro:

DCont("[DNI]";"Funcionario";"[DNI] = [Formularios]![Funcionario]![VarBuscar]")>0

Por lo que entonces se ejecutará la acción AplicarFiltro con la condición [DNI] Como [Formularios]![Funcionario]![VarBuscar]

Que equivale a lo mismo que si hubiéramos aplicado un filtro por formulario y en el campo DNI hubiéramos introducido el valor que se ha introducido en el control independiente VarBuscar.

Si no se ha encontrado ningún registro:

DCont("[DNI]";"Funcionario";"[DNI] = [Formularios]![Funcionario]![VarBuscar]")=0

La acción a ejecutar será el mostrar todos los registros y mostrar un cuadro de mensaje informando de que no se ha encontrado ningún registro.

89 

Page 90: Curso access

Access Avanzado 2003 

La macro Funcionario.Buscar con las acciones antes comentadas:

Nota: El nombre del campo y la tabla deben de ir entre comillas y entre corchetes. El criterio entre comillas.

Resumen

El grupo Funcionario contiene tres macros –para añadir, modificar y buscar registros de la tabla

Funcionario.

.

El grupo Curso

Las acciones a llevar a cabo serán añadir y modificar registros. Se deja como ejercicio, sólo

hay que seguir los mismos pasos que cuando se crearon las macros del grupo Funcionario.

El grupo Solicitud

Una tarea muy útil a realizar desde este formulario es la exportación de registros para

combinarlos con un documento Word y la de imprimir directamente escritos de Word -

ahorrándose la tarea de la exportación- mediante código de Visual Basic.

Nota: Además, este grupo tiene las macros añadir, modificar y buscar, vistas en el grupo Funcionario así que no vamos a entrar en más detalles.

90 

Page 91: Curso access

Corpus Ruiz Fernández 

Macro Exportar

Ojo, antes de pulsar en el botón que ejecuta la macro hay que asegurarse de que se ha

aplicado un filtro por formulario para que sólo se exporten los registros que cumplan las

condiciones excepto cuando queremos hacer una exportación de todos los registros.

Para aplicar el filtro por formulario hay que hacer clic en e introducir las condiciones de

búsqueda en el formulario.

Opciones cuando se filtra por formulario:

Para realizar la exportación de registros se utiliza la acción SalidaHacia.

El tipo de objeto desde el que vamos a realizar la exportación es Formulario.

El nombre del formulario es Solicitud.

El tipo de archivo al que se va a exportar es Microsoft Excel 97-2003 (*.xls).

El archivo de Microsoft Excel donde se exportan los registros es misolicitud.xls. Si no

se especifica ningún directorio lo almacena en Mis Documentos.

91 

Page 92: Curso access

Access Avanzado 2003 

Autoinicio se ha puesto en No para no abrir el archivo misolicitud.xml.

Macro Imprimir

Cuando hay que imprimir un registro desde un formulario, una opción a la fusión es hacerlo con

Código Visual Basic:

Crear una plantilla en Microsoft Word en la que insertaremos el texto normal de un

escrito más unos campos personalizados (DNI, Nombre, Primer apellido, etc…) desde

Archivo Propiedades Personalizar. Por ejemplo, para el campo Localidad:

o Nombre: Localidad

o Tipo: Texto

o Valor: Texto que aparece en la plantilla cuando se insertar el campo.

Insertar los campos en el documento y guardarlo como plantilla (extensión dot.)

o Menú Insertar Campo, seleccionar el nombre de campo DocProperty,

seleccionar el nombre del campo a insertar en la plantilla y pulsar Aceptar.

92 

Page 93: Curso access

Corpus Ruiz Fernández 

Desde el evento Al hacer clic del botón Imprimir se hace clic en … para crear el

siguiente procedimiento:

Private Sub Comando38_Click()

Dim documento = "modelo.dot"

Dim directorio, strPROP

Dim Escrito As Object

directorio = Application.CurrentProject.Path

Set Escrito = CreateObject("Word.Application")

With Escrito

.Visible = False

.Documents.Add directorio & "\" & documento

End With

With Escrito.ActiveDocument

For Each strPROP In .CustomDocumentProperties

Select Case strPROP.Name

'Asignar campos Access a campos Word

Case "DNI": strPROP.Value = Me.DNI

Case "Nombre": strPROP.Value = Me.Funcionario_Nombre

Case "PrimerApellido": strPROP.Value = Me.PrimerApellido

Case "SegundoApellido": strPROP.Value=Me.SegundoApellido

Case "Domicilio": strPROP.Value = Me.Domicilio

Case "CP": strPROP.Value = Me.CP

Case "Localidad": strPROP.Value = Me.Localidad_Nombre

Case "Curso": strPROP.Value = Me.Curso_Nombre

Case "FechaEntrada": strPROP.Value = Me.FechaEntrada

Case "FechaCurso": strPROP.Value = Me.FechaCurso

Case "Horas": strPROP.Value = Me.Horas

End Select

Next

End With

With Escrito

.ActiveDocument.Fields.Update

.ActiveDocument.PrintOut

.ActiveDocument.Close SaveChanges:=wdDoNotSaveChanges

.Quit

End With

Set Escrito = Nothing

MsgBox "Documento generado"

End Sub

93 

Page 94: Curso access

Access Avanzado 2003 

Resumen

El grupo Solicitud contiene cuatro macros –para añadir, modificar, buscar y exportar registros.

El grupo Comun

En este grupo agregaremos las macros que van a ser comunes a dos o más formularios.

Vamos a incorporar en los formularios Funcionario, Solicitud y Curso un menú para que

podamos desplazarnos desde unos a otros. Para ello crearemos 3 macros comunes.

También se incluirá la macro Aceptar para confirmar las variaciones que se hagan al añadir o

modificar registros.

Macro Funcionario

Macro Curso

94 

Page 95: Curso access

Corpus Ruiz Fernández 

Macro Solicitud

Macro Aceptar

Al estar en blanco el Tipo de objeto se cierra la ventana activa.

95 

Page 96: Curso access

Access Avanzado 2003 

96 

Page 97: Curso access

Corpus Ruiz Fernández 

Formulario Curso

97 

Page 98: Curso access

Access Avanzado 2003 

Formulario Funcionario

98 

Page 99: Curso access

Corpus Ruiz Fernández 

Formulario Solicitud

99 

Page 100: Curso access

Access Avanzado 2003 

Formulario GestionCurso

100 

Page 101: Curso access

Corpus Ruiz Fernández 

Formulario GestionFuncionario

101 

Page 102: Curso access

Access Avanzado 2003 

Formulario GestionSolicitud

102 

Page 103: Curso access

Corpus Ruiz Fernández 

Formulario SubCurso

103 

Page 104: Curso access

Access Avanzado 2003 

Formulario SubFuncionario

104 

Page 105: Curso access

Corpus Ruiz Fernández 

ANEXO DE LAS ACCIONES MÁS UTILIZADAS

Acción Descripción AbrirConsulta Para abrir una consulta de entre las que se disponen.

AbrirFormulario Abre un formulario.

AbrirInforme Abre un informe.

AbrirTabla Abre una tabla.

BuscarRegistro Para buscar el primer registro que cumpla unas condiciones.

BuscarSiguiente Se posiciona en el registro siguiente que cumple los criterios indicados en la acción BuscarRegistro.

CancelarEvento Cancela el evento que ejecutó la macro que contiene esta acción.

Cerrar Cierra la ventana especificada o la activa si no se indica ninguna.

CuadroMsj Muestra mensajes para interactuar con el usuario.

DetenerMacro Detiene la macro que se está ejecutando.

DetenerTodasMacros Detiene todas las macros que se están ejecutando.

Eco Oculta o muestra los resultados de una macro mientras se ejecuta.

EjecutarMacro Ejecuta una macro. Útil para ejecutar una macro desde otra macro.

EstablecerValor Establece un valor para un control.

Guardar Guarda el objeto especificado o el activo si no se especifica su nombre.

Imprimir Imprime el objeto activo –hoja de datos, informes…

IraControl Mueve el cursos al control especificado.

IraRegistro Para ir a un registro determinado.

MostrarTodosRegistros Quitar el filtro aplicado y muestra todos los registros.

NuevaConsulta Vuelve a consultar un control especificado en el objeto activo o el objeto si no se especifica ningún control.

SalidaHacia Exporta los registros al formato especificado –Excel, Word, texto, html…

Salir Cierra Access.

105 

Page 106: Curso access

Access Avanzado 2003 

106 

Page 107: Curso access

Corpus Ruiz Fernández 

Ejercicios

Crear las macros para los formularios Curso y GestionCurso.

107 

Page 108: Curso access

Access Avanzado 2003 

108 

Page 109: Curso access

Corpus Ruiz Fernández 

INFORMES

109 

Page 110: Curso access

Access Avanzado 2003 

110 

Page 111: Curso access

Corpus Ruiz Fernández 

Introducción

El objeto informe se emplea para ofrecer una presentación personalizada de la información

pudiendo ordenarla, agruparla y resumirla en la forma deseada. También permite generar

totales de los datos numéricos. Se utilizan para sacar datos de una base de datos e imprimirla.

Un informe no es nada más que una forma elegante y dinámica de presentar una tabla o

consulta e imprimirlas. Tanto en su estructura como en su funcionamiento son prácticamente

idénticos a los formularios, aunque a través de informes no podemos modificar datos, sólo

presentarlos.

Formas de crear un informe

Asistente para informes o etiquetas: Permite diseñar informes con un formato

estándar de una forma rápida, ya que realizan automáticamente todo el trabajo básico.

Access irá planteando cuestiones y con los datos que proporciona el usuario, se irá creando

el informe.

Autoinformes: Elaboran un informe sencillo predefinido por Access sin pedir ninguna

información al usuario.

Vista diseño: Permite crear informes sin ayuda del asistente. Se parte de cero y solo

se recomienda su uso en el caso de que los asistentes no satisfagan los requerimientos del

usuario.

Crear informe con ayuda del asistente

Con el asistente se pueden crear informes con diseños variados. Tras haber seleccionado

Asistente para informes en la ventana de nuevo informe, debemos de seleccionar la tabla o

consulta con la que vamos a elaborar el informe. Tomando como ejemplo nuestro proyecto,

crearemos un informe que nos liste todos los funcionarios que han solicitado alguna vez algún

curso, por lo que nos basaremos en la consulta ConFuncionario.

111 

Page 112: Curso access

Access Avanzado 2003 

Cuando hay campos de más de una tabla en la consulta, Access nos da la opción de presentar

los datos por una de las tablas. En nuestro caso elegiremos por Funcionario.

Access nos da la opción de agrupar y ordenar los registros que se van a presentar en el

informe por uno o varios campos. Vamos a agruparlos por pueblos.

También tenemos la opción de calcular resúmenes de alguno de los campos que van a

presentarse en el informe –optamos por calcula la suma del campo Sueldo- pulsando el botón

112 

Page 113: Curso access

Corpus Ruiz Fernández 

Se finaliza eligiendo la distribución, estilo y nombre a dar al formulario –en pasos, corporativa

y Funcionario respectivamente.

Nota: Podríamos haber creado un campo calculado en la consulta ConFuncionario para presentar los apellidos y el nombre y haber añadido al informe éste campo y no los del nombre y apellidos.

Para personalizar el informe hay que situarse en modo Diseño. Aparecerá una ventana similar

a ésta:

113 

Page 114: Curso access

Access Avanzado 2003 

Elementos de un informe

Secciones principales

Encabezado del informe: Se imprime una vez al principio del informe. El encabezado

del informe se utiliza para la información que normalmente aparecería en una página de

portada, como un logotipo o un título y una fecha. El encabezado del informe se imprime

antes del encabezado de página. Cuando se coloca un control calculado en el encabezado

del informe, se calcula el valor para todo el informe. Por ejemplo, si se coloca un control que

utilice la función Suma en el encabezado del informe, se calcula la suma para todo el

informe.

Encabezado de página: Se imprime al principio de cada página. Se utiliza un

encabezado de página, por ejemplo, para repetir el título del informe en todas las páginas.

Encabezado de grupo: Se imprime al principio de cada grupo de registros y se utiliza

para imprimir el nombre del grupo. Por ejemplo, en un informe cuyos datos estén agrupados

por pueblos –como es nuestro ejemplo-, el encabezado de grupo se utiliza para imprimir el

nombre de los pueblos. Cuando se coloca un control calculado que utilice la función Suma

en el encabezado de grupo, la suma corresponde al grupo actual.

Detalle: Sección en la que aparecen los registros del origen del informe, que pueden

ser más de uno. Se imprime una vez por cada fila del origen del informe.

Pie de grupo: Se imprime al final de cada grupo de registros. Los pies de grupo se

utilizan para imprimir información de resumen de sus correspondientes grupos.

Pié de página: Se imprime al final de cada página. Los pies de página se utilizan para

imprimir números de página o información relativa a la página.

114 

Page 115: Curso access

Corpus Ruiz Fernández 

Pié de informe: Se imprime una vez al final del informe. Los pies del informe se utilizan

para imprimir los totales de los informes u otra información de resumen de todo el informe.

Opciones en un informe

Agrupar: Una de las opciones más importantes en un informe es la posibilidad de

mostrar los datos agrupados, seleccionando uno o varios subgrupos. Al agrupar datos

evitamos que aparezcan datos repetidos en nuestro informe.

Forzar salto de página en los encabezados de grupo: Cada grupo comienza en una

nueva página. En vista de diseño, seleccionar el encabezado de grupo y establecer la

propiedad Forzar nueva página

Agregar campos u otros controles a un informe existente

Cada campo, etiqueta, línea o imagen que se ve en un informe se ha creado mediante algún

tipo de control. El control más utilizado en un informe es el cuadro de texto, que suele

utilizarse para mostrar los datos del origen de registros subyacente del informe. Podemos crear

cuadros de texto que ya están enlazados con campos del origen de registros agregando

campos del panel Lista de campos, o bien, agregarlos al informe mientras trabaja en la vista

Diseño (pero, en ese caso, hay que enlazarlos a los campos del origen de registros). La vista

Diseño tiene como ventaja que se pueden agregar muchos otros tipos de controles, además de

los cuadros de texto dependientes, como rectángulos, saltos de página y gráficos. En esta

sección se describen ambos métodos de agregar controles a un informe.

Agregar campos a un informe existente

Desde la vista Diseño, asegurarse de que se muestra el panel Lista de campos –lista de todos

los campos que están disponibles para su colocación en el informe. Para ver el panel Lista de

campos pulsamos ALT + F8.

Para agregar campos desde el panel Lista de campos hay que seleccionarlos y arrastrarlos a la

sección del informe donde deseemos incluirlo. Al crear los campo, Access crea un cuadro de

115 

Page 116: Curso access

Access Avanzado 2003 

texto dependiente por cada uno de estos campos e incluye automáticamente un control de

etiqueta junto a cada uno de ellos.

Agregar o modificar el agrupamiento y la ordenación

Si ya tenemos un informe y queremos ordenarlo o agruparlo, o bien, modificar la ordenación o

el agrupamiento, desde el modo Diseño, mostramos el panel ordenar y agrupar haciendo clic

en Ver Ordenar y agrupar.

En Campo/Expresión indicamos los campos por los que queremos agrupar el informe y en

Orden el tipo de ordenación.

Encabezado de grupo: Para crear un encabezado de grupo de grupo para un campo.

Pie de grupo: Para crear un pie de página de grupo.

Agrupar en: Para especificar cómo agrupar datos en un campo por el tipo de datos.

El informe Listado Cursos

Utilizando el asistente vamos a crear un informe que liste los funcionarios que han solicitado

cada uno de los cursos que ha convocado la Dirección Provincial. Va a estar basado en la

consulta ConSolicitud. Pasos a seguir:

Creamos en la consulta un campo calculado que combine los apellidos y el nombre.

116 

Page 117: Curso access

Corpus Ruiz Fernández 

Apellidos y Nombre: [Primerapellido]+" "+[Segundoapellido]+", "+[Funcionario_Nombre]

Elegimos los campos de la consulta que queremos mostrar en el informe.

Elegimos ver los datos por curso.

Ordenamos por el campo calculado Apellidos y nombre.

117 

Page 118: Curso access

Access Avanzado 2003 

Aplicamos una distribución y estilo. Finalizamos dándole el nombre de Listado Cursos.

Por último, en modo diseño, se personaliza el informe.

Filtrado de datos en un informe

Los informes creados con el asistente nos ayudan a organizar e imprimir los cursos y los

funcionarios que lo han solicitado pero, normalmente, los usuarios querrán imprimir un

subconjunto de estos registros y no la totalidad, por lo que debemos de proporcionar un

método personalizado para seleccionar registros mediante la creación de un procedimiento

118 

Page 119: Curso access

Corpus Ruiz Fernández 

sencillo en Visual Basic que será asociado al evento clic de un botón del formulario Solicitud.

Tanto el formulario como el informe deberán de estar basados en la misma consulta.

Antes de crear el procedimiento, veamos qué hace el informe Solicitudes:

Lista todas las solicitudes presentadas hasta la fecha, agrupados por el nombre de los

cursos.

Todos los funcionarios que han solicitado algún curso aparecen en el informe sin

distinguir si lo han hecho o no. Esto sería útil si quisiéramos listar todos los cursos y los

funcionarios que lo han solicitado. Pero a medida que la base de datos de nuestro proyecto

crece, el informe ocupa más páginas y los usuarios necesitan un sistema para imprimir sólo

aquellas páginas que les interesen.

Para filtrar datos desde un formulario a un informe –basados en la misma consulta- hay que

seguir estos pasos:

Se abre en modo diseño el formulario Solicitud y se le añade el botón .

Al evento clic del botón se le asocia este procedimiento:

DoCmd.OpenReport "Listado Cursos", acViewPreview, , Me.Filter

Siguiendo estos pasos:

o Editar las propiedades del botón en modo diseño e ir a la ficha Eventos.

o En el evento Al hacer clic, pulsar en … y elegir Generador de código. Pulsar

Aceptar.

o Escribir el código anterior en el procedimiento a crear.

119 

Page 120: Curso access

Access Avanzado 2003 

Ahora, cuando desde el formulario Solicitud se realiza un filtro por formulario y pulsar el

botón se presenta el informe con los registros que sólo cumplen las condiciones

del filtrado. Por ejemplo, el listado de las solicitudes del curso Microsoft Word que han sido

aceptadas:

El informe Listado funcionarios

Vamos a crear un informe que liste los cursos que ha solicitado cada uno de los funcionarios de

la Dirección Provincial –agrupación por el campo Funcionario- y que resuma el total de horas

de todos los cursos solicitados por el funcionario. Se hará a través del asistente y basado en la

consulta ConSolicitud y los registros estarán ordenador por la fecha en que se solicitó.

Los pasos a seguir son similares a los del anterior formulario más la opción de calcular los

valores de resumen del campo Horas.

Campos de la consulta que se utilizarán para el informe son los siguientes:

Ver los datos por Funcionario.

120 

Page 121: Curso access

Corpus Ruiz Fernández 

Resumir por el campo Horas.

Ordenar los registros por la fecha de solicitud del curso.

Una vez retocado en modo diseño, el formulario quedaría así:

Forzar nueva página en cada encabezado de grupo

Por defecto, cuando se crea un informe agrupado por algún campo Access no inserta un salto

de página en cada uno de los valores que toma ese campo. Si queremos que lo haya, hay que

decirle –en modo diseño- que se produzca el salto de página seleccionando el encabezado de

121 

Page 122: Curso access

Access Avanzado 2003 

grupo y editando sus propiedades. En la propiedad Forzar nueva página hay que seleccionar

Antes de la sección.

NOTA: Si ahora visualizamos el informe comprobaremos que se ha producido ese salto de página entre cada uno de los valores del campo por el que se ha agrupado el formulario.

Filtrar los datos del informe desde el formulario Solicitud

En el formulario Solicitud añadimos un botón y le asociamos un procedimiento

que abra el informe Listado Funcionarios y le aplique el filtro por formulario igual que se hizo

anteriormente. El código es el siguiente:

Creación de etiquetas postales

Antes de comenzar la elaboración de las etiquetas postales –acuses de recibo- debemos de

tener en cuenta el tamaño del papel y el tamaño de las etiquetas, pues dichos tamaños nos

serán requeridos durante su proceso de creación. Se pueden dar dos casos:

Las etiquetas tienen unas dimensiones estándar: en este caso sólo debemos

seleccionarlas de una lista de etiquetas proporcionada por Access.

122 

Page 123: Curso access

Corpus Ruiz Fernández 

Las etiquetas no se encuentran en la lista de etiquetas estándar: en este caso

debemos tomar las medidas de alto y ancho de etiquetas, márgenes (superior, izquierdo y

derecho) y separación entre ellas (vertical y horizontal).

Dependiendo del tipo de impresora –láser ó matricial- los acuses de recibo se harán de una

forma u otra. Para impresoras láser deberemos de crear un formulario personalizado desde el

panel de impresoras y faxes ya que el largo de tres acuses de recibo es de 12 pulgadas -30,48

cm.-

Creación de un formulario desde el panel Impresoras y faxes

Abrimos el cuadro de diálogo de las propiedades del servidor de impresión haciendo clic en

Archivo Propiedades del servidor y configuramos un nuevo formulario –Acuses- con los

siguientes parámetros:

Nota: La medida del alto es 30,48 cm. ya que son lo que miden de alto 3 acuses de recibo. El ancho -21 cm.- es el equivalente al A4.

Acuses de recibo para impresoras matriciales

Para generar acuses de recibo hay que recurrir al asistente para etiquetas. La creación del

informe Acuses para matriciales basado en la consulta ConFuncionario es similar a la

creación de los informes anteriores con estas diferencias:

Hay que elegir Asistentes para etiquetas en vez de Asistentes para formularios.

123 

Page 124: Curso access

Access Avanzado 2003 

Personalizar una nueva etiqueta –Acuses- cuyo tamaño es 10,16cm x 21cm.

124 

Page 125: Curso access

Corpus Ruiz Fernández 

Establecer el formato del texto –color y fuente.

Añadir los campos y el texto a la etiqueta.

125 

Page 126: Curso access

Access Avanzado 2003 

Ordenar la etiqueta por uno o más campos.

Darle un nombre –Acuses para matriciales- a la etiqueta.

Acuses de recibo para impresoras láser

No hay que crear ninguna etiqueta personalizada. Utilizaremos la etiqueta Avery siguiente:

Los pasos son similares a los vistos en las matriciales.

126