Vous êtes sur la page 1sur 155

GUIA ACCESS 1

Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll Mm Nn
Oo Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz
A C C E S S
Ver Contenido en Pg. 148.
Gua alfabtica de Tablas, Consultas, Formularios e I nformes.
BaseDatos Tablas Consultas Formularios Informes
Macros y Mdulos. (I r con Alt+F12).
Ir a Gua Word.doc si est en misma Carpeta.
Ir a Gua Excel.doc si est en misma Carpeta.
Ir a Gua PowerPoint.doc si est en misma Carpeta.
Ir a Gua FrontPage.doc si est en misma Carpeta.
Saltar desde interior de Hipervnculos con Intro o Click, regresar al mismo con May+F5.
Regresar a este ndice con Ctrl+Inicio. Buscar texto con Ctrl+B.
Para comandos generales de Office y Windows ver Gua Word.
Esta gua es parte de JRMWEB.
Conozca INICIO, con muchas utilidades gratis.
A
Abrir lista desplegable seleccionada ALT+
Abrir objeto Base de datos INTRO o doble Clic o ALT+B
Acceso directo, crear ALT+E, D.
Activado, propiedad Ver Cuadro de texto, prop. Activado.
Actualizacin de las Tablas por las Consultas Ver Consulta, Prop. Tipo Recordset
Actualizar datos automticamente Ver Consulta de Actualizacin.
Actualizar registros en entorno multiusuario ALT+ R, A.
Actualizar Tablas vinculadas ALT+ H, E, M.
Agrupar (y Ordenar) registros Diseo, Informes: ALT+ V, O. Ver Pg 79, Agrupar registros del informe.
Agrupar datos Ver Totales.
Ajustar espacio horizontal/vertical entre controles Ver Controles, ajustar espacio
Ajustar tamao y alinear controles Ver Controles, ajustar. Ver Controles, alinear.
Ajustes y complementos de Objetos y Controles Ver Pg 76, Objetos/Controles.
Alinear controles Ver Controles, alinear
Alto de registro ALT+ F, A.
Ampliar rea de entrada en celda MAY+F2
Analizar rendimiento de Base de datos ALT+H, Z, R.
Analizar tabla ALT+H, Z, T. Trata de mejorar el diseo.
Ancho de columna ALT+ F, N.
Aadir lnea en campo Memo CTRL+INTRO.
Aadir nuevo registro CTRL++ (signo ms)
Aadir registros a tabla a partir de otra(s) Ver Consulta de Datos anexados.
Asistente para consultas Ver Consulta de seleccin.
Asistente para controles Pg 60, Botn Asistente para controles.
Asistente para Formularios Ver Pg 53, Crear Formulario con Asistente.
Autocorreccin ALT+H, A. Ver Gua Word 97.doc.
Autoformas, Dibujo Ver Ajustes y complementos de Objetos y Controles.
Autoformato (formulario/informe) Seleccionar completo, seccin o controles y ALT+F, U. Ver Botn Opciones
para atributos a aplicar y Botn Personalizar para crear nuevos Autoformatos. Ver Plantillas de formula-
rios e informes.
Autoformulario Los Autoformularios son muy tiles como base para diseo de formularios. En Ventana Base
de datos: ALT+I, O. Crea automticamente un formulario tipo columna (ver abajo), basado en la tabla o
consulta seleccionada. Asistentes en Nuevo de Ficha Formularios de Ventana Base de datos: Autoformu-
lario en Columna: Nombres de campos a la izquierda, datos a la derecha, registro a registro, con formato.
Hoja de datos: igual a presentacin de tabla, con nombres de campos en la cabecera superior. Con Vista
Formulario presenta un solo registro (fila), con formato (cabecera, detalle, controles, etc.). Tabular: Igual
que Hoja de datos, pero con todos los registros en Vista Formulario, con formato. En Vista Hoja de datos
es igual a Autoformulario Hoja de datos.
Autoinforme ALT+I, N. Crea automticamente un informe, basado en la tabla o consulta seleccionada, tipo
columna. Ver Pg 77, Crear Informe con Autoinforme. Ver Autoformulario para formatos en columna, ta-
bular o hoja de datos. Ver Nuevo objeto.
B
Barras de Herramientas, ver, personalizar ALT+V, B.
Base de datos Ver Pg 12.
Base de datos, compactar ALT+ H, U, O.
2 MENUS EN VISTA GENERAL Pgs. 155
Base de datos, compilar y compactar (*.mde, diseo no modificable) ALT+H, U, E.
Base de datos, concepto, introduccin, mens Ver Pg 12 Base de datos.
Base de datos, convertir desde versin anterior a Access 97 ALT+ H, U, C.
Base de datos, dividir ALT+, E, D. En Tablas y restantes objetos, para personalizar por usuario formula-
rios, etc.
Base de datos, documentacin ALT+H, Z, D.
Base de datos, formulario inicio, men Ver Inicio de la Base de datos. Ver Panel de control. Ver Acceso
directo, crear.
Base de datos, ir a Ventana F11.
Base de datos, nueva ALT+A, N. Ficha General: Base de datos en blanco. Ficha Bases de datos: Ejemplos
o plantillas para crear una base de datos. Para ejemplos: Neptuno, Pedidos o Soluciones, Ver Pg 12
Base de datos.
Base de datos, opciones ALT+ H, N. Predeterminar: Fuentes, colores, teclado, plantillas, carpetas, etc.
Base de datos, plantillas, ejemplos Ver Nueva Base de datos .
Base de datos, propiedades (contenido, estadsticas, personalizar) ALT+A, B . Ver Documentacin.
Base de datos, rendimiento ALT+H, Z, R. Ver Compactar Base de datos.
Base de datos, reparar ALT+ H, U, R.
Base de datos, replicas, copias Ver Rplica.
Base de datos, seguridad Ver Seguridad de Base de datos.
Base de datos, ventana Ir con F11. Saltar entre fichas con CTRL+TAB o CTRL+MAY+TAB (atrs).
Bloqueado, propiedad Ver Cuadro de texto, Prop. Activado y Bloqueado.
Bloqueos del registro Ver Consulta, Prop. Bloqueo del registro. En entorno multiusuario.
Bordes de objetos Ver Objeto, bordes
Borrar cuadrcula de diseo consulta, filtro ALT+ E, D.
Borrar Ver Eliminar
Botn de Alternar, control Ver Pg 64, Botn Alternar.
Botn de Comando, control Ver Pg 67, Botn de Comando.
Botn de Opcin, control Ver Pg 64, Botn de Opcin.
Botn Flecha en Cuadro Herramientas Ver Seleccionar objetos., controles.
Buscar por filtro, propiedad Ver Cuadro de texto, prop. Buscar por filtro.
Buscar Hojas de datos y formularios. CTRL+B. Ver las opciones de 'Buscar en' y 'Coincidir' del cuadro
de dilogo. Para campos en blanco, poner Nulo o Es Nulo. Para campos textos longitud 0 poner "". Para
ambas bsquedas desmarcar Con formato, poner Hacer coincidir todo el campo y marcar Slo campo ac-
tivo, por lo que antes se habra colocado en la columna correspondiente. Ver Filtrar para ver slo los re-
gistros buscados.
Bsqueda, columna de, campo de En Hoja: ALT+ I, M. En Diseo: ALT+ I, B. Crea con un Asistente un
Cuadro de lista o combinado en un campo o columna para seleccionar e introducir datos basados en los
valores de otra tabla o consulta normalmente relacionada, o en una lista de valores fijos. En Vista Diseo
de tabla en columna Tipo de datos, tambin se accede al Asistente al final de su lista. En la Ficha
Bsqueda en la Propiedades del campo, aparecern los datos del Cuadro, dnde tambin se puede crear
manualmente o modificar. Se puede introducir a partir de copiar una instruccin SQL de una consulta (Ver
SQL), que se puede eliminar despus de copiar. Ver Pg 18, Campo de Bsqueda. Ver Pg 29, Ficha
Bsqueda en Diseo de Tabla. Ver Pg 64, Cuadro Combinado o Lista, controles. Ver Pg 30, Propieda-
des de Cuadros de lista o combinados.
C
Calcular totales Ver Totales.
Clculos en control Ver Cuadros de texto.
Cambiar Control a otro tipo Seleccionar y ALT+ F, C.
Cambiar nombre objeto de Base de datos ALT+E, M.
Campo actual, deshacer cambios ESC
Campo calculado Ver Campo Calculado, Pg. 43
Campo calculado, agregar a un informe Ver Pg 79, Insertar campo calculado.
Campo de bsqueda Ver Bsqueda, columna, campo de.
Campo de Clave principal Ver Clave principal.
Campo memo, nueva lnea: CTRL+INTRO
Campo, ampliar MAY+F2
Campo, decimales Ver Propiedad Lugares Decimales, Pg. 25.
Campo, descripcin Ver Propiedad Descripcin., Pg. 20.
Campo, editar F2
Campo, eliminar En Tabla, diseo: ALT+E, M.
Campo, formato Ver Propiedad Formato, Pg. 21.
Campo, indexado Ver Propiedad Indexado, Pg. 29.
Campo, insertar En Tabla, diseo: en campo inferior a la insercin: ALT+I, F. Pasar entre columnas
con TAB. Para Propiedades: F6. Utilizar y .
Campo, insertar valor mismo campo registro anterior CTRL+ ' (Apstrofo)
Campo, insertar valor predeterminado CTRL+ALT+BARRA
Campo, mscara de entrada Ver Propiedad Mscara, Pg. 24.
Campo, mostrar control de bsqueda Ver Propiedad Mostrar control en Ficha Bsqueda en Diseo de tabla,
Pg 29.
GUIA ACCESS 3
Campo, nombre en consulta Ver Consulta, Pg. 32.
Campo, nombre Ver Propiedad Nombre del campo, Pg.19.
Campo, requerido, obligatorio Ver Propiedad Requerido, Pg. 28.
Campo, tamao Ver Propiedad Tamao del campo., Pg. 20.
Campo, tipo Ver Propiedad Tipo del campo., Pg. 19.
Campo, ttulo Ver Propiedad Ttulo del campo. Pg. 26.
Campo, validacin Ver Propiedad Validacin del campo, Pg. 27.
Campo, valor predeterminado Ver Propiedad Valor predeterminado, Pg. 26.
Campo, ver completo MAY+F2.
Campos en blanco (Nulos, Null) Ver Pg 51, Campos en blanco en consultas. Operar con ellos.
Campos, lista (diseo formulario/informe) ALT+ V,. L. Para ver y arrastrar.
Campos, moverse entre ellos TAB o MAY+TAB (atrs) o Inicio o Fin. Primer campo del primer registro:
CTRL+Inicio. Ultimo campo del ltimo registro: CTRL+Fin.
Cancelar entradas En campo antes de salir de l: Esc. Otro Esc cancela los campos en los dems cam-
pos, antes de haber salido del registro. Igual con deshacer (CTRL+Z).
Cancelar operaciones de consulta, filtro o buscar CTRL+PAUSA
Cartas modelo, combinar con registros Ver Combinar correspondencia.
Casilla de Verificacin, control Ver Pg 64, Casilla de Verificacin.
Casilla de Verificacin, Marcar/desmarcar BARRA
Celdas, apariencia Hoja de datos, ALT+ F, E. Cuadrcula, color y tipo. Fuente: ALT+F, U. Utilizar tambin
opciones Barra Herramientas Formato (Hoja de datos). Predeterminar en ALT+H, N, Ficha Hoja de datos.
Clave principal, establecer Tabla, diseo: ALT+E, V. Campo/s identificador de cada registro en una tabla
(Primary Key). Ver Indices.
Codificar/descodificar la Base de datos ALT+H, S, O. Ver Seguridad Base de datos.
Cdigo del Formulario o Informe activo (diseo) ALT+V, G. Mdulo de Access Basic.
Color de Hoja Ver Celdas, apariencia.
Columna actual, seleccionar Ver Seleccionar columna.
Columna de bsqueda, insertar Ver Bsqueda, columna de.
Columna dependiente, propiedad Ver Cuadro de Lnea o Combinado, prop. Columna dependiente.
Columna, ancho ALT+ F, N.
Columna, cambiar nombre en tabla ALT+ F, C. Importante: deber cambiar a mano todas las referen-
cias al nombre antiguo.
Columna, eliminar Consulta, diseo: ALT+E, M. Ver Eliminar.
Columna, inmovilizar ALT+ F, V. Quedan a la izquierda de la ventana. Liberar todas las columnas: ALT+
F, T. Pueden quedar cambiadas de posicin.
Columna, insertar ALT+I, C. A la izquierda de la columna actual.
Columna, mostrar ALT+ F, M.
Columna, mover posicin en Hoja Clic en cabecera(s) para seleccionar (varias con MAY) y Clic en
cabecera y arrastrar. No cambia posicin en Vista Diseo.
Columna, ocultar ALT+ F, O. Seleccionar para varias. Ver Mostrar columna.
Columnas, unir en una Ver Consulta de Unin.
Combinacin entre tablas o consultas, propiedades Defiinir qu registros incluir de la principal y relacionada.
Ver Pg 30, Relaciones. Propiedades de la Combinacin.
Combinar correspondencia ALT+H,V,C. Crear cartas modelo segn documento de Word y tabla o
consulta de Access.
Compactar Base de datos ALT+ H, U, O.
Compilar Base de datos y compactar (*.mde, diseo no modificable) ALT+H, U, E.
Complementos de Access ALT+ H, E, A. Asistentes, generadores y complementos de men adicionales.
Configurar pgina (orientacin, mrgenes, numero columnas) ALT+A, R
Constantes, lista CTRL+MAY+J
Consulta de Actualizacin En Consulta, diseo: ALT+ C, A. Modificacin de campos en conjunto, de
una o varias tablas. En 'Actualizar a' introducir la expresin de actualizacin, por Ej.: [PrecioUnidad]*1,1
para incrementar en un 10%. Ver Consultas de Accin. Para no reemplazar por Clculos o en varios
campos, considerar Reemplazar.
Consulta de Buscar duplicados Asistente con ALT+O en Ficha Consultas de Base de datos.
Consulta de Buscar no-coincidentes Asistente con ALT+O en Ficha Consultas de Base de datos.
Consulta de Creacin de Tabla En Consulta, diseo: ALT+ C, N. Crea tabla a partir de otra(s) tabla(s) o
consulta(s). Ver Consultas de Accin.
Consulta de Datos Anexados En Consulta, diseo: ALT+ C, D. Aade registros a tabla desde otra(s) o
desde consulta. En la fila 'Anexar a' seleccionar el campo de la tabla de destino a introducir la informacin
de esa columna. Ver Consultas de Accin.
Consulta de Eliminacin En Consulta, diseo: ALT+ C, U. Elimina registros en conjunto de una tabla.
Arrastrar el campo asterisco (tabla completa) al primer campo de la cuadrcula. Aadir los campos en que
se basar en criterio de eliminacin. En la fila Eliminar especificar la opcin Desde para el campo asteri s-
co, y en los dems especificar Donde y abajo, en fila Criterios, la expresin de seleccin, Ej. <#1/1/98#.
Ver Consultas de Accin.
Consulta de Parmetros En Consulta, diseo: ALT+ C, O. Solicita criterio(s) al usuario al ejecutarse.
Se puede utilizar en cualquier consulta. Editar el cuadro de dilogo con el nombre y tipo de datos de cada
parmetro y despus utilizar sus nombres en los criterios. Ej.: Entre [Fecha de Inicio] y [Fecha final].
4 MENUS EN VISTA GENERAL Pgs. 155
Consulta de Referencias Cruzadas En Consulta, diseo: ALT+ C, F. Convierte campo(s) en cabece-
ra de fila para mostrar valores cruzados con la cabeceras de las columnas, tipo Hoja de clculo, con los
valores cruzados en las celdas. En la fila Total, especificar el tipo de resumen que se desea aplicar a cada
uno de los campos. En la fila Tab ref cruz, especificar si el campo estar como Encabezado de Fila o Co-
lumna, o ser el Valor en las celdas. Asistente con ALT+O en Ficha Consultas de Base de datos. Ver
Consulta, Prop. Ttulos de Columnas. Ver Ejemplo en Pg 37.
Consulta de Seleccin En Consulta, diseo: ALT+ C, S. Muestra registros segn criterio(s). Asistente con
ALT+O en Ficha Consultas de Base de datos. Ver Expresiones. Ver Filtrar registros, para selecciones
sencillas y provisionales.
Consulta de Unin Ver Consulta Especfica SQL. Rene en un columna el contenido de dos columnas.
Consulta especfica de SQL En Consulta, diseo: ALT+ C, E. Consulta de Unin, Paso a travs y
Difinicin de datos.
Consulta, abrir Intro o doble Clic o ALT+B. En diseo: ALT+D o CTRL+Intro o CTRL+doble Clic.
Consulta, actualizar MAY+F9
Consulta, cambiar nombre campo Ver Consulta, Pg. 32.
Consulta, campo calculado Ver Campo Calculado, Pg. 43
Consulta, campos Ver Consulta, Pg. 32.
Consulta, cerrar Ver Objeto de Base de datos actual, cerrar.
Consulta, concepto, diseo, mens Ver Pg 32 Consultas.
Consulta, criterios de seleccin En Consulta, diseo: Introducir en lnea Criterios bajo campo a tratar. Ver
Pg 41, Expresiones.
Consulta, ejemplo Ver Ejemplo en Pg 37.
Consulta, eliminar campo/s En Consulta, diseo: seleccionar con Clic con flecha en linea superior a nom-
bre de campo (o CTRL+Barra) y Supr. Arrastrar (o MAY+Teclas direccin) antes si varios campos. Elimi-
nar un campo con ALT+E, M, sin seleccionar.
Consulta, filtrar registros Ver Filtrar registros. Los filtros aplicados no se pueden guardar en consultas. Ver Con-
sulta, criterios de seleccin.
Consulta, Hoja respuesta dinmica Ver Hoja de respuesta dinmica.
Consulta, mostrar campo Marcar cuadro bajo campo en lnea Mostrar.
Consulta, mover campo En Consulta, diseo: seleccionar con Clic con flecha en linea superior a nombre de
campo (o CTRL+Barra) y arrastrar (o MAY+Teclas direccin) si varios. De nuevo Clic misma posicin y
arrastrar a entre columnas a intercalar.
Consulta, nueva Ver Nuevo objeto de Base de datos. Ver Consulta de...
Consulta, ordenar En Hoja de datos: Ver Registros, ordenar. El diseo no se afecta, aunque s se guar-
da el nuevo orden, quitndose con ALT+R, Q. En diseo: Clic en fila Orden bajo columna/s a ordenar.
Prioridad en columnas a la izquierda.
Consulta, permitir modificacin de tabla/s base Ver Consulta, Prop. Tipo Recordset
Consulta, Prop. Bloqueos del Registro Ver Pg 49 Prop. Bloqueos del Registro. Entorno multiusuario.
Consulta, Prop. Permisos de ejecucin Ver Pg 49 Prop. Permisos de ejecucin.
Consulta, Prop. Tipo Recorset Ver Pg 50 Prop. Tipo Recorset. Permisos de modificacin de las
Tablas por las Consultas.
Consulta, Prop. Ttulos de Columnas Ver Pg 48 Prop. Ttulos de columnas. Ordena y limita ttulos de
columnas en Tablas de Referencias Cruzadas.
Consulta, Totales Ver Totales.
Consultas de Accin Es una consulta que realiza cambios a muchos registros en una sola operacin. Exis-
ten cuatro tipos de consultas de accin: de eliminacin, de actualizacin, de datos anexados y de creacin
de tabla. Es conveniente realizar primero una consulta de Seleccin y convertirla despus de verificarla en
una de Accin desde el men Consulta en vista de Diseo, o ver la Hoja de datos de sta. . Estas consul-
tas se ejecutan despus de diseadas con ALT+C, C.
Consultas, combinacin entre tablas y consultas Ver Pg 30, Relaciones. Propiedades de la Combinacin.
Consultas, propiedades Ver Propiedades, hoja.
Contrasea, seguridad ALT+ H, S, E.. Ver Pg 14 Contrasea. Ver Seguridad de la Base de
datos.
Control ActiveX, insertar (formulario/informe) ALT+ I, C.
Control calculado o con clculo Ver Cuadros de texto.
Control Ficha Ver Pg 70, Control Ficha.
Control, cambiar a otro tipo Seleccionar y ALT+ F, C.
Control, formato Ver Controles, formato.
Control, mover al frente, al fondo ALT+ F, F o ALT+ F, E. Ver Controles, mover.
Control, tamao Ver Controles, tamao.
Controles ActiveX, registrar, eliminar ALT+ H, C.
Controles y Objetos, ajustes y complementos Ver Pg 76, Objetos/Controles.
Controles, espacios horizontal/vertical con otros Seleccionar y ALT+ F, Z o ALT+ F, V. Igualar, aumentar,
disminuir.
Controles, ajustar a la cuadrcula, activar/desactivar ALT+ F, L. En controles nuevos.
Controles, ajustar tamao a contenido. Tambin Tamao Al ms alto, Al ms corto, Al ms ancho, Al ms estre-
cho. Seleccionar y ALT+ F, T.
Controles, alinear a la cuadrcula. Tambin Alinear A la izquierda, A la derecha, Arriba, Abajo. Seleccionar y
ALT+ F, A.
Controles, asistente Ver Asistente para controles.
GUIA ACCESS 5
Controles, Cuadro de Herramientas, Tool box (diseo formulario/informe) Ver Cuadro de Herramientas.
Controles, definicin Ver Pg 59, Controles. Tipos de Controles (ver cada uno en su nombre): Etiquetas,
Cuadros de texto, Grupos de opciones, Botones de alternar, Botones de opcin, Casillas de verificacin,
Cuadros combinados, Cuadros de lista, Botones de comando, Imagen, Marcos de objetos independientes
o Marcos de objetos dependientes, Subformularios, Subinformes, Saltos de pgina, Lneas, Rectngulos,
Controles ficha, Otros Controles (ActiveX).
Controles, formato Barra Herramientas formato o ms opciones en su Ficha Formato del Cuadro Propie-
dades. Ver Pg 76, Objetos/Controles. Para varios, ver Seleccionar objetos, controles.
Controles, mover Ver Pg 60, Botn seleccionar objetos (Flecha).
Controles, predeterminar valores para el formulario/informe activo Seleccionar control y ALT+ F, N. Ver Planti-
llas para formularios e informes. Ver Pg 75, Cambiar propiedades predeterminadas de un tipo de con-
trol.
Controles, seleccionar varios Ver Seleccionar objetos, controles.
Controles, tamao Ver Pg 76, Objetos/Controles.
Convertir desde base de datos anterior de Access a Access 97 ALT+ H, U, C.
Copiar, Guardar como o exportar objeto Ver Exportar.
Copias de trabajo de la Base de datos Ver Rplica.
Correo electrnico, enviar por ALT+A, V
Crear Acceso directo ALT+E, D.
Criterios Ver Consulta, criterios de seleccin.
Criterios, solicitar al usuario al ejecutar consulta Ver Consulta de Parmetros.
Cuadrcula de Hoja, ver/no ver Ver Celdas, apariencia.
Cuadrcula, ajustar controles nuevos, activar/desactivar ALT+ F, L.
Cuadrcula, alinear controles Seleccionar y ALT+ F, A.
Cuadrcula, borrar de diseo consulta, filtro ALT+ E, D.
Cuadrcula, diseo formulario/informe mostrar/ocultar ALT+ V, C.
Cuadro Combinado Ver Cuadro de Lista o Combinado.
Cuadro de Dilogo Ver Formulario de Dilogo.
Cuadro de Herramientas, Controles, Tool box (diseo formulario/informe) mostrar/ocultar ALT+ V, A. Se puede
colocar como cualquier barra. Para bloquear una herramienta (dejar fija), doble clic. Desbloquearla, ESC.
Dejar Activado Botn Asistente.
Cuadro de Lista o Combinado, buscar un registro Ver Pg. 66, Buscar un Registro con valor de Lista.
Cuadro de Lista o Combinado, controles Ver Pg 64, Cuadro Combinado o Lista.
Cuadro de Lista o Combinado, para introducir datos en tablas Ver Bsqueda, columna, campo de.
Cuadro de Lista o Combinado, prop. Columna dependiente Ver Pg 67, Prop. Columna dependiente.
Cuadro de Lista o Combinado, prop. Tipo de origen de la fila y Fila de origen Ver Pg 66, Prop. Tipo de...
Cuadro de Lista o Combinado, propiedades Ver Pg 30, Propiedades de Cuadros de ..., Resumen.
Cuadro de texto, control Ver Pg 60, Cuadros de texto.
Cuadro de texto, prop. Activado y Bloqueado Ver Pg 62, Prop. Activado.
Cuadro de texto, prop. Buscar por filtro Ver Pg 62, Prop. Buscar por filtro.
Cuadro de texto, prop. Mscara de entrada Ver Pg 24, Propiedad Mscara.
Cuadro de texto, prop. Origen del control Ver Pg 61, Prop. Origen del Control.
Cuenta, totales, funciones de agregado Consultas, diseo: ALT+ V, T.
D
Datos predeterminados para campo Ver Bsqueda, columna de.
Datos, captura En Hoja de datos de Tabla o Consulta y en Formulario basado en tabla o consulta. Ver
Registro, nuevo. Tener en cuenta que mediante Consulta o Formulario pueden no estar includos todos
los campos de la tablas o tablas includas, y que pueden ser necesarios.
Decimales, campo Ver Propiedad Lugares Decimales, Pg. 25.
Definir qu registros incluir de Tabla principal y relacionada Ver Relaciones, Tipo de Combinacin.
Descripcin de campo, objeto Ver Propiedad Descripcin, Pg. 20.
Deshacer CTRL+Z
Detener consulta, ordenar, buscar CTRL +PAUSA
Dibujo, Autoformas Ver Ajustes y complementos de Objetos y Controles.
Diseo, abrir desde Ventana Base de datos ALT+ D o CTRL+INTRO o CTRL+doble Clic
Dividir Base de datos Ver Base de datos, dividir.
Documentacin de la Base de datos ALT+H, Z, D.
Duplicidad de registros, eliminar en consultas Ver Pg 50 Valores Unicos.
E
Edicin campo F2
Editar registro Ver Registro, editar
Efectos 3D Ver Ajustes y complementos de Objetos y Controles
Ejecutar consulta de accin ALT+ C, C.
Ejemplo de consulta Ver Ejemplo en Pg 37.
Ejemplo de formulario Ver Ejemplo, Pg. 72.
Ejemplos, plantillas, de Bases de datos Ver Nueva base de datos.
Eliminar columna ALT+E, M.
Eliminar registros segn seleccin Ver Consulta de Eliminacin.
6 MENUS EN VISTA GENERAL Pgs. 155
Eliminar ALT+E, L.. Elimina sin recuperacin. Registro: seleccionarlo(s) con MAY+BARRA (y o )
y SUPR. Registro actual: CTRL+- (menos). Columna: seleccionarla(s) con CTRL+BARRA (y o ) y
SUPR. Seleccin depende de ALT+ H, N, Teclado. Ver Eliminar registros segn seleccin.
Emergente, Propiedad Ver Formularios, Prop. Emergente.
Encabezado o Pie de Informe, agregar/quitar ALT+ V, E.
Encabezado o Pi de pgina del informe, agregar /quitar Informe, diseo: ALT+ V, E. Ver Pg 79, Agregar
o quitar Enc./pie de informe.
Encabezado o Pi de pgina o formulario, agregar/quitar Formulario, diseo: ALT+ V, E. Ver Pg 55, Agre-
gar o quitar Enc./pie de formulario.
Entrada de datos ALT+ R, E. Muestra slo los registros que se introducen. Quitar con ALT+ R, Q.
Entrada de datos, propiedad Ver Formularios, Prop. Entrada de datos.
Enviar por correo electrnico ALT+A, V.
Espacios entre controles Ver Controles, espacios
Etiqueta, control Ver Pg 60, Etiqueta.
Etiquetas postales Ver Pg 79, Crear etiquetas postales. Para una, o una pgina: Ver Gua Word 97.doc.
Exportar, Copiar o Guardar como F12 o ALT+A, X. Como documento Word: ALT+H, V, P. Como
Hoja de Excel: ALT+ H, V, A.
Expresiones aritmticas Ver Pg 43, Expresiones aritmticas.
Expresiones de condiciones de macro Ver Pg 44, Expresiones de condiciones de macro.
Expresiones de fecha Ver Pg 42, Expresiones de fecha.
Expresiones de texto Ver Pg 42, Expresiones de texto.
Expresiones de validacin Ver Pg 44, Expresiones de validacin de campos.
Expresiones en formularios e informes Ver Pg 45, Expresiones en formularios e informes.
Expresiones SQL como criterio Ver Pg 44, Expresiones SQL como criterio.
Expresiones varias Ver Pg 43, Expresiones varias.
Expresiones Combinacin de operaciones con smbolos y objetos para manipular y producir resultados y
definiciones a partir de datos de textos, numricos, de fechas, etc. Ver Pg 41, Expresiones. Expre-
siones para Consultas, Formularios e Informes, Validacin, Criterios SQL, Condiciones de Macro.
F
Fecha actual, insertar CTRL+MAY+, (coma)
Fecha y Hora actuales, insertar en formulario/informe ALT+ I, H. Dentro Cuadro de texto.
Fecha y Hora, campos Ver Propiedad Formato, Pg. 21.
Ficha, control Ver Pg 70, Control Ficha.
Fichas, moverse entre ellas Ver Saltar.
Fila de origen, propiedad Ver Cuadro de Lista o Comb., Prop. Fila de origen.
Fila, altura de registro ALT+ F, A.
Filtrar registros En Hoja de datos (Tablas, Consultas, Formularios): Por seleccin: Seleccionar un
campo (no columna) o parte de un campo y ALT+R, I, S. Filtrar excluyendo la seleccin: Seleccionar un
campo o parte de un campo y ALT+R, I, E.. Por formulario: ALT+ R, I, F. Seleccionar con flecha de lista
en cada campo los valores deseados. Para otro valor en mismo campo, utilizar la ficha "O". Filtro u orden
avanzado: Similar a diseo de consulta con todas las opciones de ordenar, etc., pero sobre una sola ta-
bla. Muestra todos los campos en el resultado. Ordenar: Ver Registros, ordenar Se puede efectuar en el
resultado de cualquier filtro. Aplicar filtro u ordenar: ALT+ R, C. Aplica el ltimo realizado. Quitar filtro u
ordenar: ALT+ R, Q. Presenta todos los registros y en su orden original. Ver Consulta de Seleccin para
ms opciones. Ver Tabla, propiedades.
Filtro, propiedad Ver Formularios, Prop. Filtro.
Formato de campo Ver Propiedad Formato, Pg. 21.
Formato de campo en consulta Ver Hoja de datos, formato de campos
Formulario de Dilogo (Cuadro de Dilogo) Ver Pg 55, Crear Formulario emergente o Cuadro dilogo.
Formulario de inicio de la Base de datos Ver Inicio de la Base de datos. Ver Panel de control.
Formulario emergente (con Botn de Comando) Ver Pg 55, Crear Formulario emergente.
Formulario, crear automtico Ver Autoformulario.
Formulario, crear basado en ms de una tabla Ver Pg 54, Crear Formulario basado en ms de una tabla.
Formulario, crear con asistente Ver Pg 53, Crear Formulario con Asistente. Ver Autoformulario.
Formulario, encabezado o pie Ver Encabezado o pie. Ver Secciones de formularios
Formulario, propiedades Ver Propiedades, hoja.
Formulario/Subformulario, saltar Ver Subformulario
Formularios, concepto, introduccin, Mens Ver Pg 52, Formularios.
Formularios, ejemplos Ver Ejemplo, Pg. 72
Formularios, formato Ver Pg 76, Objetos/Controles.
Formularios, Prop. Bloqueos del Registro Ver Pg 49 Prop. Bloqueos del Registro. Entorno multiusuario.
Formularios, Prop. Emergente Ver Pg 58, Propiedad Emergente (PopUp).
Formularios, Prop. Entrada de datos Ver Pg 58, Prop. Entrada de datos.
Formularios, Prop. Filtro Ver Pg 56, Prop. Filtro.
Formularios, Prop. Modal Ver Pg 59, Prop. Modal.
Formularios, Prop. Ordenar por Ver Pg 57, Prop. Ordenar por.
Formularios, Prop. Origen del Registro Ver Pg 56, Prop. Origen del Registro.
Formularios, Prop. Permitir ediciones Ver Pg 57, Prop. Permitir ediciones.
Formularios, secciones Ver Secciones de formularios.
GUIA ACCESS 7
Fuente , Formularios /Informes Ver Pg 76, Objetos/Controles.
Fuente, Hoja de datos Ver Celdas, apariencia.
Funciones de agregado de dominio Ver Pg 46, Funciones de agregado de dominio.
Funciones de agregado SQL Ver Pg 47, Funciones de agregado SQL.
Funciones de agregado, totales Consultas, diseo: ALT+ V, T. (Suma, Mn, Mx, Promedio, Cuenta, etc.)
Funciones en expresiones Ver Pg 46, Funciones en Expresiones.
Funciones generales Ver Pg 47, Algunas Funciones generales.
Funciones, referencia Ver Pg 120, Referencia de Funciones.
G
Generador de Expresiones Ver Generador. Ver Expresiones.
Generador de expresiones, presentar CTRL+F2
Grfico, insertar (formulario/informe, en diseo) ALT+ I, G. Tambin desde Nuevo Formulario/Informe.
Utiliza Microsoft Graph y Asistente.
Grupo de Opciones, control Ver Pg 63, Grupo de Opciones.
Grupo del Informe, calcular un total o promedio Ver Pg 80, Calcular un total o promedio para informe.
Grupo del Informe, comenzar en nueva fila o columna Ver Pg 81, Comenzar cada grupo.
Grupo del Informe, restablecer nmero de pgina para cada uno Ver Pg 82, Restablecer nms. de pginas.
Grupos de trabajo Ver Pg. 15 Proteger Base de datos.
Guardar como, Copiar o exportar objeto Ver Exportar
Guardar registro MAY+INTRO antes de salir del registro. Se guarda automticamente el cambiar de
registro.
H
Herramientas de controles Ver Cuadro de herramientas.
Hipervnculo, insertar ALT+ I, V.
Hoja de datos, apariencia Ver Celdas, apariencia.
Hoja de datos, formato de campos en consultas Consultas, diseo: Colocarse dentro de campo y ALT+
INTRO para Propiedades del Campo.
Hoja de datos, desplazamiento Ver Registros, moverse. Ver Campos, moverse.
Hoja de datos, ver ALT+V, H desde Diseo de Tabla, Consulta o Formulario.
Hoja de propiedades, mostrar del objeto activo o seleccionado ALT+INTRO o ALT+V, E.
Hoja de respuesta dinmica Es la Hoja de datos de las Consultas y funcionan de forma igual, inclusive
cambian los datos en las tablas, si le est autorizado (Ver Consulta, Prop. Tipo Recordset)
Hora actual, insertar CTRL+MAY+. (punto)
HTML, guardar como ALT+A, H
I
Identificador de registro Ver Clave principal.
Imagen de fondo Ver Ajustes y complementos de Objetos y Controles.
Imagen, control Ver Pg 68, Imagen.
Imagen, insertar (formulario/informe) ALT+ I, E. Ver Ajustes y complementos de Objetos y Controles.
Importar tabla, hoja clculo, texto ALT+A, O, O. Ver Vincular tabla.
Imprimir CTRL+P o ALT+A, I. Ver Vista Preliminar. Ver Configurar pgina
Indexado de campo Ver Propiedad Indexado, Pg. 29.
Indices Tablas, Diseo: ALT+ V, N. Presenta el cuadro de ndices (claves de ordenamiento) para
establecer o modificar todos los ndices de la tabla. Ver Indexado. Ver Tabla, propiedades. Ver Registros,
ordenar.
Informe, agregar un informe existente a otro para crear un subinforme Ver Pg 78, Agregar Informe a otro.
Informe, agrupar y ordenar registros Ver Agrupar (y ordenar) registros (Diseo Informe). Ver Ordenar (y
Agrupar) registros (Diseo Informe).
Informe, calcular porcentajes Ver Porcentajes en Informes.
Informe, calcular suma continua Ver Suma continua de informe.
Informe, calcular total o promedio del grupo Ver Grupo del Informe, calcular...
Informe, comenzar cada grupo en nueva fila o columna Ver Grupo del Informe, comenzar...
Informe, crear automtico Ver Autoinforme.
Informe, crear basado en ms de una tabla Ver Pg 78, Informe basado en ms de una tabla.
Informe, crear con Asistente Ver Pg 78, Crear Informe con Asistente.
Informe, crear sin Asistente Ver Pg 78, Crear Informe sin Asistente.
Informe, crear subinforme en informe existente Ver Pg 78, Crear subinforme en informe existente.
Informe, encabezado o pie Ver Encabezado o pie. Ver Secciones de informes.
Informe, propiedades Ver Propiedades, hoja.
Informe, restablecer nm. de pgina para cada grupo Ver Grupo del Informe, restablecer.
Informe, Vista Preliminar de impresin (Desde Vista Diseo de Informe) ALT+ V, M.
Informe, Vista Previa del diseo del Informe (muestra esquema) ALT+ V. T.
Informes Ver Pg 77.
Informes, concepto, introduccin, mens Ver Pg 77, Informes.
Informes, secciones Ver Secciones de informes.
Inicio de la Base de datos, opciones ALT+H, I. Personalizar ttulo, icono y formulario inicial. Ver Panel de
control. Ver Acceso directo, crear.
Inmovilizar columna Ver Columna, inmovilizar
8 MENUS EN VISTA GENERAL Pgs. 155
Insertar campo Ver Campo, insertar.
Insertar columna ALT+I, C. A la izquierda de la columna actual.
Insertar control ActiveX (formulario/informe) ALT+ I, C.
Insertar fecha actual CTRL-MAY+, (coma)
Insertar fecha y hora actuales, en formulario/informe ALT+ I, H. Dentro Cuadro de texto.
Insertar grfico (formulario/informe) ALT+ I, G. Utiliza Microsoft Graph y Asistente.
Insertar hipervnculo ALT+ I, V.
Insertar hora actual CTRL+MAY+. (punto).
Insertar imagen (formulario/informe) ALT+ I, E.
Insertar lneas Ver Ajustes y complementos de Objetos y Controles.
Insertar nmero de pgina ALT+ I, M. En Cuadro de texto de formulario o informe.
Insertar Objeto ALT+ I, O.
Integridad referencial Proteger las relaciones lgicas entre tablas relacionadas. Ver Pg 30, Relaciones.
Internet, HTML, guardar como ALT+A, H
Introducir datos mediante Cuadro de lista, combinado Ver Bsqueda, columna, campo de.
Ir a nmero de registro F5
Ir campo Siguiente: TAB. Anterior: MAY+TAB. Primero de registro: INICIO. Ultimo de registro: FIN.
Primero de primer registro CTRL+INICIO. Ultimo de ltimo registro: CTRL+FIN. Ver ALT+ H, N, Ficha te-
clado (Para primeros y ltimos debe estar en seleccin al entrar).
Ir Formulario/subformulario Ver Subformulario
Ir secciones de Formulario, Informe F6. Hacia atrs: MAY+F6
Ir Ventana Base de datos F11
J
K
L
Limitar valores de campos Ver Validacin.
Lnea nueva en campo Memo CTRL+ENTRAR
Lnea, control Ver Pg 75, Lnea.
Lneas, insertar Ver Ajustes y complementos de Objetos y Controles.
Lista de campos (diseo formulario/informe) ALT+ V,. L. Para ver y arrastrar.
Lista de datos para introducir en tabla Ver Bsqueda, columna, campo de.
Lista desplegable seleccionada, abrir ALT+
M
Macros Ver Gua Alfabtica de Macros y Mdulos, Pg 83.
Marcar/desmarcar Casilla de Verificacin BARRA
Marco de objeto independiente o dependiente Ver Pg 69, Marco de objeto Independiente/Dependiente.
Mrgenes, configurar ALT+A, R
Mscara de entrada de campo Ver Propiedad Mscara. Pg 24. Utilizar Asistente para Mscara.
Mximo, totales, funciones de agregado Consultas, diseo: ALT+ V, T.
MDE, archivo (*.mde, diseo no modificable) ALT+H, U, E.
Mejorar Base de datos Ver Rendimiento de la Base de datos. Ver Compactar Base de datos.
Memo y Texto, campos Ver Propiedad Formato, Pg. 21.
Memo, campo, aadir lnea CTRL+INTRO.
Men contextual Operaciones ms usuales en punto de insercin. Botn derecho de ratn o Tecla
Men contextual (a la izquierda de CTRL derecho) o MAY+F10.
Men de inicio de la Base de datos Ver Panel de Control.
Mens, personalizar ALT+V, B.
Mnimo, totales, funciones de agregado Consultas, diseo: ALT+ V, T.
Modal, Propiedad Ver Formularios, Prop. Modal.
Modificacin de las Tablas por las Consultas Ver Consultas, Prop. Tipo Recordset
Modificar datos en grupo, automticamente Ver Consulta de Actualizacin.
Modificar registro Ver Registro, editar.
Mdulo, ver cdigo del Formulario o Informe activo ALT+V, G.
Mdulos, Visual Basic Ver Gua Alfabtica de Macros y Mdulos, Pg 83.
Moneda y Numrico, campos Ver Propiedad Formato, Pg. 21.
Mostrar columna ALT+ F, M.
Mostrar control en bsqueda Ver Propiedad Mostrar control en Ficha Bsqueda en Diseo de tabla, Pg 29.
Mostrar registros seleccionados Ver Consulta de Seleccin.
Mostrar tabla en Diseo consulta ALT+ C, M.
Mover control al frente o al fondo ALT+ F, F o ALT+ F, E.
Mover controles Ver Pg 60, Botn seleccionar objetos (Flecha).
Moverse entre secciones de ventana F6
Mudar columna(s) de posicin en Hoja Ver Columna, mudar
Mustreme, men ALT+M. Explicaciones Base de datos de ejemplo Neptuno.
N
Nombre de campo Ver Propiedad Nombre del campo, Pg 19.
Nombre de columna, cambiar Ver Columna, cambiar nombre
GUIA ACCESS 9
Nombre de objeto, cambiar En Base de datos: ALT+E, M.
Nombre de tablas en Diseo de consultas ALT+ V, N.
Nueva Base de datos Ver Base de datos, nueva.
Nuevo objeto de Base de datos (Tabla, Consulta, Formulario, etc.) En Ventana Base de datos: ALT+O en su
Ficha o ALT+I. Ver Tabla, nueva. Ver Consulta, nueva. Ver Formulario, crear. Ver Informe, crear.
Nuevo objeto, insertar Formulario, Informe, Campo Hoja de datos: ALT+ I, O.
Nuevo Registro CTRL++ (signo ms)
Nulos, campos en blanco (Null) Ver Pg 51, Campos en blanco en consultas. Operar con ellos.
Numrico y Moneda, campos Ver Propiedad Formato, Pg. 21.
Nmero de pgina, insertar ALT+ I, M. En Cuadro de texto de formulario o informe.
O
Objeto Base de datos, abrir INTRO o doble Clic o ALT+B
Objeto de Base de datos actual, cerrar ALT+-(Guin), C o CTRL+F4.
Objeto de Base de datos, crear acceso directo ALT+E, D.
Objeto de Base de datos, insertar Ver Nuevo objeto de Base de datos.
Objeto de origen, propiedad Ver Subformulario/Subinforme, prop. Objeto de origen
Objeto, bordes Ver Ajustes y complementos de Objetos y Controles.
Objeto, insertar ALT+ I, O.
Objeto, relleno (color, trama, degradado, transparente, etc) Ver Ajustes y complementos de Objetos y Controles.
Objetos de Base de datos, saltar entre abiertos (Tablas, Consultas, etc.) CTRL+F6.
Objetos y Controles, ajustes y complementos Ver Ajustes y complementos de Objetos y Controles.
Objetos, seleccionar Ver Seleccionar objetos, controles.
Ocultar columna ALT+ F, O. Seleccionar para varias. Ver Mostrar columna.
Opciones de impresin de pgina, orientacin, numero de columnas ALT+A, R
Opciones de inicio de la Base de datos ALT+H, I. Personalizar ttulo, icono y formulario inicial.
Opciones predeterminadas de Base de datos ALT+ H, N. Fuentes, colores, teclado, plantillas, carpetas, etc.
Orden de tabulacin Formulario, diseo: ALT+ V, B. Orden en que saltar la tabulacin.
Ordenar (y Agrupar) registros Informe, diseo: ALT+ V, O. Ver Pg 80, Ordenar registros del informe.
Ordenar por, propiedad Ver Formularios, Prop. Ordenar por.
Ordenar registros Ver Indices.
Origen del Control Ver Cuadro de texto, prop. Origen del Control.
Origen del Registro Ver Formularios, Prop. Origen del Registro.
Ortografa F7.
P
Pgina , configurar (orientacin, mrgenes, numero columnas) ALT+A, R
Pgina, insertar en el control Ficha ALT+I, P.
Pgina, nmero, insertar ALT+ I, M. En Cuadro de texto de formulario o informe.
Pgina, salto Ver Pg 70, Salto de pgina. (Formulario/Informe)
Panel de control ALT+ H, P. Para crear formulario de inicio tipo Men. Preferible no modificar coman-
dos por Diseo. Se puede saltar de Panel en Panel. Ver Inicio de la Base de datos.
Paneles, saltar entre ellos Ver Saltar.
Parmetros, consulta Ver Consulta de Parmetros.
Pegado especial ALT+E, E. Opcin de Vincular.
Permisos de ejecucin Ver Consulta, Prop. Permisos de ejecucin.
Permisos de modificacin de las Tablas por las Consultas. Ver Consultas, Prop. Tipo Recordset
Permitir ediciones, propiedad Ver Formularios, Prop. Permitir ediciones.
Personalizar Barras de Herramientas, Mens ALT+V, B.
Pi o encabezado Ver Encabezado o Pi
Plantillas de Bases de datos Ver Nueva Base de datos.
Plantillas de Formularios e Informes Aplicar: Ver Autoformato. (Fuente, color, borde). Predeterminar: Ver
Pg 54, Plantillas de Formularios e Informes.
Porcentajes en Informe Ver Pg 81, Calcular porcentajes en un informe.
Predeterminar opciones de la Base de datos ALT+ H, N. Fuentes, colores, teclado, plantillas, carpetas, etc.
Predeterminar valores de Controles para el formulario/informe activo Ver Controles, predeterminar valores.
Promedio o total, calcular para grupo de informe Ver Grupo del Informe.
Promedio, totales, funciones de agregado Consultas, diseo: ALT+ V, T.
Propiedades de Base de datos (contenido, estadsticas, personalizar) ALT+A, B. Ver Documentacin.
Propiedades de la Combinacin entre tablas Definir qu registros incluir de la Principal y relacionada. Ver
Pg 30, Relaciones.
Propiedades, hoja, mostrar del objeto activo o seleccionado ALT+INTRO o ALT+V, E. Para Formulario o
Informe completo, seleccionar antes en diseo con CTRL+R. Para Consultas, Clic fuera de cuadrcula o
lista de campos (deseleccionar). Para Propiedades comunes de varios controles, seleccionarlos antes.
Proteger las relaciones lgicas entre tablas relacionadas, Integridad referencial Ver Relaciones.
Q
Quitar filtro u orden ALT+ R, Q. Ver Filtrar registros.
Quitar tabla en Diseo consulta ALT+ C, Q.
R
10 MENUS EN VISTA GENERAL Pgs. 155
Recalcular campos de la ventana F9
Recorset Ver Consulta, Prop. Tipo Recordset.
Rectngulo, control Ver Pg 75, Rectngulo.
Reemplazar Hojas de datos y Formularios. CTRL+L. o ALT+E, Z. No se pueden reemplazar campos nulos o
de longitud 0. Buscarlos con CTRL+B y reemplazarlos manualmente uno a uno. Ver Buscar. Para ree-
emplazar con clculos, utilizar Consulta de Actualizacin. Ver Filtrar para ver slo los registros que sern
reemplazados.
Referencias cruzadas Ver Consulta de Referencias cruzadas.
Registro actual, deshacer cambios ESC (sin haber salido del campo) o ESC, ESC (ESC doble).
Registro actual, eliminar CTRL+- (menos)
Registro actual, seleccionar MAY+ Barra. Ver Seleccionar registro.
Registro, altura de fila ALT+ F, A.
Registro, editar Moverse entre campos con TAB. Cancelar edicin campo con ESC antes de salir de l. Cance-
lar edicin de registro con Esc dos veces antes de salir. El registro se actualiza automticamente al cam-
biar a otro. Ver Reemplazar, para varios registros con mismos datos.
Registro, guardar MAY+INTRO Antes de salir del registro.
Registro, nuevo CTRL++ (signo ms) o ALT+I, N. Para ver slo los registros nuevos, ALT+R, N. Vista
completa de nuevo con ALT+R, Q. Ver Datos, captura.
Registro/s, eliminar Ver Eliminar.
Registros duplicados, eliminar en consultas Ver Pg 50 Valores Unicos.
Registros, definir cules incluir de Tabla principal y relacionada Ver Relaciones, Tipo de Combinacin.
Registros, eliminar segn seleccin Ver Consulta de Eliminacin.
Registros, filtrar Ver Filtrar registros.
Registros, moverse entre ellos o o RePg o AvPg o CTRL+Inicio y CTRL+Fin.
Registros, ordenar En Hoja de datos: situarse sobre columna a ordenar registros y ALT+R, A o D. Por
dos columnas seguidas: Clic sobre primera, MAY y Clic sobre segunda para seleccionarlas (o
CTRL+Barra y MAY+). Primer orden el de la columna izquierda. Quitar orden con ALT+R, Q. En Tabla,
si se guarda nuevo orden, se puede deshacer con Propiedades de tabla. Ver Tabla, propiedades. Ver
Indices.
Registros, seleccionar todos CTRL+A.
Registros, seleccionar Ver Seleccionar.
Registros, teclado, opciones de comportamiento Ver ALT+ H, N, Ficha teclado.
Registros, ver slo los que se introducen Ver Entrada de datos.
Regla (diseo formulario/informe) ALT+ V, R. Mostrar o ocultar.
Reglas de Validacin Ver Validacin.
Relaciones entre tablas y consultas Men: ALT+H, L.. Definicin: Ver Pg 30, Relaciones. Doble clic en
lnea de combinacin para modificar. Ver Botn Tipo de Combinacin para definir. Ver imagen en Pg.
32.
Relleno de objetos (color, trama, degradado, transparente, etc.) Ver Objeto, relleno.
Rendimiento de la Base de datos ALT+H, Z, R. Ver Compactar Base de datos.
Reparar Base de datos ALT+ H, U, R.
Rplica de Base de datos, copia de trabajo Crear: ALT+ H, R, C. Sincronizar: ALT+ H, R, S Resolver
conflictos: ALT+ H, R, R. Recuperar diseo principal: ALT+ H, R, E.
Requerido, campo obligatorio Ver Propiedad Requerido, Pg. 28.
S
Saltar Entre paneles de ventana (Tablas, Consultas, Macros): F6. Entre secciones o entre controles (Formula-
rios, Informes) y entre columnas: TAB o MAY+TAB. Entre Fichas (Ventana Base de datos o de Propieda-
des): CTRL+TAB o CTRL+MAY+TAB.
Saltos de pgina, control Ver Pg 70, Salto de pgina. (Formulario/Informe)
Secciones de formularios Ver Pg 54, Secciones de formularios.
Secciones de informes Ver Pg 78, Secciones de informes.
Secciones, saltar entre ellas Ver Saltar.
Seguridad de la Base de datos Asistente: ALT+H, S, S. Cuentas de usuarios: ALT+ H, S, U. Permisos de
usuarios: ALT+H, S, P. Ver Pg. 15 Proteger Base de datos. Ver Pg 14 Contrasea, Seguridad.
Ver Consultas, Prop. Permisos de ejecucin. Ver Consultas, Prop. Tipo de Recordset.
Seguridad, codificar/descodificar la Base de datos ALT+H, S, O.
Seguridad, contrasea ALT+ H, S, E.. Ver Pg 14 Contrasea.
Seleccin de datos Ver Consulta de Seleccin.
Seleccionar campo completo, desde el punto de insercin (alternar) F2. Parcial: MAY+ o .
Seleccionar campo siguiente TAB. Ver ALT+ H, N, Ficha teclado.
Seleccionar columna actual CTRL+BARRA . Ampliar con MAY+ o . (Depende de ALT+ H, N, Teclado)
Seleccionar formulario o informe (diseo) CTRL+R o ALT+E, R o Clic izq. de regla. Para Propiedades.
Seleccionar objetos, controles Clic para uno o MAY y Clic en cada uno para varios, o Botn Flecha en Cua-
dro Herramientas. Ver Pg 60, Botn seleccionar objetos (Flecha).
Seleccionar registro actual MAY+BARRA. Ampliar con MAY+ o . (Depende de ALT+ H, N, Teclado)
Seleccionar registros todos CTRL+A
Si / No, campos Ver Propiedad Formato, Pg 21.
Sobres Ver Pg 79, Crear etiquetas postales. Para uno: Ver Gua Word 97.doc.
Solicitar criterios al usuario en una consulta Ver Consulta de Parmetros.
GUIA ACCESS 11
Sombras, efectos Ver Ajustes y complementos de Objetos y Controles.
SQL En Consulta, ver en SQL: ALT+ V, V. Trabajar con SQL, instrucciones. Ver Consulta especfica SQL.
Subformulario, control Ver Pg 71, Subformulario/Subinforme.
Subformulario, entrar desde campo anterior formulario principal TAB
Subformulario, entrar desde campo siguiente formulario principal MAY+TAB
Subformulario, salir hacia campo anterior formulario principal CTRL+MAY+TAB
Subformulario, salir hacia campo siguiente formulario principal CTRL+TAB
Subformulario/Subinforme, prop. Objeto de origen Ver Pg 74, Prop. Objeto de origen.
Subformulario/Subinforme, Prop. Vincular Campos Secundarios y Principales Ver Pag 74, Prop. Vincular.
Subinforme, control Ver Pg 71, Subformulario/Subinforme.
Suma continua en informes Ver Pg 80, Calcular Suma continua de un informe.
Suma, totales, funciones de agregado Consultas, diseo: ALT+ V, T.
T
Tabla principal Ver Relaciones.
Tabla, abrir INTRO o doble Clic o ALT+B. Ver Tabla, propiedades.
Tabla, analizar ALT+H, Z, T. Trata de mejorar el diseo.
Tabla, apariencia Ver Celdas, apariencia.
Tabla, cerrar Ver Objeto de Base de datos actual, cerrar.
Tabla, creacin a partir de otra(s) Ver Consulta de Creacin de tabla.
Tabla, exportar Ver Exportar.
Tabla, importar Ver Importar tabla.
Tabla, nueva Ver Nuevo objeto de Base de datos. Ver Asistente para tablas, con modelos, en Cuadro de
dilogo.
Tabla, ordenar Ver Registros, ordenar.
Tabla, propiedades Tabla, Diseo: ALT+ V, E o ALT+Intro. Descripcin, Regla de validacin general,
Texto de error de validacin, Filtro predeterminado (ltimo guardado) a aplicar, Ordenamiento predetermi-
nado (ltimo guardado) aplicado automticamente al abrir.
Tabla, vincular Ver Vincular tabla
Tablas relacionadas Ver Relaciones.
Tablas vinculadas, actualizar ALT+ H, E, M.
Tablas Ver Pg 16.
Tablas, combinacin entre tablas y consultas Ver Pg 30, Relaciones. Propiedades de la Combinacin.
Tablas, concepto, introduccin, mens Ver Pg 16 Tablas.
Tabulacin, orden (diseo formulario) ALT+ V, B. Orden en que saltar la tabulacin.
Tamao de controles Ver Controles, tamao
Tamao de campo Ver Propiedad Tamao del campo, Pg. 20.
Teclado, opciones de comportamiento en registros Ver ALT+ H, N, Ficha teclado.
Texto y Memo, campos Ver Propiedad Formato, 21.
Texto Ver Fuente.
Tipo de Campo Ver Propiedad Tipo del campo, Pg. 19.
Tipo de Combinacin entre tablas o consultas Definir qu registros incluir de Tabla principal y relacionada
Ver Relaciones., Tipo de Combinacin.
Tipo de letra, Fuente ALT+ F, U.
Tipo de origen de la fila Ver Cuadro de Lista y Comb., Prop. Tipo de origen.
Tipo Recordset Ver Consulta, Prop. Tipo Recordset.
Ttulo de Campo Ver Propiedad Ttulo del campo, Pg 26.
Ttulos de columnas Ver Consulta, Prop. Ttulos de columnas.
Total o promedio, calcular para grupo de informe Ver Grupo del Informe.
Totales, funciones de agregado (Suma, Mn. Mx, Promedio, Cuenta, etc.) Consultas, diseo: ALT+ V, T.
U
Unir dos columnas en una Ver Consulta de Unin
V
Validacin Reglas para limitar los valores de los campos. Ver Propiedad Validacin del campo, Pg. 27.
Probar reglas en registros existentes : ALT+E, P.
Valor predeterminado campo Ver Propiedad Valor predeterminado, Pg. 26.
Valores en blanco (Null) Ver Pg 51, Campos en blanco en consultas. Operar con ellos.
Valores nicos Ver Pg 50 Valores Unicos. Eliminar registros duplicados en consultas.
Valores y opciones predeterminadas de la Base de datos ALT+ H, N.
Ventana Base de datos Ver Base de datos, ventana
Ventanas, alternar CTRL+F6
Ver campo de entrada completo MAY+F2.
Ver cdigo del Formulario o Informe activo ALT+V, G.
Ver fichas de objetos, propiedades, etc. Moverse entre ellas con CTRL+TAB o CTRL+MAY+TAB.
Ver lista de campos (diseo formulario/informe) ALT+ V,. L. Para ver y arrastrar.
Ver lista de objetos en su ficha de forma diferente ALT+V (Iconos, lista, detalles).
Vincular al pegar Ver Pegado especial
Vincular Campos Secundarios y Principales, propiedades Ver Subformulario/Subinforme, Vincular.
Vincular tabla ALT+A, O, V . Actualizar vnculos de tablas: ALT+ H, E, M. Ver Vnculos.
12 MENUS EN VISTA GENERAL Pgs. 155
Vnculos, operaciones con objetos seleccionados ALT+E, V. Ver Vincular tabla.
Vista Diseo de pantalla (Word) ALT+V, L. En ALT+H, N, Ficha Ver: Activar Ajustar a la ventana. Poner
Agrandar fuentes mayores que 8. Desactivar Marcadores. Pantalla completa: ALT+V, P (mover barra a la
derecha). Ver Gua Word 97.doc
Vista Diseo desde Ventana Base de datos ALT+D o CTRL+INTRO.
Vista Diseo desde Vista del objeto actual ALT+V, D.
Vista Hoja de datos del subformulario desde Vista Formulario principal ALT+V, U.
Vista Objeto desde Vista Diseo de tabla, consulta o formulario actual ALT+V, H.
Vista Preliminar de impresin ALT+A, M.
Vista Preliminar de impresin del informe Informe, Diseo: ALT+ V, M.
Vista Previa del diseo del Informe ALT+ V. T. Muestra esquema del informe. ALT+V desde Ventana
Base de datos.
Vista SQL En Consulta: ALT+ V, V.
Visual Basic, mdulos Ver Mdulos.
W
WordArt Texto artstico. Ver Ajustes y complementos de Objetos y Controles.
Z
Zoom para ampliar rea de entrada MAY+F2

BASE DE DATOS
Una base de datos es un conjunto de informacin relacionada con un asunto o con una finalidad, tal como el
seguimiento de los pedidos de clientes o una coleccin de msica. Si la base de datos no est almacenada en una
mquina, o slo lo est parte de la misma, es posible que necesite controlar informacin de varias fuentes distin-
tas que tiene que organizar y coordinar usted mismo.
Si utiliza Access, puede administrar toda la informacin desde un nico archivo de base de datos. Dentro de este
archivo, divida los datos en contenedores de almacenamiento separados denominados tablas; vea, agregue y
actualice los datos en las tablas mediante formularios en lnea; busque y recupere solamente los datos que necesi-
te mediante consultas; y analice o imprima los datos con el esquema deseado mediante informes.
Para almacenar los datos, cree una tabla para cada tipo de datos de informacin. Defina relaciones entre las ta-
blas para recuperar datos de varias tablas en una consulta, formulario o informe.
Cree una consulta para buscar y recuperar exactamente aquellos datos que cumplen unas determinadas condicio-
nes que usted mismo especifica. Una consulta tambin puede actualizar o eliminar mltiples registros al mismo
tiempo, as como realizar sobre los datos diversos clculos incorporados o personalizados.
Cree un formulario para ver, introducir o cambiar datos directamente en una tabla de una manera sencilla. Cuan-
do abre un formulario, Microsoft Access recupera los datos de una o ms tablas y los muestra en la pantalla
usando el esquema que eligi en el Asistente para formularios o usando un esquema que cre desde el principio.
Cree un informe para analizar los datos o presentarlos de una determinada manera al imprimirlos. Por ejemplo,
podra imprimir un informe que agrupe datos y calcule totales, y otro informe con distintos datos en un formato
para imprimir etiquetas de correo.
Access proporciona una base de datos y dos aplicaciones de ejemplo que puede utilizar mientras est aprendien-
do Access. Se encuentran normalmente en C:\Archivos de programa\ Microsoft Office\Office\Ejemplos.
La base de datos de ejemplo Neptuno. Utilice esta base de datos de ejemplo cuando comience a apren-
der Access. La base de datos Neptuno contiene los datos de ventas de una compaa ficticia denominada Im-
portadores Neptuno, que importa y exporta comida especializada de todo el mundo. Si examina las tablas, con-
sultas, formularios, informes, macros y mdulos incluidos en la base de datos Neptuno, podr desarrollar ideas
para su propia base de datos de Access. Tambin puede utilizar los datos de Neptuno para experimentar con
Access antes de introducir sus propios datos. Por ejemplo, puede comenzar a practicar el diseo de consultas
utilizando la tabla Pedidos ya que contiene suficientes registros para producir resultados significativos.
La base de datos Neptuno incluye un archivo de Ayuda llamado Mustreme que presenta las caractersticas prin-
cipales de la base de datos.
Aplicacin de ejemplo Pedidos. La aplicacin de ejemplo Pedidos es una ayuda instructiva para Crea-
cin de aplicaciones con Access 97. Utilice esta aplicacin con Creacin de aplicaciones para aprender cmo
crear una aplicacin sencilla.
Los empleados de la compaa ficticia Importadores Neptuno utilizan la aplicacin Pedidos para introducir pedi-
dos nuevos e imprimir facturas. La aplicacin muestra diferentes tcnicas de creacin de aplicaciones, por ejem-
plo: controlar cmo se inicia una aplicacin; utilizar formularios para enlazar los objetos; personalizar la interfaz
de usuario con barras de mens, barras de herramientas, teclas de mtodo abreviado y mensajes de error persona-
lizados; y controlar el orden de tabulacin en tiempo de ejecucin.
La aplicacin Pedidos incluye un archivo de ayuda denominado Mustreme que proporciona una introduccin a
los formularios e informes incluidos en la aplicacin.
La base de datos de ejemplo Soluciones para el programador. Utilice esta aplicacin para aprender
tcnicas de creacin de aplicaciones ms complejas. La aplicacin de ejemplo Soluciones para el programador es
una coleccin de formularios, informes y elementos de interfaz que se utilizan habitualmente en la creacin de
GUIA ACCESS 13
aplicaciones. Puede utilizar los ejemplos de Soluciones para el programador como plantillas para los formularios
e informes que desee crear o como ideas para mejorar sus aplicaciones.
La aplicacin Soluciones para el programador incluye un archivo de ayuda denominado Mustreme que describe
cmo reproducir los formularios e informes incluidos en la aplicacin.
Nota: Access incluye tambin un Asistente para bases de datos que puede usar para crear bases de datos de uso
corriente, como la base de datos Administrador de contactos. Puede utilizar las bases de datos creadas con el
Asistente para un uso inmediato o como una herramienta de aprendizaje para ayudarle a disear sus propias
bases de datos.
MENUS EN VI STA GENERAL
MENU ARCHI VO
Obtener datos externos, Importar. Copia los datos de un archivo de texto, hoja de clculo o tabla de base de
datos a una tabla de Access 97. Adems, copia los objetos de otra base de datos de Access a la base de datos
actual.
Obtener datos externos, Vincular tablas: Vincula los datos de una tabla de otra base de datos a una tabla de la
base de datos actual de Access 97. La vinculacin de datos le permite la lectura y en muchos casos la actualiza-
cin de los datos en el origen de datos externo sin tener que importar. El formato del origen de datos externo no
se modifica para que pueda continuar utilizando el archivo con el programa que lo creo originalmente, pero tam-
bin puede agregar, eliminar o editar sus datos utilizando Microsoft Access.
Guardar como o exportar: Guarda una copia de un objeto seleccionado de la base de datos activa bajo un
nombre distinto. Exporta el resultado de un objeto seleccionado a un archivo externo (por ejemplo como texto o
como formato de texto enriquecido RTF) o a una base de datos externa (como Access o Paradox). Convierte una
macro seleccionada a un nuevo mdulo de Visual Basic.
Guardar como HTML: Inicia el Asistente para publicar en el Web, que crea o modifica una publicacin del
Web. Puede seleccionar cualquier combinacin de objetos de base de datos para exportar a formatos estticos
(.html) o dinmicos (.idc/.htx y .asp) y almacenar varios valores de opcin en un perfil de publicacin Web.
Comando Configuracin de pgina: Controla la configuracin de los mrgenes (por ejemplo el ancho del
margen), la configuracin de las pginas (por ejemplo, la orientacin y el tamao del papel), as como opciones
de diseo para formularios e informes (como el nmero de columnas a imprimir).
Vista preliminar: Muestra el objeto activo, tabla, formulario o informe, tal y como va a aparecer cuando se
imprima (excepto en la ventana Macro, donde presenta primero el Documentador). Puede acercar o alejar una
pgina o ver varias pginas al mismo tiempo.
Imprimir: Imprime un formulario, informe, tabla, consulta o mdulo. Primero presenta el cuadro de dilogo
Imprimir, con lo que se puede cambiar la configuracin y las propiedades de la impresora. En la ventana Macros,
presenta el Documentador, de forma que pueda elegir imprimir una o ms secciones del informe. Luego, impri-
me el informe de la macro en la impresora predeterminada.
Enviar: Enva el resultado de una tabla, consulta, formulario, informe o mdulo mediante su programa de correo
electrnico. Puede enviar todo el resultado de un objeto o una parte seleccionada de una hoja de datos en alguno
de los siguientes formatos: HTML, texto MS-DOS, formato de texto enriquecido RTF o Excel.
Propiedades de la base de datos: Muestra las propiedades de la base de datos, de forma que pueda verlas o
modificarlas.
MENU EDI CI ON
Crear acceso directo. Crea un acceso directo, para que pueda abrir rpidamente un objeto de la base de datos,
haciendo clic en un icono. Puede crear accesos directos para objetos que estn almacenados en una base de datos
en su PC, en un servidor de archivos de la red o en un directorio compartido. Los iconos de acceso directo se
pueden situar en el Escritorio, en una carpeta o en el men Inicio.
Eliminar: Elimina de forma permanente el elemento seleccionado sin colocarlo en el Portapapeles. En la venta-
na Relaciones, al eliminar una lnea de combinacin se elimina la relacin entre las dos tablas. En la vista Diseo
de una consulta, la eliminacin de una lnea de combinacin hace que la consulta devuelva todas las combina-
ciones de registros entre las dos tablas, pero no elimina la relacin, si es que existe, entre las dos tablas.
Cambiar nombre: Cambia el nombre del objeto seleccionado de la base de datos. Escriba el nuevo nombre y
presione INTRO. Puede restablecer el nombre original haciendo clic en el comando Deshacer Cambiar nombre
en el men Edicin antes de ejecutar ningn otro comando.
MENU VER
Objetos de la Base de Datos activa. Muestra la lista de cada clase de objetos de la base de datos activa, segn
seleccin.
Propiedades: Presenta la hoja de propiedades del elemento seleccionado, por ejemplo, un campo de una tabla o
un control de un formulario. Si no se selecciona nada, muestra la hoja de propiedades del objeto activo.
Cdigo: Presenta el cdigo del formulario o informe seleccionado en la ventana Mdulo.
Barras de herramientas: Muestra u oculta las barras de herramientas. Para mostrar una barra de herramientas,
active la casilla de verificacin que se encuentra junto a su nombre. Para ocultar una barra de herramientas, des-
active la casilla de verificacin correspondiente. Personalizar: Personaliza los botones de la barra de herramien-
tas, los comandos de men y la asignacin de teclas de mtodo abreviado.
14 MENUS EN VISTA GENERAL Pgs. 155
MENU I NSERTAR
Tabla, Consulta, etc.: Inserta una nueva Tabla, Consulta, etc. Es lo mismo que ir a la ficha correspondiente en
el dilogo general de la Base de Datos y seleccionar Nuevo.
Autoformulario: Crea Automticamente un formulario, basado en la tabla o consulta seleccionada. Ver Crear
con Autoformulario, pg. 53.
Autoinforme: Crea automticamente un informe, basado en la tabla o consulta seleccionada.
MENU HERRAMI ENTAS.
Vnculos con Office, Combinar con MS Word . Inicia el Asistente para combinar correspondencia con Word,
que combina los datos de Access con un documento Word, de forma que puede crear, por ejemplo, cartas con
formato o etiquetas postales.
Vnculos con Office, Publicar con MS Word: Crea un archivo con formato de texto enriquecido(.rtf) con el
objeto seleccionado (por ejemplo una tabla, un informe, o una parte de una hoja de datos) y lo carga en Word.
De forma predeterminada, el nombre de archivo es el nombre del objeto, la extensin del archivo es .rtf, y el
documento se guarda en la carpeta de Access.
Vnculos con Office Analizar con MS Excel: Crea un archivo Excel (.xls) con el objeto seleccionado (por
ejemplo una tabla, un informe, o una parte de una hoja de datos) y lo carga en Excel. De forma predeterminada,
el nombre de archivo es el nombre del objeto, la extensin del archivo es .xls, y el documento se guarda en la
carpeta de Access.
Relaciones: Presenta la ventana Relaciones de forma que pueda ver, modificar o definir relaciones entre tablas y
consultas. Ver Tablas, Men Herramientas, Relaciones. Ver Pg 30, Relaciones.
Analizar, Tabla: Inicia el Asistente para anlisis de tablas, el cual analiza una tabla, y si es necesario, la divide
en tablas relacionadas creando un diseo de tablas ms eficiente.
Analizar, Rendimiento: Inicia el Analizador de rendimiento, que analiza el rendimiento de la base de datos y
sus objetos.
Analizar, Documentador. Ver, imprimir, dar salida o guardar las caractersticas de diseo de los objetos de la
base de datos
Utilidades, Convertir base de datos:
Convierte una base de datos de una versin anterior de Access a una base de datos de Access 8.0.
Utilidades, Compactar base de datos: Vuelve a organizar la forma en la que est fragmentada la base de datos
almacenada en el disco. La compactacin de una base de datos suele reducir su tamao y mejorar su rendimien-
to.
Utilidades, Reparar base de datos: Repara una base de datos daada. La base de datos puede daarse si, por
ejemplo, se produce una interrupcin del suministro elctrico o si el equipo experimenta un problema de hardwa-
re mientras se est utilizando la base de datos.
Utilidades, Crear archivo MDE: Copia una base de datos no abierta (.mdb) a una base de datos MDE (.mde).
Utilice esta opcin para crear una aplicacin de base de datos compilada, compactada y que realice un uso efi-
ciente de la memoria en la que el cdigo de origen de VBA se ha quitado para que los usuarios no puedan modi-
ficarlo.
Seguridad, Establecer contrasea para la base de datos: Alterna entre establecer y eliminar la contrasea
utilizada para abrir la base de datos activa. Slo los usuarios con autorizacin de Administrador en la base de
datos activa y que conozcan la contrasea actual pueden establecer o eliminar la contrasea de la base de datos.
Proteger una base de datos agregando una contrasea de base de datos
1 Cierre la base de datos. Si la base de datos se comparte en una red, pida a los dems usuarios que cie-
rren la base de datos.
2 Haga una copia de seguridad de la base de datos y gurdela en un lugar seguro.
3 En el men Archivo, haga clic en Abrir base de datos.
4 Seleccione la casilla de verificacin Exclusiva y despus abra la base de datos.
5 En el men Herramientas, seale Seguridad y despus haga clic en Establecer contrasea para la base de
datos.
6 En el cuadro Contrasea, introduzca su contrasea. Las contraseas distinguen maysculas de minscu-
las.
7 En el cuadro Confirmar contrasea, confirme su contrasea escribiendo de nuevo la contrasea y
haciendo despus clic en Aceptar.
La contrasea est ahora habilitada. La prxima vez que se abra la base de datos, aparecer un cuadro de dilogo
pidiendo la contrasea.
Precaucin
Si pierde u olvida su contrasea, no puede ser recuperada, de forma que no podr abrir su base de datos.
No utilice una contrasea de base de datos si va a replicar una base de datos. Las bases de datos replica-
das no pueden sincronizarse si se definen contraseas para ellas.
Notas
Si fuera necesario una mayor seguridad que la que le proporciona la contrasea de la base de datos, es
necesario que defina la seguridad a nivel de usuario.
GUIA ACCESS 15
No es posible habilitar una contrasea de base de datos si se ha definido seguridad a nivel de usuario
para su base de datos y no tiene permiso de Administrador para la base de datos. Asimismo, una contrasea de
base de datos se define adems de la seguridad a nivel de usuario. Si esta seguridad a nivel de usuario hubiera
sido definida, permanece en efecto cualquier restriccin basada en los permisos de seguridad a nivel de usuario.
Si una tabla de una base de datos protegida con contrasea est vinculada, la contrasea se guarda en la
base de datos y se vincula a la misma cuando se establece el vnculo. Esto puede tener consecuencias inespera-
das.
Seguridad, Permisos de usuario y de grupo: Muestra, asigna y elimina los permisos de las cuentas de usuario
y de grupo para la base de datos activa y sus objetos. As mismo, muestra, asigna y cambia la pertenencia de los
objetos de la base de datos.
Seguridad, Cuentas de usuario y grupo: Muestra, imprime, agrega, elimina y cambia las cuentas de usuario y
de grupo. Adems, cambia la contrasea de la cuenta de usuario predeterminada, Administrador.
Seguridad, Asistente para seguridad a nivel de usuario: Inicia el Asistente para seguridad a nivel de usuario,
que crea una nueva copia protegida de la base de datos activa.
Proteger una base de datos con el Asistente para seguridad a nivel de usuario.
1.- Cierre Access. Cree un nuevo Grupo de Trabajo a partir de Wrkgadm.exe en C:\Windows\System. Organi-
zacin no es obligatorio. Cambie el nombre del archivo System.mdw y colquelo como *.mdw junto a la base
de datos para acompaarlo en las copias de seguridad. Nunca debera sustituir un archivo *.mdw ya existente.
Comience siempre creando con System.mdw en la misma carpeta que Wrkgadm.exe.
2.-Abra la base de datos y en Herramientas/Seguridad/Cuentas de Usuario y Grupo/Ficha Usuarios. Ver que
Nombre es Administrador. Pase a Ficha Cambiar contrasea de conexin, deje en blanco Contrasea anterior y
en Nueva y Confirmar escriba la nueva y gurdela.
3.- Cierre Access y al abrirlo de nuevo le pedir la contrasea de Administrador. Escrbala y abra la base de
datos. Vuelva a la Ficha Usuarios del punto 2 y Nuevo. Escriba su nombre de administrador y contrasea y acp-
tela. En Grupos disponibles seleccione administradores y Agregar, con lo que ser nuevo miembro de adminis-
tradores y usuarios (todos los miembros tambin son usuarios).
4.- Cierre Access y vuelva a entrar con el nombre y contrasea del nuevo administrador. Pase a la Ficha Usua-
rios y en Nombre busque Administrador y en Miembro de seale Administradores y Quitar. Administrador
quedar slo como Usuario, sin ningn acceso. Administrador no se puede eliminar. Pase a la ficha Asistente
para seguridad a nivel de usuario y siga sus pasos. Al terminar, antes de eliminar el original no protegido, debe
copiarlo en un diskette, como seguridad. Al eliminar el original, a la base protegida le puede dar el mismo nom-
bre.
5.- Abra la nueva base de datos protegida y cree los nuevos nombres de los posibles nuevos administradores y/o
usuarios, de forma similar al paso 2 dnde se cre usted como nuevo administrador. Cada uno, aparte de cual-
quier administrador, puede cambiar despus su contrasea.
6.- Asigne a cada usuario sus permisos en la ficha Permisos de usuarios y de grupos en Seguridad.
Ver Crear cuentas de usuario o de grupo y conceder permisos, Asignar o quitar permisos para una base de
datos y para objetos y Asignar permisos predeterminados para nuevos objetos de base de datos, con el Asis-
tente de Ayuda de Access. En principio, todo el grupo Usuarios no tiene ningn permiso, excepto los que tam-
bin son administradores.
Seguridad, Codificar o descodificar base de datos: Realiza una copia codificada o descodificada de la base de
datos. La codificacin de una base de datos protege su informacin al hacerla indescifrable para los programas
de utilidades o los procesadores de texto (aunque con un ligero descenso del rendimiento). La descodificacin de
la base de datos invierte la codificacin.
Rplica, Sincronizar ahora: Sincroniza la rplica o el Diseo principal abiertos con otro miembro del conjunto
de rplicas.
Rplica, Crear rplica: Crea una rplica de la base de datos abierta en una ubicacin designada. Tambin puede
crear una rplica arrastrando la base de datos desde la ventana Base de datos hasta Mi Maletn de Windows en el
escritorio. Las rplicas permiten a usuarios situados en distintas ubicaciones compartir fcilmente los cambios
que estn realizando en la base de datos.
Rplica, Resolver conflictos: Inicia el Asistente para resolver conflictos, que muestra los registros que estaban
en conflicto durante las sincronizaciones anteriores entre el Diseo principal o la rplica abierta y otros miem-
bros del conjunto de rplicas.
Rplica, Recuperar diseo principal: Convierte la rplica abierta en el Diseo principal para el conjunto de
rplicas. El Diseo principal es el nico miembro del conjunto de rplicas que puede utilizar para cambiar la
estructura de la base de datos. Nota: Utilice este comando slo cuando la rplica de Diseo principal se haya
perdido permanentemente. El uso de ms de un Diseo principal puede provocar problemas irreparables en el
conjunto de rplicas.
Inicio: Controla y personaliza varias propiedades y acciones de inicio de la base de datos, tales como el icono y
el ttulo de la aplicacin, y cual es el formulario inicial a presentar.
Macro, Ejecutar macro: Ejecuta una macro.
Macro, Convertir macros a Visual Basic: Convierte una macro a procedimientos de evento de Visual Basic en
el mdulo formulario o informe.
16 TABLAS - MENUS EN VISTA HOJA DE DATOS Pgs. 155
Macro, Crear men a partir de macro: Crea una nueva barra de mens de estilo Access 97 desde una macro
seleccionada.
Macro, Crear barra de herramientas a partir de macro: Crea una nueva barra de herramientas de estilo
Access 97 desde una macro seleccionada.
Macro, Crear men contextual a partir de macro: Crea un nuevo men contextual de estilo Access 97 desde
una macro seleccionada.
Controles ActiveX: Registra o elimina controles ActiveX en la base de datos de registro de Windows (que se
utiliza para registrar informacin acerca de las aplicaciones, por ejemplo el nombre de archivo y la ruta de acce-
so). El registro determina si los controles ActiveX estn disponibles o no para ser utilizados.
Complementos, Administrador de complementos. Instala, desinstala o personaliza complementos, que son
herramientas que extienden la funcionalidad de Access. Los complementos incluyen asistentes, generadores y
complementos de men (que son elementos adicionales de men que puede agregar al comando Complementos
del men Herramientas).
Complementos. Divisor de bases de datos: Divide la base de datos actual en dos bases de datos: una base de
datos cliente que contiene todas las tablas y una base de datos cliente que contiene todos los objetos restantes y
tablas vinculadas a la base de datos cliente. Se utiliza, por ejemplo, para permitir a los usuarios que personalicen
sus propios formularios e informes, al mismo tiempo que se mantiene un nico origen de datos en una red.
Complementos. Administrador de tablas vinculadas: Muestra o actualiza los vnculos a las tablas. Se utiliza,
por ejemplo, para actualizar los vnculos cuando la estructura o ubicacin de una tabla vinculada ha cambiado.
Complementos. Administrador del panel de control: Crea, modifica y elimina formularios de tipo Panel de
control de una aplicacin.
Opciones: Personaliza las caractersticas del entorno de Access, tales como las fuentes y colores de la pantalla,
las acciones del teclado y las opciones de presentacin.
MENU MUESTREME.
Presenta la explicacin del ejemplo de Base de Datos Neptuno, as como los conceptos principales de las bases
de datos en general.


TABLAS
Una tabla es un conjunto de datos sobre un tema especfico, como Productos o Proveedores. Si usa una tabla para
cada tema evita la duplicidad de datos, lo que hace que su base de datos sea ms eficiente y reduzca los errores
de entrada de datos. Las tablas organizan los datos en columnas ( denominadas Campos) y filas (Registros).
En la vista Hoja de datos de una tabla, puede agregar, modificar o ver los datos de la misma. Tambin puede
revisar la ortografa de los datos de la tabla, imprimirlos, ordenar o filtrar registros, cambiar la apariencia de la
hoja de datos o cambiar la estructura de la tabla agregando o eliminando columnas.
En la vista Diseo, puede crear una tabla completa a partir de cero, o agregar, eliminar o personalizar campos de
una tabla existente.
TABLAS - MENUS EN VI STA HOJ A DE DATOS
MENU EDI CI ON
Pegado especial: Vincula o incrusta un objeto OLE o pega texto en el formulario, informe u hoja de datos acti-
va. Adems, permite seleccionar el formato de datos para el objeto y mostrarlo como un icono.
Pegar datos anexados: Agrega registros desde el Portapapeles al final del formulario u hoja de datos activa. Los
registros que Access no puede anexar (por ejemplo, debido a errores de validacin) se colocan en la tabla Erro-
res de pegado.
Eliminar. Igual que en Vista General.
Vnculos OLE y DDE: Actualiza, modifica, copia, vuelve a conectar o interrumpe los vnculos del objeto selec-
cionado.
MENU VER
Vista Diseo: Cambia desde la vista activa a la vista Diseo de la tabla, consulta, formulario o informe que est
activo.
Vista Hoja de datos: Cambia desde la vista activa a la vista Hoja de datos de la tabla, consulta o formulario que
est activo.
Hoja de datos del subformulario: Alterna entre las vistas Formulario y Hoja de datos del subformulario activo.
MEN I NSERTAR
Columna: En la vista Diseo de la consulta y en la ventana Filtro u orden avanzado, inserta una columna a la
izquierda de la columna seleccionada en la cuadrcula de diseo, de modo que pueda agregar un campo a la con-
sulta o el filtro activo. Para seleccionar una columna, haga clic en el selector de columnas.
En la vista Hoja de datos de la tabla, inserta una nueva columna a la izquierda de la columna seleccionada o de la
columna que tiene el punto de insercin actual.
Objeto: Inserta un objeto OLE en un marco de objeto dependiente o independiente en un formulario o informe,
o un campo de objeto OLE seleccionado en una hoja de datos. Para editar el objeto utilizando su aplicacin aso-
ciada, haga doble clic en el objeto.
GUIA ACCESS 17
Hipervnculo: Inserta o modifica una direccin de hipervnculo o una direccin URL (Uniform Resource Loca-
tor), incluida la subdireccin y el tipo de ruta de acceso (ya sea absoluta o relativa). En la vista Hoja de datos y
Formulario, el campo de direccin de hipervnculo debe estar seleccionado.
MENU FORMATO
Fuente. Cambia el tipo de letra para todos los nombres de los campos y los datos de una hoja de datos. La fuente
predeterminada es Arial, el estilo es Regular, y el tamao predeterminado es 10 puntos.
Celdas. Muestra o quita la cuadrcula horizontal y vertical, cambia el color de la celda y de la cuadrcula y cam-
bia la apariencia de la celda (por ejemplo, bajo relieve o sobre relieve). Ms opciones con la Barra de Herramien-
tas Formato (Hoja de datos).
Alto de registro (fila). Men para todos. Arrastrar borde inferior en cabecera de registro. Seleccionando varias
antes toman la misma altura.
Ancho de Columna. Men para todas. Arrastrar borde derecho en cabecera de columna. Seleccionando varias
antes toman el mismo ancho.
Cambiar nombre columna. Permite cambiar el nombre de la columna seleccionada. Nota: Este comando cam-
bia el nombre del campo en la hoja de datos y puede obligar a cambios en la configuracin de propiedades, en
consultas, en macros y en cdigo que hagan referencia al nombre antiguo.
MENU REGI STROS
Filtro, Filtro por formulario: Presenta la ventana Filtro por formulario, que es una versin en blanco del for-
mulario la hoja de datos activa, mediante la cual se pueden filtrar los datos.
Filtro. Filtro por seleccin: Filtra los registros en base a los datos seleccionados. Para filtrar por seleccin,
seleccione un campo o parte de un campo una hoja de datos o en un formulario, y a continuacin haga clic en
Filtro por seleccin.
Filtrar excluyendo la seleccin: Filtra los registros excluyendo los datos seleccionados. Para filtrar excluyendo
la seleccin, seleccione un campo o parte de un campo de una hoja de datos o formulario, elija Filtro en el men
Registros y haga clic en Filtrar excluyendo la seleccin.
Filtro u orden avanzado: Muestra la ventana Filtro u orden avanzado, para permitir la creacin de un filtro que
se aplicar a la hoja de datos o al formulario.
Ordernar: Ordena los registros en base a la columna o columnas seleccionadas (0 a 9, A a Z). Las ordenaciones
subsiguientes reemplazan a las anteriores. Para deshacer una ordenacin, seleccione Quitar filtro u ordenar en el
men Registros.
Aplicar filtro u ordenar: Aplica un filtro o un orden a la hoja de datos o el formulario activo.
Quitar filtro u ordenar. Quita un filtro o un orden de la hoja de datos o el formulario activo, si hay uno aplica-
do, y muestra los registros ms actuales.
Guardar registro. MAY-ENTRAR
Actualizar: Actualiza los registros en el formulario u hoja de datos activa con los cambios realizados a los datos
por otros usuarios de un entorno multiusuario.
Entrada de datos. Oculta todos los registros activos y muestra un registro en blanco, de forma que pueda intro-
ducir datos en un formulario u hoja de datos. Slo se mostrarn los nuevos registros agregados, hasta que elija el
comando Quitar filtro u ordenar en el men Registros.
TABLAS - MENUS EN VI STA DI SEO.
MENU EDI CI ON
Clave principal (Smbolo llave): Alterna entre establecer y eliminar un campo de clave principal, que es un
identificador nico para cada registro de una tabla.
Clave Principal
Qu tipo de clave principal debo utilizar?
La potencia de un sistema de base de datos relacional como Access reside en su capacidad para encontrar y reu-
nir rpidamente informacin almacenada en tablas independientes mediante consultas, formularios e informes.
Para ello, cada tabla debe incluir un campo o un conjunto de campos que identifique exclusivamente cada regis-
tro almacenado en la tabla. Esta informacin se denomina clave principal de la tabla. Una vez designada una
clave principal de una tabla, con el fin de garantizar su exclusividad, Access impide que se almacenen valores
duplicados o Nulos en los campos de la clave principal.
Existen tres tipos de clave principal que pueden definirse en Access: Autonumrico, Campo simple y Campos
mltiples.
Claves principales de Autonumrico
Un campo Autonumrico puede establecerse para que introduzca automticamente un nmero secuencial cuando
se agrega un registro a la tabla. Designar un campo de este tipo como clave principal de una tabla es la forma
ms sencilla de crear una clave principal. Si no establece una clave principal antes de guardar una tabla recin
creada, Access le preguntar si desea que cree una clave principal automticamente. Si contesta afirmativamen-
te, Access crear una clave principal de Autonumrico. Existen otras consideraciones adicionales que deben
tenerse en cuenta si la tabla se va a utilizar con una rplica de base de datos.
18 TABLAS - MENUS EN VISTA DISEO. Pgs. 155
Claves principales de Campo simple
Si tiene un campo que contiene valores exclusivos, como nmeros de identificacin o nmeros de pieza, puede
designar ese campo como la clave principal. Si el campo seleccionado como clave principal tiene valores dupli-
cados o Nulos, Access no establece la clave principal. Puede ejecutar una Consulta de buscar duplicados con el
fin de determinar qu registros contienen datos duplicados. Si no puede eliminar fcilmente las entradas duplica-
das mediante la edicin de los datos, puede agregar un campo Autonumrico y establecerlo como clave principal
o bien definir una clave principal de campos mltiples.
Claves principales de Campos mltiples
En situaciones en las que no se puede garantizar la exclusividad de un solo campo, puede designar dos o ms
campos como clave principal. La situacin ms comn en la que surge este problema es en la tabla utilizada para
relacionar otras dos tablas en una relacin varios a varios. La tabla Detalles de pedidos de la base de datos de
ejemplo Neptuno es una tabla de este tipo, ya que relaciona las tablas Pedidos y Productos. Su clave principal
est formada por dos campos: Id. De pedido e Id. De producto. La tabla Detalles de pedidos puede mostrar va-
rios productos y varios pedidos, pero cada producto slo puede aparecer una vez en cada pedido, de modo que la
combinacin de los campos Id. De pedido e Id. De producto produce una clave principal apropiada.
Otro ejemplo puede ser una base de datos de inventario que utiliza un campo de nmero de pieza o dos o ms
campos (pieza y subpieza).
Nota: Si no est seguro de poder seleccionar una combinacin de campos apropiada para una clave principal de
campos mltiples, probablemente resultar ms conveniente agregar un campo Autonumrico y designarlo como
la clave principal en su lugar. Por ejemplo, la combinacin de los campos Nombre y Apellidos para crear una
clave principal no es conveniente, ya que pueden llegar a producirse duplicados al combinar estos dos campos.
Probar reglas de validacin: Informa de si los datos de una tabla cumplen las reglas de validacin de registro y
de campo de una tabla (las propiedades ReglaDeValidacin, Requerido (Required) y Permitir longitud cero
(AllowZeroLength)). Si la tabla es grande, esta operacin puede tardar bastante tiempo.
MENU VER
ndices: Presenta la ventana Indices para que pueda ver, modificar o crear ndices. Los ndices pueden acelerar
las bsquedas y las consultas para grandes volmenes de datos, pero pueden hacer ms lenta la entrada de datos
porque Access debe actualizar los ndices cada vez que se agrega, modifica o elimina un registro.
MENU I NSERTAR.
Campo de bsqueda. Crea un campo de consulta (columna) para el tipo de datos seleccionado. Un campo de
consulta busca valores de otra tabla (como por ejemplo un distribuidor de la tabla Distribuidores) y almacena la
referencia a estos valores en la tabla principal (por ejemplo la identificacin del distribuidor en la tabla Pedidos)
Campo de Bsqueda
Crear un campo que busque o enumere los valores de las tablas:
Mediante el Asistente para bsquedas, puede crear un campo que muestre uno de dos tipos de listas para facilitar
la introduccin de datos:
Una lista de bsqueda que muestra valores buscados en una tabla o consulta existente
Una lista de valores que muestra un conjunto fijo de valores introducidos al crear el campo
La lista de bsqueda ms comn muestra los valores buscados en una tabla relacionada. Por ejemplo, el campo
Proveedor de la tabla Productos de la base de datos de ejemplo Neptuno muestra esta lista de bsqueda. Esta lista
se crea buscando los valores de Proveedor en la tabla Proveedores y mostrando los nombres de Proveedor co-
rrespondientes. La seleccin de un valor de una lista de bsqueda establece el valor de la clave externa del regis-
tro actual (Proveedor en la tabla Productos) en el valor de la clave principal del registro correspondiente de la
tabla relacionada (Id. De proveedor en la tabla Proveedores). De esta forma se crea una asociacin con la tabla
relacionada para mostrar (pero no almacenar) los nombres del Proveedor en el registro. La clave externa (Id. De
proveedor) se almacena pero no se muestra. Por ello, toda actualizacin realizada en los datos de la tabla Pro-
veedores se reflejar en la lista y en los registros de la tabla Productos. Debe definir un campo de lista de
bsqueda en la tabla que contendr la clave externa y que mostrar la lista de bsqueda. En este ejemplo, el
campo de lista de bsqueda se definir en la tabla Productos.
Una lista de valores tiene el mismo aspecto que una lista de bsqueda, pero est formada por un conjunto fijo de
valores introducidos al crearla. Una lista de valores slo debe utilizarse para los valores que no cambian muy a
menudo y que no necesitan almacenarse en una tabla. Por ejemplo, una lista para un campo Tratamiento que
contenga Sr., Sra. Y Srta. Es una buena candidata para una lista de valores. Al elegir un valor de una lista de
valores se almacena ese valor en el registro; no se crea una asociacin a una tabla relacionada. Por ello, si poste-
riormente cambia cualquiera de los valores originales de la lista de valores, el cambio no se reflejar en los regis-
tros agregados antes de realizar este cambio.
Puede agregar un nuevo campo de lista de valores o de bsqueda tanto en la vista Diseo como en la vista Hoja
de datos de la tabla. No obstante, si el campo que desea utilizar como clave externa para un campo de bsqueda
ya existe, debe abrir la tabla de ese campo en la vista Diseo para definir el campo de bsqueda. Por ejemplo, si
dispone de una tabla Productos que ya tiene definido un campo Id. De proveedor y desea cambiarlo a un campo
de bsqueda para que muestre los nombres de proveedores de la tabla Proveedores, debe abrir la tabla Productos
en la vista Diseo para cambiar Id. De proveedor a un campo de bsqueda.
GUIA ACCESS 19
Crear un campo que busque datos de otra tabla en la vista Diseo:
1 Abra la tabla en la vista Diseo.
2 Realice una de las siguientes operaciones:
Para insertar un campo nuevo dentro de la tabla, haga clic en la fila situada bajo el lugar en que desea
agregar el campo y, a continuacin, haga clic en Insertar filas en la barra de herramientas o bien, para agregar
un campo nuevo al final de la tabla, haga clic en la primera fila en blanco. Escriba el nombre del campo en la
columna Nombre del campo siguiendo las reglas para nombrar objetos de Access.
Si el campo que desea utilizar como clave externa para el campo de bsqueda ya existe, haga clic en la
fila de ese campo. Por ejemplo, si tiene una tabla Productos con un campo Id. De proveedor ya definido y desea
cambiarlo a un campo de bsqueda para que muestre los nombres de proveedor de la tabla Proveedores, haga
clic en la fila del campo Id. De proveedor.
3 En la columna Tipo de datos, haga clic en la flecha y seleccione Asistente para bsquedas.
4 Haga clic en la opcin que indica que desea que el campo de bsqueda busque los valores en una tabla o
consulta.
5 Haga clic en Siguiente y siga las instrucciones de los restantes cuadros de dilogo del Asistente para
bsquedas.
Al hacer clic en el botn Terminar, Access crea el campo de bsqueda y establece determinadas propiedades del
campo segn las selecciones realizadas en el asistente. Una vez creado un campo de lista de bsqueda, si agrega
el campo a un formulario, Access copia su definicin al formulario. No tendr que crear el cuadro combinado o
el cuadro de lista ni su definicin de lista de valores o de bsqueda para el formulario. No obstante, si cambia la
definicin de un campo de lista de valores o de bsqueda en la tabla despus de agregarlo a un formulario, esos
cambios no se reflejarn en el formulario. Para corregir esta situacin, elimine el campo del formulario y agr-
guelo de nuevo.
Nota: Tambin es posible agregar a una tabla un campo de bsqueda que muestre valores de la misma tabla que
contiene el campo de bsqueda. Por ejemplo, en la tabla Empleados de la base de datos de ejemplo Neptuno, el
campo Jefe es un campo de bsqueda que muestra los valores de los campos Nombre y Apellidos buscando el
campo Id. De empleado correspondiente de la misma tabla.
Crear un campo de lista de valores en la vista Diseo:
1 Abra la tabla en la vista Diseo.
2 Para insertar el campo dentro de la tabla, haga clic en la fila situada debajo del lugar donde desea agre-
gar el campo y, a continuacin, haga clic en Insertar filas en la barra de herramientas.
Para agregar el campo al final de la tabla, haga clic en la primera fila en blanco.
3 En la columna Nombre del campo, escriba el nombre del campo siguiendo las reglas para nombrar obje-
tos de Access.
4 En la columna Tipo de datos, haga clic en la flecha y seleccione Asistente para bsquedas.
5 En el primer cuadro de dilogo del Asistente para bsquedas, haga clic en la opcin que indica que
escribir los valores que desee.
6 Haga clic en Siguiente y siga las instrucciones de los restantes cuadros de dilogo del Asistente para
bsquedas.
Nota: Cuando se utiliza el Asistente para bsquedas para crear una lista de valores fijos, Access establece de-
terminadas propiedades del campo segn las selecciones realizadas en el asistente. Una vez creado el campo, si
agrega el campo a un formulario, Access copia su definicin al formulario. No tendr que crear el cuadro com-
binado o el cuadro de lista ni su definicin de lista de valores para el formulario. No obstante, si cambia la defi-
nicin del campo de lista de valores de la tabla despus de agregarlo a un formulario, esos cambios no se refle-
jarn en el formulario. Para corregir esta situacin, elimine el campo del formulario y agrguelo de nuevo.
Ficha General en Diseo de Tabla. Propiedades de los Campos.
Propiedad Nombre del campo
Puede utilizar la propiedad Nombre del campo para especificar el nombre de un campo dentro de una tabla. Por
ejemplo, puede especificar Apellidos en un campo que almacene los apellidos de los empleados dentro de la
tabla Empleados.
Escriba un nombre de campo, siguiendo las reglas para nombres de objetos de Access. El nombre no puede
duplicar ningn otro nombre de campo de la tabla.
Nota Evite especificar un nombre de campo que entre en conflicto con los nombres de funciones o propiedades
incorporadas en Access, como la propiedad Nombre (Name).
Puede establecer esta propiedad en la parte superior de la vista Diseo de la tabla o utilizando Visual Basic.
En Visual Basic, utilice la propiedad Name de DAO para leer y establecer un nombre de campo de una tabla.
Comentarios
Access identifica un campo por su nombre de campo. Una vez que se especifica un nombre de campo en la vista
Diseo de la tabla, se puede utilizar ese nombre en expresiones, procedimientos de Visual Basic e instrucciones
SQL.
Propiedad Tipo de datos
Texto (Predeterminado). Texto o combinaciones de texto y nmeros, as como nmeros que no requieran
clculos, como los nmeros de telfono. Hasta 255 caracteres o la longitud que indique la propiedad
20 TABLAS - MENUS EN VISTA DISEO. Pgs. 155
Tamao del campo (el menor de los dos valores). Access no reserva espacio para la parte que no se uti-
liza de un campo de texto.
Memo Texto extenso, o combinacin extensa de texto y nmeros. Hasta 65.535 caracteres. (Si el campo se
manipula a travs de DAO y slo se va a almacenar en l texto y nmeros [no datos binarios], el tamao
est limitado por el de la base de datos).
Numrico: Datos numricos utilizados en clculos matemticos. Para obtener ms informacin sobre la forma
de establecer un tipo numrico especfico, vea el tema de la propiedad Tamao del campo. 1, 2, 4 u 8
bytes (16 bytes si el valor de la propiedad Tamao del campo es Id. De rplica).
Fecha/Hora: Valores de fecha y hora para los aos del 100 al 9999. 8 bytes.
Moneda: Valores de moneda y datos numricos utilizados en clculos matemticos en los que estn implicados
datos que contengan entre uno y cuatro decimales. La precisin es de hasta 15 dgitos a la izquierda del
separador decimal y hasta 4 dgitos a la derecha del mismo. 8 bytes.
Autonumrico: Nmero secuencial (incrementado de uno a uno) nico, o nmero aleatorio que Access asigna
cada vez que se agrega un nuevo registro a una tabla. Los campos Autonumrico no se pueden actuali-
zar. Si desea ms informacin, vea el tema de la propiedad Nuevos valores. 4 bytes (16 bytes si el
valor de la propiedad Tamao del campo es Id. La rplica).
S/No: Valores S y No, y campos que contengan uno de entre dos valores (S/No, Verdadero/Falso o Activa-
do/desactivado). 1 bit.
Objeto OLE: Objeto (como por ejemplo una hoja de clculo de Excel, un documento de Word, grficos, soni-
dos u otros datos binarios) vinculado o incrustado en una tabla de Access. Hasta 1 gigabyte (limi-
tado por el espacio disponible en disco).
Hipervnculo: Texto o combinacin de texto y nmeros almacenada como texto y utilizada como direccin de
hipervnculo.
Asistente para bsquedas: Crea un campo que permite elegir un valor de otra tabla o de una lista de valores
mediante un cuadro de lista o un cuadro combinado. Al hacer clic en esta opcin se inicia el Asistente
para bsquedas, que crea un campo de bsqueda. Al salir del Asistente, Access establece el tipo de da-
tos basndose en los valores seleccionados en l. Tamao igual al del campo clave principal utiliza-
do para realizar la bsqueda (habitualmente 4 bytes).
Comentarios:
Los campos de tipo Memo, Hipervnculo y Objeto OLE no se pueden indizar.
Sugerencia: Utilice el tipo de datos Moneda en los campos que requieran muchos clculos con datos de uno a
cuatro decimales. Los campos de tipo Simple y Doble requieren clculos en coma flotante, mientras que el tipo
de datos Moneda emplea clculos en coma fija, que son ms rpidos.
Atencin: Cambiar el tipo de datos de un campo despus de haber introducido datos en una tabla puede provo-
car un largo proceso de conversin de datos al guardar la tabla. Si el tipo de datos de un campo est en conflicto
con el valor de la propiedad Tipo de datos cambiada es posible que se pierdan algunos datos.
Propiedad Descripcin
Puede usar la propiedad Descripcin para proporcionar informacin sobre los objetos contenidos en la ventana
Base de datos, y tambin sobre campos individuales de una tabla o consulta.
Para los objetos de base de datos, haga clic en el comando Propiedades del men Ver y escriba el texto de la
descripcin en el cuadro Descripcin. En el caso de tablas o consultas, tambin puede introducir la descripcin
en la hoja de propiedades de la tabla o consulta. La descripcin del objeto aparece junto a su nombre en la venta-
na Base de datos cuando se hace clic en el comando Detalles del men Ver.
Para campos individuales de una tabla o consulta, escriba la descripcin en la parte superior de la vista Diseo de
la tabla o en la hoja de propiedades Propiedades del campo en la ventana Consulta. La longitud mxima es 255
caracteres.
En Visual Basic, para establecer esta propiedad por primera vez es necesario crear una propiedad definida por la
aplicacin utilizando el mtodo CreateProperty de DAO.
Comentarios
La descripcin de un objeto aparece en la columna Descripcin de la ventana Base de datos, que se muestra al
mostrar los detalles.
Al crear controles arrastrando un campo desde la lista de campos, Access copia la propiedad Descripcin del
campo en la propiedad TextoDeLaBarraDeEstado (StatusBarText) del control.
Nota: En el caso de una tabla vinculada, Access muestra la informacin de conexin en la propiedad Descrip-
cin.
Propiedad Tamao del campo
Puede usar la propiedad Tamao del campo para establecer el tamao mximo de los datos almacenados en un
campo de tipo Texto, Numrico o Autonumrico.
Si la propiedad Tipo de datos tiene el valor Texto, escriba un nmero entre 0 y 255. El valor predeterminado es
50.
Si la propiedad Tipo de datos tiene el valor Autonumrico, en Tamao del campo se puede establecer Entero
largo o Id. De rplica.
GUIA ACCESS 21
Si la propiedad Tipo de datos tiene establecido Numrico, las opciones de Tamao del campo y sus valores se
relacionan de la siguiente forma:
Valor Descripcin Precisin decimal Tamao de almacenamiento
Byte Almacena nmeros entre 0 y 255 (no admite fracciones). Ninguna 1 byte
Entero Almacena nmeros entre 32.768 y 32.767 (no admite fracciones). Ninguna 2 bytes
Entero largo (Predeterminado) Almacena nmeros entre 2.147.483.648 y 2.147.483.647 (no admite frac-
ciones). Ninguna 4 bytes
Simple Almacena nmeros entre 3,402823E38 y 1,401298E45 para valores negativos, y entre
1,401298E45 y 3,402823E38 para valores positivos. 7 4 bytes
Doble Almacena nmeros entre 1,79769313486231E308 y 4,94065645841247E324 para valores negati-
vos, y entre 1,79769313486231E308 y 4,94065645841247E324 para valores positivos. 15 8 bytes
Id. De rplica Identificador global nico (GUID) N/D 16 bytes
Slo es posible establecer esta propiedad en la hoja de propiedades de la tabla.
Para establecer el tamao de un campo en Visual Basic, utilice la propiedad Size de DAO para leer y establecer
el tamao mximo de los campos de tipo Texto (para los tipos distintos de Texto, el valor de la propiedad Type
de DAO determina automticamente el de la propiedad Size).
Nota: Puede especificar los tamaos de campo predeterminados para los tipos Texto y Numrico modificando
los valores de Tamao predeterminado de campo en la ficha Tablas/Consultas, que aparece al hacer clic en el
comando Opciones del men Herramientas.
Comentarios:
Se recomienda especificar el valor ms pequeo posible para la propiedad Tamao del campo, pues los tamaos
ms pequeos pueden procesarse ms rpidamente y requieren menos memoria.
Atencin: Si cambia un valor de Tamao del campo por otro ms pequeo para un campo que ya contiene da-
tos, es posible que pierda informacin. Por ejemplo, si un campo de tipo Texto tiene el valor 255 en Tamao del
campo y lo cambia por 50, los datos que se extiendan ms all de los 50 primeros caracteres se perdern.
Si los datos de un campo de tipo Numrico no caben con un nuevo valor de Tamao del campo, los nmeros
fraccionarios se pueden redondear, o pueden dar el valor Nulo. Por ejemplo, si cambia el tamao de campo de
Simple a Entero, los valores fraccionarios se redondearn al nmero entero ms cercano, y los superiores a
32.767 o inferiores a 32.768 sern reemplazados por valores nulos.
No es posible deshacer los cambios en los datos provocados por una modificacin de la propiedad Tamao del
campo despus de haberlos guardado en la vista Diseo de la tabla.
Sugerencia: Puede usar el tipo de datos Moneda cuando vaya a realizar muchos clculos con un campo que
contenga nmeros que tengan entre uno y cuatro decimales. Los campos de tipo Simple y Doble requieren clcu-
los en coma flotante, mientras que los de tipo Moneda realizan los clculos en coma fija, que es ms rpido.
Propiedad Formato de Campo.
La propiedad Formato (Format) afecta slo a cmo se muestran los datos. No afecta a cmo se almacenan los
datos.
Access dispone de formatos predefinidos para los tipos de datos Fecha/Hora, Numrico y Moneda, Texto y
Memo, y S/No. Los formatos predefinidos dependen del pas especificado al hacer doble clic en Configuracin
regional en el Panel de control de Windows. Access muestra los formatos apropiados para el pas seleccionado.
Por ejemplo, si est seleccionado Ingls (Estados Unidos) en la ficha Configuracin regional, 1234.56 en el
formato Moneda aparece como $1,234.56, pero si est seleccionado Ingls (Britnico) en la ficha Configuracin
regional, el nmero aparece como 1,234.56.
Si establece la propiedad Formato (Format) de un campo en la vista Diseo de la tabla, Access utiliza ese forma-
to para mostrar datos en las hojas de datos. Tambin aplica la propiedad Formato (Format) del campo a los nue-
vos controles de formularios e informes.
Puede utilizar los siguientes smbolos en formatos personalizados para cualquier tipo de datos.
(espacio) Muestra espacios como caracteres literales.
ABC Muestra todo el contenido de las comillas tipogrficas como caracteres literales.
Realiza la alineacin a la izquierda en lugar de la alineacin a la derecha.
* Rellena el espacio disponible con el siguiente carcter.
\ Muestra el siguiente carcter como un carcter literal. Tambin puede mostrar
caracteres literales incluyndolos entre comillas tipogrficas.
[color] Muestra los datos con el color especificado entre los corchetes. Colores
disponibles: Negro, Azul, Verde, Aguamarina, Rojo, Fucsia, Amarillo, Blanco.
No puede mezclar los smbolos de formato personalizados para los tipos de datos Numrico y Moneda con los
smbolos de formato de los campos Fecha/Hora, S/No, o Texto y Memo.
Cuando se ha definido una mscara de entrada y se ha establecido la propiedad Formato (Format) para los mis-
mos datos, la propiedad Formato (Format) tiene preferencia al mostrar los datos, y la mscara de entrada se igno-
ra. Por ejemplo, si crea una mscara de entrada Contrasea en la vista Diseo de la tabla y tambin establece la
propiedad Formato (Format) para el mismo campo, ya sea en la tabla o en un control de un formulario, la msca-
ra de entrada Contrasea se ignora y los datos se muestran segn la propiedad Formato (Format).
Formato Tipos de datos Texto y Memo
22 TABLAS - MENUS EN VISTA DISEO. Pgs. 155
@ Se necesita un carcter de texto (ya sea un carcter o un espacio).
& No se necesita un carcter de texto.
< Convertir todos los caracteres a minsculas.
> Convertir todos los caracteres a maysculas.
Por ejemplo, si tiene un control de cuadro de texto en el que desea que aparezca la palabra Ninguno cuando no
exista ninguna cadena en el campo, puede introducir el formato personalizado @;Ninguno como el valor de la
propiedad Formato (Format) del control. El smbolo @ hace que se muestre el texto del campo; la segunda sec-
cin hace que aparezca la palabra Ninguno cuando haya una cadena de longitud cero o un valor Nulo en el
campo.
Ejemplos
Valor Datos Muestra
@@@-@@-@@@@ 465043799 465-04-3799
@@@@@@@@@ 465-04-3799 465043799
> davolio DAVOLIO
DAVOLIO DAVOLIO
Davolio DAVOLIO
< davolio davolio
Davolio davolio
DAVOLIO davolio
@;Desconocido Valor Null Desconocido
Cadena de longitud cero Desconocido
Cualquier texto El mismo texto introducido
Formato Tipo de datos Fecha/Hora
Fecha general (Predeterminado) Si el valor es slo una fecha, no se muestra ninguna hora; si el
valor es slo una hora, no se muestra ninguna fecha. Este valor es una combinacin de los valores de Fecha corta
y Hora larga. Ejemplos: /93, 05:34:00 PM y /93 05:34:00 PM.
Fecha larga Igual que el valor de Fecha larga del cuadro de dilogo Propiedades de
Configuracin regional del Panel de control de Windows. Ejemplo: Sbado, 3 de Abril de 1993.
Fecha mediana Ejemplo: 3-Abr-93.
Fecha corta Igual que el valor de Fecha corta del cuadro de dilogo Propiedades de
Configuracin regional del Panel de control de Windows. Ejemplo: /93. Atencin El formato Fecha corta
asume que las fechas comprendidas entre el 1/1/00 y el 31/12/29 son fechas del siglo XXI (es decir, que los aos
estn entre el 2000 y el 2029). Las fechas comprendidas entre el 1/1/30 y el 31/12/99 se asume que son fechas
del siglo XX (es decir, que los aos estn entre 1930 y 1999).
Hora larga Igual que el valor de la ficha Hora del cuadro de dilogo Propiedades de
Configuracin regional del Panel de control de Windows. Ejemplo: 5:34:23 PM.
Hora mediana Ejemplo: 5:34 PM.
Hora corta Ejemplo: 17:34.
Formatos personalizados:
: (dos puntos) Separador de hora. Los separadores se establecen en el cuadro de dilogo
Propiedades de Configuracin regional del Panel de control de Windows.
/ Separador de fecha.
C Igual que el formato predefinido Fecha general.
D Da del mes en uno o dos dgitos numricos, segn sea necesario (1 a 31).
Dd Da del mes en dos dgitos numricos (01 a 31).
Ddd Tres primeras letras del da de la semana (Lun a Dom)
dddd Nombre completo del da de la semana (Lunes a Dom).
Ddddd Igual que el formato predefinido Hora corta.
Dddddd Igual que el formato predefinido Fecha larga.
S Da de la semana (1 a 7).
Ss Semana del ao (1 a 53).
M Mes del ao en uno o dos dgitos numricos, segn sea necesario (1 a 12).
Mm Mes del ao en dos dgitos numricos (01 a 12).
Mmm Tres primeras letras del mes (Ene a Dic).
Mmmm Nombre completo del mes (Enero a Diciembre).
T Fecha mostrada como trimestre del ao (1 a 4).
A Nmero de da del ao (1 a 366).
Aa Dos ltimos dgitos del ao (01 a 99).
Aaaa Ao completo (0100 a 9999).
H Hora en uno o dos dgitos, segn sea necesario (0 a 23).
Hh Hora en dos dgitos (00 a 23).
N Minuto en uno o dos dgitos, segn sea necesario (0 a 59).
Nn Minuto en dos dgitos (00 a 59).
GUIA ACCESS 23
S Segundo en uno o dos dgitos, segn sea necesario (0 a 59).
Ss Segundo en dos dgitos (00 a 59).
Ttttt Igual que el formato predefinido Hora larga.
AM/PM Reloj de 12 horas con las letras maysculas AM o PM, segn sea apropiado.
Am/pm Reloj de doce horas con las letras minsculas am o pm, segn sea apropiado.
A/P Reloj de doce horas con la letra mayscula A o P, segn sea apropiado.
A/p Reloj de doce horas con la letra minscula a o p, segn sea apropiado.
AMPM Reloj de doce horas con el designador de maana/tarde apropiado establecido en el cuadro de dilogo
Propiedades de Configuracin regional del Panel de control de Windows.
Los formatos personalizados se muestran segn el valor especificado en el cuadro de dilogo Propiedades de
Configuracin regional del Panel de control de Windows. Los formatos personalizados incoherentes con los
valores especificados en el cuadro de dilogo Propiedades de Configuracin regional se ignoran.
Nota Si desea agregar una coma u otro separador al formato personalizado, incluya el separador entre comillas
de la forma siguiente: d mmm, aaaa.
Ejemplos:
ddd, d mmm, aaaa Lun, 2 Jun, 1997
dd mmmm, aaaa 02 Junio, 1997
sta es la semana nmero ss sta es la semana nmero 22
Hoy es dddd Hoy es Martes
Formato Tipos de datos Numrico y Moneda
Nmero general (Predeterminado) Muestra el nmero tal como se introduce.
Moneda Utiliza el separador de miles; muestra los nmeros negativos entre parntesis; el valor prede-
terminado de la propiedad LugaresDecimales (DecimalPlaces) es 2.
Fijo Muestra al menos un dgito; el valor predeterminado de la propiedad LugaresDecimales
(DecimalPlaces) es 2.
Estndar Utiliza el separador de miles; el valor predeterminado de la propiedad
LugaresDecimales (DecimalPlaces) es 2.
Porcentaje Multiplica el valor por 100 y anexa un signo de porcentaje; el valor
predeterminado de la propiedad LugaresDecimales (DecimalPlaces) es 2.
Cientfico Utiliza la notacin cientfica estndar.
Los formatos numricos personalizados pueden tener entre una y cuatro secciones con signos de punto y coma
(;) como separador de lista. Cada seccin contiene la especificacin de formato para un tipo de nmero diferente.
Primera El formato para los nmeros positivos.
Segunda El formato para los nmeros negativos.
Tercera El formato para los valores cero.
Cuarta El formato para los valores Null.
Por ejemplo, puede utilizar el siguiente formato Moneda personalizado:
$#.##0,00[Verde];($#.##0,00)[Rojo];Cero;Null
Este formato numrico contiene cuatro secciones separadas por signos de punto y coma y utiliza un formato
diferente para cada seccin.
Si utiliza varias secciones pero no especifica un formato para cada seccin, las entradas para las que no hay
ningn formato no mostrarn nada o tomarn como valor predeterminado el formato de la primera seccin.
Puede crear formatos numricos personalizados mediante los smbolos siguientes:
, (coma) Separador decimal. Los separadores se establecen haciendo doble clic en Configuracin
regional en el Panel de control de Windows.
. (punto) Separador de miles.
0 Marcador de posicin de dgitos. Muestra un dgito 0.
# Marcador de posicin de dgitos. Muestra un dgito o nada.
$ Muestra el carcter literal $.
% Porcentaje. El valor se multiplica por 100 y se le anexa un signo de porcentaje.
E o e Notacin cientfica con un signo menos () junto a los exponentes negativos y nada junto
a los exponentes positivos. Este smbolo debe utilizarse con otros smbolos, como en el ejemplo 0,00E00 o
0,00E00.
E+ o e+ Notacin cientfica con un signo menos junto a los exponentes negativos y un signo ms
(+) junto a los exponentes positivos. Este smbolo debe utilizarse con otros smbolos, como en el ejemplo
0,00E+00.
Puede utilizar la propiedad LugaresDecimales (DecimalPlaces) para anular el nmero predeterminado de lugares
decimales del formato predefinido especificado para la propiedad Formato (Format).
Ejemplos:
Valor Datos Muestra
Nmero general 3456,789 3456,789
3456,789 3456,789
$213,21 $213,21
24 TABLAS - MENUS EN VISTA DISEO. Pgs. 155
Moneda 3456,789 ($3.456,79)
3456,789 3.456,79
Fijo 3456,789 3456.79
3456,789 -3456,79
3,56645 3,57
Estndar 3456,789 3.456,79
Porcentaje 3 300%
0,45 45%
Ejemplos personalizados:
Valor Descripcin
0;(0);;Nulo Muestra los valores positivos normalmente; muestra los valores negativos entre parntesis;
muestra la palabra Nulo si el valor es Null.
+0,0;0,0;0,0 Muestra un signo ms (+) o menos () con nmeros positivos o negativos; muestra 0,0 si el
valor es cero.
Formato Tipo de datos S/No
Access utiliza un control de casilla de verificacin como control predeterminado para el tipo de datos S/No. Los
formatos predefinidos y personalizados se ignoran cuando se utiliza un control de casilla de verificacin. Por
tanto, estos formatos se aplican slo a los datos mostrados en un control de cuadro de texto.
La propiedad Formato (Format) dispone de los formatos predefinidos S/No, Verdadero/Falso y Activa-
do/Desactivado. S, Verdadero y Activado son equivalentes entre s, al igual que lo son No, Falso y Desactivado.
Si especifica un formato predefinido y, a continuacin, introduce un valor equivalente, se mostrar el formato
predefinido del valor equivalente. Por ejemplo, si introduce Verdadero o Activado en un control de cuadro de
texto con su propiedad Formato (Format) establecida a S/No, el valor se convierte automticamente a S.
El tipo de datos S/No puede utilizar formatos personalizados que contengan hasta tres secciones:
Primera Esta seccin no tiene ningn efecto en el tipo de datos S/No. No obstante, se
requiere un signo de punto y coma (;) como marcador de posicin.
Segunda El texto para mostrar en lugar de los valores S, Verdadero o Activado.
Tercera El texto para mostrar en lugar de los valores No, Falso o Desactivado.
El ejemplo siguiente muestra un formato S/No personalizado para un control de cuadro de texto. El control
muestra la palabra Siempre en texto azul para S, Verdadero o Activado, y la palabra Nunca en texto rojo
para No, Falso o Desactivado.
;Siempre[Azul];Nunca[Rojo]
Propiedad Mscara de Entrada.
Puede utilizar la propiedad MscaraDeEntrada (InputMask) para facilitar la entrada de datos y para controlar los
valores que los usuarios pueden introducir en un control de cuadro de texto. Por ejemplo, puede crear una msca-
ra de entrada para un campo Nmero de telfono que muestre exactamente cmo debe introducirse un nmero
nuevo: (___) ___-____. A menudo es ms fcil utilizar el Asistente para mscaras de entrada para establecer la
propiedad automticamente.
La propiedad MscaraDeEntrada (InputMask) puede contener hasta tres secciones separadas por signos de punto
y coma (;).
Seccin Descripcin
Primera: Especifica la mscara de entrada propiamente dicha, por ejemplo, (999) 999-9999. Para
ver una lista de los caracteres que puede utilizar para definir la mscara de entrada, vea la tabla siguien-
te.
Segunda: Especifica si Access almacena los caracteres de visualizacin literales
en la tabla al introducir datos. Si utiliza 0 para esta seccin, todos los caracteres de visualizacin litera-
les (por ejemplo, el parntesis de una mscara de entrada de un nmero de telfono) se almacenan con
el valor; si introduce 1 o deja esta seccin en blanco, slo se almacenan los caracteres introducidos en el
control.
Tercera: Especifica el carcter que Access muestra para el espacio en el que el usuario
debe escribir un carcter en la mscara de entrada. Para esta seccin puede utilizar cualquier carcter;
para mostrar una cadena en blanco, utilice un espacio entre comillas ( ).
En Visual Basic, se utiliza una expresin de cadena para establecer esta propiedad. El ejemplo siguiente especi-
fica una mscara de entrada para un control de cuadro de texto utilizado para introducir un nmero de telfono:
Forms!Clientes!Telfono.InputMask = (###) ###-####
Al crear una mscara de entrada, puede utilizar caracteres especiales para hacer que la introduccin de determi-
nados datos (por ejemplo, el cdigo de rea de un nmero de telfono) sea obligatoria y que los dems datos sean
opcionales (como la extensin de telfono). Estos caracteres especifican el tipo de datos, como el nmero o el
carcter que debe introducir para cada carcter de la mscara de entrada.
Puede definir una mscara de entrada mediante los siguientes caracteres.
Carcter Descripcin
0 Dgito (0 a 9, entrada obligatoria, signos ms [+] y menos [] no permitidos).
9 Dgito o espacio (entrada no obligatoria, signos ms y menos no permitidos).
GUIA ACCESS 25
# Dgito o espacio (entrada no obligatoria; los espacios se muestran en blanco en el modo
Edicin, pero se eliminan cuando se guardan los datos; signos ms y menos permitidos).
L Letra (A a Z, entrada obligatoria).
? Letra (A a Z, entrada opcional).
A Letra o dgito (entrada obligatoria).
a Letra o dgito (entrada opcional).
& Cualquier carcter o un espacio (entrada obligatoria).
C Cualquier carcter o un espacio (entrada opcional).
. , : ; - / Marcador de posicin decimal y separadores de miles, hora y fecha (el carcter
depende del valor del cuadro de dilogo Propiedades de Configuracin regional en el Panel de control
de Windows).
< Hace que todos los caracteres se conviertan a minsculas.
> Hace que todos los caracteres se conviertan a maysculas.
! Hace que la mscara de entrada se muestre de derecha a izquierda, en lugar de mostrarse
de izquierda a derecha. Los caracteres introducidos en la mscara siempre se rellenan de izquierda a de-
recha. Puede incluir el signo de exclamacin en cualquier lugar de la mscara de entrada.
\ Hace que el carcter siguiente se muestre como un carcter literal (por ejemplo, \A se
muestra slo como A).
Nota: El establecimiento de la propiedad MscaraDeEntrada (InputMask) a la palabra Contrasea crea un
control de entrada de contrasea. Cualquier carcter introducido en el control se almacena como el carcter pero
se muestra como un asterisco (*). Utilice la mscara de entrada de Contrasea para impedir que se muestren los
caracteres escritos en la pantalla.
Para un control, puede establecer esta propiedad en la hoja de propiedades del control. Para un campo de una
tabla, puede establecer esta propiedad en la vista Diseo de la tabla (en la seccin Propiedades del campo) o en
la vista Diseo de la ventana Consulta (en la hoja de propiedades Propiedades del campo).
Tambin puede establecer la propiedad MscaraDeEntrada (InputMask) mediante una macro o Visual Basic.
Al introducir datos en un campo para el que se ha definido una mscara de entrada, los datos siempre se introdu-
cen en el modo Sobrescribir. Si utiliza la tecla RETROCESO para eliminar un carcter, el carcter se reemplaza
por un espacio en blanco.
Si mueve texto desde un campo para el cual ha definido una mscara de entrada hasta el Portapapeles, los carac-
teres de visualizacin literales se copian, incluso si ha especificado que no se guarden con datos.
Nota: Slo los caracteres introducidos directamente en un control o un cuadro combinado se ven afectados por
la mscara de entrada. Access ignora las mscaras de entrada al importar datos, al ejecutar una consulta de ac-
cin o al introducir caracteres en un control estableciendo la propiedad Texto (Text) del control en Visual Basic
o mediante la accin EstablecerValor en una macro.
Cuando se ha definido una mscara de entrada y se ha establecido la propiedad Formato (Format) para el mismo
campo, la propiedad Formato (Format) tiene preferencia cuando se muestran los datos. Esto quiere decir que
incluso aunque haya guardado una mscara de entrada, la mscara de entrada se ignora cuando se da formato a
los datos y se muestran en pantalla. Los datos de la tabla base propiamente dicha no se modifican; la propiedad
Formato (Format) afecta slo a cmo se muestran los datos.
Definicin de mscara
de entrada Ejemplos de valores
(000) 000-0000 (206) 555-0248
(999) 999-9999! (206) 555-0248
( ) 555-0248
(000) AAA-AAAA (206) 555-TELE
#999 -20
2000
>L????L?000L0 GREENGR339M3
MAY R 452B7
>L0L 0L0 T2F 8M4
00000-9999 98115-
98115-3007
>L<?????????????? Elena
Manuel
ISBN 0-&&&&&&&&&-0 ISBN 1-55615-507-7
ISBN 0-13-964262-5
>LL00000-0000 DB51392-0493
Propiedad LugaresDecimales (DecimalPlaces)
Puede usar la propiedad LugaresDecimales (DecimalPlaces) para especificar el nmero de lugares decimales que
utiliza Access para presentar nmeros.
La propiedad LugaresDecimales (DecimalPlaces) puede tener los valores siguientes:
Valor Descripcin Visual Basic
26 TABLAS - MENUS EN VISTA DISEO. Pgs. 155
Auto (Predeterminado) Los nmeros aparecen en la forma especificada en la propiedad Formato (Format).
255
0 a 15 Los dgitos situados a la derecha del separador decimal aparecen con el nmero de lugares decimales
especificado, y los situados a la izquierda del separador aparecen como especifique el valor de la propiedad
Formato (Format). 0 a 15
Puede establecer esta propiedad para cuadros de texto y cuadros combinados en la hoja de propiedades del con-
trol, y para los campos de tablas en la hoja de propiedades de la tabla. Tambin puede establecer la propiedad en
la hoja de propiedades Propiedades del campo en la vista Diseo de consulta.
Sugerencia: Se recomienda establecer la propiedad LugaresDecimales (DecimalPlaces) en la hoja de propieda-
des de la tabla. Si despus crea un control dependiente en un formulario o informe, heredar el valor de la pro-
piedad LugaresDecimales (DecimalPlaces) establecido para el campo de la tabla o consulta base, con lo que no
ser necesario especificar la propiedad para cada control dependiente que cree.
En el caso de los controles, tambin puede establecer esta propiedad con una macro o con Visual Basic.
Nota: El valor de la propiedad LugaresDecimales (DecimalPlaces) no tiene ningn efecto si la propiedad For-
mato (Format) est en blanco o tiene el valor Nmero general.
Comentarios: La propiedad LugaresDecimales (DecimalPlaces) afecta slo al nmero de lugares decimales que
se muestran, y no al nmero de decimales que se almacena. Para cambiar la forma en que se almacena un nme-
ro, es necesario modificar la propiedad Tamao del campo en la vista Diseo de la tabla.
Puede usar la propiedad LugaresDecimales (DecimalPlaces) para mostrar nmeros de forma distinta a la indica-
da por el valor de la propiedad Formato (Format), o distinta de la forma en que estn almacenados. Por ejemplo,
el valor Moneda en la propiedad Formato (Format) hace que se muestren slo dos decimales (5,35). Para mostrar
nmeros de tipo Moneda con cuatro decimales (por ejemplo 5,3523), establezca el valor 4 en la propiedad Luga-
resDecimales (DecimalPlaces).
Propiedad Ttulo (Caption)
Puede usar la propiedad Ttulo (Caption) para proporcionar informacin til al usuario mediante de ttulos sobre
los objetos en distintas vistas:
Los ttulos de campos especifican el texto de las etiquetas adjuntas a los controles creados al arrastrar un
campo desde la lista de campos, y sirven como encabezados de columna para los campos en la vista Hoja de
datos de una tabla o consulta.
Los ttulos de formularios especifican el texto que aparece en la barra de ttulo en la vista Formulario.
Los ttulos de informes especifican el ttulo del informe en la Vista preliminar.
Los ttulos de botones y etiquetas especifican el texto que aparece en el control.
La propiedad Ttulo (Caption) es una expresin de cadena que puede contener hasta 2.042 caracteres. Se trun-
carn los ttulos de los formularios e informes que sean demasiado largos para mostrarlos en la barra de ttulo.
En el caso de los controles, puede establecer esta propiedad en la hoja de propiedades. Para establecerla para los
campos, utilice la hoja de propiedades en la vista Diseo de tabla o en la ventana Consulta (en la hoja de propie-
dades Propiedades del campo). Tambin puede establecer esta propiedad con una macro o con Visual Basic.
Comentarios: Si no especifica un ttulo para un campo de una tabla, se usar el valor de la propiedad Nombre del
campo de ese campo como ttulo de una etiqueta adjunta a un control o como encabezado de columna en la vista
Hoja de datos. Si no especifica el ttulo de un campo de una consulta, se usar el del campo de la tabla base. Si
no establece el ttulo de un formulario, botn o etiqueta, Access le asignar un nombre nico basndose en el
tipo de objeto, como por ejemplo Formulario1.
Si crea un control arrastrando un campo desde la lista de campos y no ha especificado un valor para la propiedad
Ttulo (Caption) del mismo, se copiar el valor de la propiedad Nombre del campo del campo en el cuadro de la
propiedad Nombre (Name) del control, y por ello aparecer en la etiqueta del control creado.
Nota: El texto de la propiedad Ttulo (Caption) para un control etiqueta o botn de comando es el texto de pre-
sentacin de hipervnculo cuando se ha establecido la propiedad DireccinDeHipervnculo (HyperlinkAddress) o
SubdireccinDeHipervnculo (HyperlinkSubAddress) del control.
Puede usar la propiedad Ttulo (Caption) para asignar una tecla de acceso a una etiqueta o botn de comando. En
el ttulo, incluya un signo & inmediatamente antes del carcter que desee utilizar como tecla de acceso. Este
carcter aparecer subrayado. Puede presionar ALT y el carcter subrayado del control para desplazar el enfoque
a dicho control en un formulario.
Sugerencia: Si desea incluir un signo & en el ttulo, escirba dos caracteres & en el ttulo. Por ejemplo, para
que aparezca Guardar & Salir, deber escribir Guardar && Salir en el cuadro de la propiedad Ttulo (Caption).
Propiedad ValorPredeterminado (DefaultValue)
Puede utilizar la propiedad ValorPredeterminado (DefaultValue) para especificar un valor que se introduce au-
tomticamente en un campo cuando se crea un nuevo registro. Por ejemplo, en la tabla Direcciones puede esta-
blecer el valor predeterminado del campo Ciudad a Nueva York. Cuando los usuarios agregan un registro a la
tabla, pueden aceptar este valor o introducir el nombre de una ciudad diferente.
Notas:
La propiedad ValorPredeterminado (DefaultValue) no se aplica a controles de casilla de verificacin,
botn de opcin o botn de alternar cuando se encuentran en un grupo de opciones. Se aplica al grupo de opcio-
nes propiamente dicho.
GUIA ACCESS 27
La propiedad ValorPredeterminado (DefaultValue) se aplica a todos los campos de la tabla excepto a
los campos con el tipo de datos Autonumrico u Objeto OLE.
La propiedad ValorPredeterminado (DefaultValue) especifica texto o una expresin que se introduce automti-
camente en un control o un campo cuando se crea un nuevo registro. Por ejemplo, si establece la propiedad Va-
lorPredeterminado (DefaultValue) de un control de cuadro de texto a =Ahora(), el control muestra la fecha y la
hora actual. La longitud mxima de un valor de la propiedad ValorPredeterminado (DefaultValue) es 255 carac-
teres.
Para un control, puede establecer esta propiedad en la hoja de propiedades del control. Para un campo, puede
establecer esta propiedad en la vista Diseo de la tabla (en la seccin Propiedades del campo), en una macro o
mediante Visual Basic.
En Visual Basic, utilice una expresin de cadena para establecer el valor de esta propiedad. El ejemplo siguiente
establece la propiedad ValorPredeterminado (DefaultValue) para un control de cuadro de texto denominado
MtodoPago a Efectivo:
Forms!frmFactura!MtodoPago.DefaultValue = Efectivo
Nota: Para establecer esta propiedad para un campo mediante Visual Basic, utilice la propiedad ValorPredeter-
minado (DefaultValue) de DAO.
Comentarios: La propiedad ValorPredeterminado (DefaultValue) se aplica slo cuando se agrega un registro
nuevo. Si se cambia la propiedad ValorPredeterminado (DefaultValue), el cambio no se aplica automticamente
a los registros existentes.
Si establece la propiedad ValorPredeterminado (DefaultValue) para un control de un formulario que depende de
un campo que tambin tiene un valor de la propiedad ValorPredeterminado (DefaultValue) definido en la tabla,
el valor del control anula al valor de la tabla.
Si crea un control arrastrando un campo desde la lista de campos, el valor de la propiedad ValorPredeterminado
(DefaultValue) del campo, tal como est definido en la tabla, se aplica al control del formulario aunque el valor
de la propiedad ValorPredeterminado (DefaultValue) del control permanezca en blanco.
Un control puede proporcionar el valor predeterminado para otro control Por ejemplo, si establece la propiedad
ValorPredeterminado (DefaultValue) de un control a la expresin siguiente, el valor predeterminado del control
se establece al valor de la propiedad ValorPredeterminado (DefaultValue) del control txtEnviarA.
=Forms!frmFactura!txtEnviarA
Si los controles estn en el mismo formulario, el control que es el origen del valor predeterminado debe aparecer
en el orden de fichas antes que el control que contiene la expresin.
Propiedades ReglaDeValidacin (ValidationRule) y TextoDeValidacin (ValidationText)
Puede utilizar la propiedad ReglaDeValidacin (ValidationRule) con el fin de especificar requisitos para los
datos introducidos en un registro, un campo o un control. Cuando se introducen datos que infringen el valor de la
propiedad ReglaDeValidacin (ValidationRule), puede utilizar la propiedad TextoDeValidacin (Validation-
Text) para especificar el mensaje que se mostrar al usuario.
Nota : Las propiedades ReglaDeValidacin (ValidationRule) y TextoDeValidacin (ValidationText) no se apli-
can a controles de casilla de verificacin, botn de opcin o botn de alternar cuando se encuentran en un grupo
de opciones. Se aplican slo al grupo de opciones propiamente dicho.
Introduzca una expresin para el valor de la propiedad ReglaDeValidacin (ValidationRule) y texto para el valor
de la propiedad TextoDeValidacin (ValidationText). La longitud mxima del valor de la propiedad ReglaDeVa-
lidacin (ValidationRule) es 2048 caracteres. La longitud mxima del valor de la propiedad TextoDeValidacin
(ValidationText) es 255 caracteres.
Para los controles, puede establecer la propiedad ReglaDeValidacin (ValidationRule) a cualquier expresin
vlida. Para las reglas de validacin de campo y registro, la expresin no puede contener funciones definidas por
el usuario, funciones agregadas de dominio o funciones agregadas, la funcin UsuarioActual (CurrentUser) o
Eval, o referencias a formularios, consultas o tablas. Adems, las reglas de validacin de campo no pueden con-
tener referencias a otros campos. Para los registros, las expresiones pueden incluir referencias a campos de esa
tabla.
Puede establecer las propiedades ReglaDeValidacin (ValidationRule) y TextoDeValidacin (ValidationText)
mediante:
La seccin Propiedades del campo de la vista Diseo de la tabla (para una regla de validacin de cam-
po).
La hoja de propiedades de una tabla; para ello, elija Propiedades en el men Ver en la vista Diseo de la
tabla (para una regla de validacin de registro). Ej.: ([FORMA_PAGO]="TARJETA" Y ([DESCUENTO]=0 O
[DESCUENTO]=NULO)) O [FORMA_PAGO]="CONTADO"
La hoja de propiedades de un control de un formulario.
Una macro o Visual Basic. En Visual Basic, utilice una expresin de cadena para establecer estas pro-
piedades.
Para los registros y los campos de tabla, tambin puede establecer estas propiedades en Visual Basic mediante la
propiedad ReglaDeValidacin (ValidationRule) de DAO.
28 TABLAS - MENUS EN VISTA DISEO. Pgs. 155
Comentarios: Access valida automticamente valores segn el tipo de datos de un campo; por ejemplo, Access
no permite texto en un campo numrico. Puede establecer reglas ms especficas mediante la propiedad Regla-
DeValidacin (ValidationRule).
Si establece la propiedad ReglaDeValidacin (ValidationRule) pero no la propiedad TextoDeValidacin (Valida-
tionText), Access muestra un mensaje de error estndar cuando se infringe la regla de validacin. Si establece la
propiedad TextoDeValidacin (ValidationText), el texto introducido se muestra como mensaje de error.
Por ejemplo, cuando se agrega un registro para un nuevo empleado, puede introducir una propiedad ReglaDeVa-
lidacin (ValidationRule) que requiera que el valor del campo FechaInicio del empleado quede entre la fecha de
fundacin de la compaa y la fecha actual. Si la fecha introducida no est en ese intervalo, puede mostrar el
mensaje de la propiedad TextoDeValidacin (ValidationText): La fecha de inicio es incorrecta.
Si crea un control arrastrando un campo desde la lista de campos, la regla de validacin del campo permanece en
efecto, aunque no se muestra en el cuadro de la propiedad ReglaDeValidacin (ValidationRule) del control en la
hoja de propiedades. Esto se debe a que la regla de validacin del campo es heredada por un control dependiente
de ese campo.
Las reglas de validacin de control, campo y registro se aplican de la forma siguiente:
Las reglas de validacin establecidas para los campos y controles se aplican cuando se editan los datos y
el enfoque sale del campo o control.
Las reglas de validacin para los registros se aplican al moverse a otro registro.
Si crea reglas de validacin para un campo y un control dependiente del campo, ambas reglas de valida-
cin se aplican cuando se editan los datos y el enfoque sale del control.
La tabla siguiente contiene ejemplos de expresiones para las propiedades ReglaDeValidacin (ValidationRule) y
TextoDeValidacin (ValidationText).
Propiedad ReglaDeValidacin (ValidationRule) Propiedad TextoDeValidacin (ValidationText)
<> 0 La entrada debe ser un valor distinto de cero.
> 1000 O Es Nulo La entrada debe estar en blanco o ser mayor que 1000.
Como A???? La entrada debe tener 5 caracteres y comenzar por la letra A.
>= #1/1/96# Y <#1/1/97# La entrada debe ser una fecha de 1996.
"Madrid" o "Sevilla" o "Valencia" Slo una de las tres ciudades.
Dbsq(IdCliente, Clientes, IdCliente = Forms!Clientes!IdCliente) Es Nulo La entrada debe ser un
IdCliente exclusivo (las funciones agregadas de dominio se permiten slo para la validacin a nivel de formula-
rio).
Si crea una regla de validacin para un campo, Access normalmente no permite que se almacene un valor Null
en el campo. Si desea permitir un valor Null, agregue Es Nulo a la regla de validacin, como en <> 8 O Es
Nulo, y asegrese de que la propiedad Requerido (Required) est establecida a No.
No es posible establecer reglas de validacin de campo o registro para las tablas creadas fuera de Access (por
ejemplo, dBASE, Paradox, o SQL Server). Para este tipo de tablas, puede crear reglas de validacin slo para
controles.
Propiedad Requerido (Required)
Puede usar la propiedad Requerido (Required) para especificar si es necesario que exista un valor en un campo.
Si el valor de esta propiedad es S, al introducir datos en un registro deber especificar un valor en el campo en
cualquier control dependiente del mismo, y adems el valor no podr ser Nulo. Por ejemplo, es posible que desee
asegurarse de que el control Apellidos tenga siempre un valor en todos los registros. Cuando desee permitir el
valor Nulo en un campo, no slo deber establecer No para la propiedad Requerido (Required), sino que, si la
propiedad ReglaDeValidacin (ValidationRule) tiene algn valor deber contener explcitamente re-
gla_de_validacin O Es Nulo.
Nota: La propiedad Requerido (Required) no se aplica a los campos de tipo Autonumrico.
La propiedad Requerido (Required) puede tener los valores siguientes:
Valor Descripcin Visual Basic
S El campo requiere un valor. True (1)
No (Predeterminado) El campo no requiere un valor. False (0)
Puede establecer esta propiedad para todos los campos de una tabla (excepto para los de tipo Autonumrico) en
la hoja de propiedades de la tabla o Visual Basic.
Nota: Para tener acceso a la propiedad Requerido (Required) de un campo en Visual Basic, utilice la propiedad
Required de DAO.
Comentarios: El motor de base de datos Jet hace que se cumple la propiedad Requerido (Required) a nivel de
tabla.Si establece S en esta propiedad, el campo deber recibir un valor o contenerlo ya cuando tenga el enfo-
que, cuando un usuario introduzca datos en una tabla (o en un formulario u hoja de datos basado en ella), cuando
una macro o Visual Basic establezcan el valor del campo o cuando se importen datos a la tabla.
Puede usar las propiedades Requerido (Required) y Permitir longitud cero (AllowZeroLength) para distinguir
entre la inexistencia de informacin (indicada por una cadena de longitud cero ( ) almacenada en el campo) y
la informacin que puede existir, pero que se desconoce (almacenada como un valor Nulo en el campo). Si esta-
blece S en la propiedad Permitir longitud cero (AllowZeroLength), una cadena de longitud cero ser una entrada
vlida en el campo, independientemente del valor de la propiedad Requerido (Required)
GUIA ACCESS 29
. Si establece S en Requerido (Required) y No en Permitir longitud cero (AllowZeroLength), deber introducir
un valor en el campo, y no ser vlida una cadena de longitud cero.
Sugerencia: Puede utilizar una mscara de entrada al introducir datos en un campo para distinguir entre un valor
Nulo y la de una cadena de longitud cero. Por ejemplo, puede mostrarse la cadena Ninguno cuando se introdu-
ce una cadena de longitud cero.
Si establece S en la propiedad Requerido (Required) de un campo de una tabla que ya contiene datos, Access le
dar la opcin de comprobar o no si el campo tiene un valor en todos los registros existentes. Sin embargo, pue-
de obligar a que se especifique un valor para el campo en todos los registros nuevos incluso cuando existan re-
gistros con el valor Nulo en l.
Nota: Para forzar una relacin entre tablas que no admitan valores Nulo, establezca S en la propiedad Requeri-
do (Required).del campo clave externa de la tabla relacionada. El motor de base de datos Jet asegurar entonces
que haya un registro relacionado en la tabla principal antes de poder crear un registro en la tabla secundaria. Si el
campo clave externa forma parte de la clave principal de la tabla secundaria, esto no es necesario, ya que una
clave principal no puede contener el valor Nulo.
Propiedad I ndexado
Puede usar la propiedad Indexado para establecer un ndice de un solo campo. Los ndices hacen que las consul-
tas basadas en los campos indexados sean ms rpidas, y tambin aceleran las operaciones de ordenacin y agru-
pacin. Por ejemplo, si busca empleados basndose en un campo llamado Apellidos, puede crear un ndice para
este campo para hacer ms rpida la bsqueda.
La propiedad Indexado puede tener los valores siguientes:
Valor Descripcin
No (Predeterminado) Sin ndice.
S (Con duplicados) El ndice admite valores duplicados.
S (Sin duplicados) El ndice no admite valores duplicados.
Slo puede establecer esta propiedad en la seccin Propiedades del campo de la vista Diseo de la tabla. Puede
establecer un ndice de un solo campo estableciendo la propiedad Indexado en la seccin Propiedades del campo
de la vista Diseo de tabla. Para establecer ndices formados por varios campos, abra la ventana ndices haciendo
clic en el comando ndices del men Ver.( ALT+ V, N. )
Si agrega un ndice de un solo campo en la ventana ndices, Access establecer S en la propiedad Indexado de
ese campo.
En Visual Basic, utilice el mtodo CreateIndex de DAO para crear un ndice de un solo campo.
Comentarios: Puede usar la propiedad Indexado para buscar y ordenar registros con un solo campo de una tabla.
Este campo puede contener valores nicos o No. Por ejemplo, puede crear un ndice con un campo llamado
IdEmpleado para una tabla Empleados en la que cada identificador de empleado sea nico, o tambin un ndice
con el campo Nombre, en el que algunos nombres pueden estar duplicados.
Nota: No es posible crear ndices con los campos de tipo Memo, Hipervnculo u Objeto OLE.
Puede crear tantos ndices como precise. Los ndices se crean al guardar la tabla, y se actualizan automticamen-
te al modificar o agregar registros. En cualquier momento puede agregar o eliminar ndices en la vista Diseo de
la tabla.
Sugerencia: Puede especificar texto utilizado habitualmente al comienzo o al final de un nombre de campo
(como Id, cdigo o nm) en la opcin Autoindexar al importar ocrear de la ficha Tablas/Consultas, que
aparece al hacer clic en el comando Opciones del men Herramientas. Al importar archivos de datos que conten-
gan ese texto en el nombre de sus campos, Access crear un ndice los mismos.
Si la clave principal de una tabla es un solo campo, Access establecer automticamente la propiedad Indexado
de ese campo a S (Sin duplicados).
Si desea crear ndices con mltiples campos, utilice la ventana ndices.
Ficha Bsqueda en Diseo de Tabla, con Cuadro de Lista o Combinado.
Propiedad Mostrar control
Puede utilizar la propiedad Mostrar control en la vista Diseo de la tabla para especificar el control predetermi-
nado que desee emplear para mostrar un campo.
Puede establecer la propiedad Mostrar control en la hoja de propiedades de la tabla, en la vista Diseo de la ta-
bla, haciendo clic en la ficha Bsqueda de la seccin Propiedades del campo.
Esta propiedad contiene una lista desplegable con los controles disponibles para el campo seleccionado. En el
caso de campos de tipo Texto o Nmero, en esta propiedad se puede establecer Cuadro de texto, Cuadro de lista
o Cuadro combinado. Para los campos de tipo S/No, en la propiedad puede establecerse Casilla de verificacin,
Cuadro de texto o Cuadro combinado.
Comentarios:
Al seleccionar un control para esta propiedad, aparecen en la ficha Bsqueda las propiedades adicionales necesa-
rias para configurarlo.
Sugerencia: Puede hacer que Access establezca la propiedad Mostrar control y las relacionadas con ella selec-
cionando Asistente para bsquedas como el tipo de datos para el campo.
La configuracin de esta propiedad y de las del control relacionado afectar a la forma en que aparece el campo
en la vista Hoja de datos y en la vista Formulario. El campo se muestra a travs del control, y con las propieda-
30 TABLAS - MENUS EN VISTA DISEO. Pgs. 155
des del control establecidas en la vista Diseo de la tabla. Si un campo tiene establecida su propiedad Mostrar
control en la vista Diseo de la tabla y lo arrastra desde la lista de campos en la vista Diseo del formulario,
Access copiar las propiedades correspondientes en la hoja de propiedades del control.
Propiedades que puede utilizar para crear o modificar cuadros de lista y cuadros combinados, Resumen.
Cuando utilice un asistente para crear un cuadro de lista o cuadro combinado, Access establecer determinadas
propiedades para el control. Puede trabajar directamente con estas propiedades si no desea utilizar el asistente
para crear el control, o puede utilizar un asistente para crear el control y, a continuacin, modificar estas propie-
dades para hacer que el control funcione exactamente de la forma que el usuario desea. Para averiguar ms sobre
alguna de las siguientes propiedades, haga clic en la hoja de la propiedad y presione F1.
Nota: Si est creando o modificando un cuadro de lista o cuadro combinado dependiente, puede establecer estas
propiedades en la vista Diseo de la tabla en vez de utilizar la hoja de propiedades del control. De esta forma,
puede especificar las propiedades solamente una vez. Cuando agregue un campo al formulario, Access crear de
forma automtica el control basado en las propiedades que el usuario especific.
Propiedad Descripcin
TipoDeOrigenDeLaFila Funciona junto con la propiedad OrigenDeLaFila. Se especifica el tipo de origen de la
fila (tabla/consulta, lista valores, lista campos, o funcin Visual Basic) utilizando esta propiedad y especificando
despus el origen de la fila actual en la propiedad OrigenDeLaFila. Para ampliar: Ver Pg 66, Propiedades Tipo
de Origen y Origen de la Fila.
OrigenDeLaFila Especifica el nombre de la tabla, consulta o instruccin SQL, si TipoDeOrigenDeLaFila est
establecido a Tabla/Consulta. Especifica las entradas en la lista, separadas por punto y coma, si TipoDeOrigen-
DeLaFila est establecida a Lista Valores. Especifica el nombre de la tabla o consulta si TipoDeOrigenDeLaFila
est establecido a Lista Campos. Est en blanco si TipoDeOrigenDeLaFila est establecido con un nombre de
funcin. Para ampliar: Ver Pg 66, Propiedades Tipo de Origen y Origen de la Fila.
ColumnaDependiente En un cuadro de lista o cuadro combinado de columnas mltiples dependientes, espe-
cifica qu columna est vinculada con el campo base especificado en la propiedad OrigenDelControl. Los datos
de esa columna sern almacenados en el campo cuando seleccione el objeto en la lista. Estos datos pueden
ser diferentes de los datos presentados en la lista si se oculta la columna. Para ampliar: Ver Pg 67, Propie-
dad Columna Dependiente.
NmeroDeColumnas Especifica el nmero de columnas en un cuadro de lista o cuadro combinado. Puede
incluir una columna pero no presentarla en una lista mediante el establecimiento de la propiedad AnchuraDeCo-
lumna. Puede desear hacer esto si tiene una lista que busca valores en una tabla o consulta. Puede incluir un
campo de Id. Que no aparezca en la lista. En un cuadro combinado, la primera columna visible en la lista se
muestra en la porcin del cuadro de texto del cuadro combinado.
AnchuraDeColumnas Especifica el ancho de cada columna, utilizando punto y coma como separador. Intro-
duzca 0 para ocultar una columna. Introduzca un punto y coma sin ninguna medida para utilizar el valor prede-
terminado (alrededor de 1 2.5 cm, dependiendo de la unidad de medida establecida en Panel de Control de
Windows). En un cuadro combinado, la primera columna visible se muestra en el cuadro de texto del control. El
tipo de datos de cualquier valor que escriba en el cuadro combinado debe ser el mismo o compatible con el tipo
de datos de la primera columna visible.
EncabezadosDeColumna Determina si los nombres de los campos del origen de la fila base para un
cuadro combinado o cuadro de lista son utilizados como encabezados de columna en el cuadro combinado o
cuadro de lista. Los encabezados aparecen en los cuadros combinados solamente cuando se despliega la lista.
AnchuraDeLaLista Especifica el ancho de la porcin del cuadro de lista de un cuadro combinado.
FilasEnLista Especifica el nmero mximo de filas que se van a mostrar en la porcin del cuadro de lista de
un cuadro combinado.
LimitarALista Determina si un cuadro combinado acepta cualquier texto introducido o solamente texto que
coincida con uno de los valores de la lista. Si desea agregar a la lista un nuevo valor que el usuario introducir,
establezca la propiedad a No y agregue un procedimiento de evento a la propiedad AlNoLaLista.
AlNoEnLista Ejecuta el procedimiento de evento adjunto cuando ocurre el evento NotInList. Puede utilizar
esta propiedad para agregar de forma automtica un valor nuevo a la lista. Esta propiedad no est disponible en
la ficha Buscar en la vista Diseo de la tabla.
ExpansinAutomtica Especifica si Access rellena de forma automtica un valor que coincida con los carac-
teres que se introducen en un cuadro combinado. Esta propiedad no est disponible en la ficha Buscar en la vista
Diseo de la tabla.
MostrarControl Especifica el tipo de control (cuadro combinado o cuadro de lista) que Access crea de forma
predeterminada cuando se agrega un campo de bsqueda a un formulario. Esta propiedad est disponible en la
ficha Buscar en la vista Diseo de la tabla

Relaciones
Una vez creadas tablas diferentes para cada tema de la base de datos, necesita una forma de indicarle a Access
cmo debe volver a combinar esa informacin. El primer paso de este proceso es definir relaciones entre las
tablas. Una vez realizada esta operacin, puede crear consultas, formularios e informes para mostrar informacin
de varias tablas a la vez.
GUIA ACCESS 31
Ejemplo de relacin: para saber los clientes que pidieron un producto, hay que incluir tambin tabla Orders,
aparte de Customers y Order Details. (Northwind), ya que Orders las relaciona entre s.
Desde Herramientas (Relaciones) hacer doble Clic en la Lnea de Combinacin (Relacin) entre dos tablas para
ver o establecer el tipo de relacin entre dos tablas, Integridad referencial y Tipo de Combinacin.
Definir relaciones entre tablas
1 Cierre todas las tablas que estn abiertas. No es posible crear ni modificar relaciones entre tablas abiertas.
2 Si se encuentra en otra ventana, cmbiese a la ventana Base de datos. Puede presionar F11 para cambiar a la
ventana Base de datos desde cualquier otra ventana.
3 Haga clic en Relaciones en la barra de herramientas.
4 Si la base de datos no tiene ninguna relacin definida, se mostrar automticamente el cuadro Mostrar tabla. Si
necesita agregar las tablas que desea relacionar y no aparece el cuadro de dilogo Mostrar tabla, haga clic en
Mostrar tabla en la barra de herramientas. Si las tablas que desea relacionar ya estn mostradas, contine en el
paso 6.
5 Haga doble clic en los nombres de las tablas que desea relacionar y, a continuacin, cierre el cuadro de dilogo
Mostrar tabla.
6 Arrastre el campo que desea relacionar de una tabla al campo relacionado de la otra tabla.
Para arrastrar varios campos, presione la tecla CTRL y haga clic en cada campo antes de arrastrarlo.
En la mayora de los casos, se arrastra el campo de clave principal (mostrado en texto en negrita) de una tabla a
un campo similar (normalmente con el mismo nombre) denominado la clave externa de la otra tabla. Los campos
relacionados no tienen que tener los mismos nombres, pero deben tener el mismo tipo de datos (con dos excep-
ciones) y deben contener el mismo tipo de informacin. Adems, cuando los campos coincidentes son campos
Numricos, deben tener el mismo valor de la propiedad Tamao del campo. Las dos excepciones a los tipos de
datos coincidentes son que se puede hacer coincidir un campo Autonumrico con un campo Numrico cuya
propiedad Tamao del campo est establecida a Entero largo y que se puede hacer coincidir un campo Auto-
numrico con un campo Numrico si ambos campos tienen la propiedad Tamao del campo establecida a Id. De
rplica.
7 Aparecer el cuadro de dilogo Relaciones. Compruebe los nombres de los campos mostrados en las dos co-
lumnas para asegurarse de que son correctos. Puede cambiarlos si es necesario.
Si es preciso, establezca las opciones de relacin. Para obtener informacin acerca de un elemento especfico del
cuadro de dilogo Relaciones, haga clic en el botn de signo de interrogacin y, a continuacin, haga clic en el
elemento.
8 Haga clic en el botn Crear para crear la relacin.
9 Repita los pasos 5 a 8 para cada pareja de tablas que desee relacionar.
Al cerrar la ventana Relaciones, Access pregunta si desea guardar el diseo. Independientemente de si lo guarda
o no, las relaciones creadas se guardan en la base de datos.
Notas
Si necesita ver todas las relaciones definidas en la base de datos, haga clic en Mostrar todas las relacio-
nes en la barra de herramientas. Para ver slo las relaciones definidas para una tabla determinada, haga clic en la
tabla y, a continuacin, haga clic en Mostrar relaciones directas en la barra de herramientas.
Si necesita realizar un cambio en el diseo de una tabla, puede hacer clic con el botn secundario del
ratn en la tabla que desea modificar y, a continuacin, hacer clic en Diseo de tabla.
Puede crear relaciones utilizando tanto consultas como tablas. Sin embargo, la integridad referencial no
se exige en las consultas.
Para crear una relacin entre una tabla y s misma, agregue esta tabla dos veces. Esto resulta til en
situaciones en las que necesita realizar una bsqueda dentro de la misma tabla. Por ejemplo, en la tabla Emplea-
dos de la base de datos de ejemplo Neptuno, se ha definido una relacin entre los campos Id. De empleado y
Jefe, de modo que el campo Jefe pueda mostrar datos de los empleados procedentes de un Id. De empleado coin-
cidente.
I ntegridad referencial.
Los registros de la tabla relacionada siempre deben tener una registro con la misma clave principal en la tabla
primaria, aunque slo si: el campo o campos coincidentes de la tabla principal es una clave principal o tiene un
ndice nico, los campos relacionados tienen el mismo tipo de datos y ambas tablas estn almacenadas en la
misma base de datos .
Active la casilla Exigir integridad referencial y a continuacin Actualizar en cascada los campos relacionados
para actualizar automticamente los valores correspondientes de la tabla relacionada cuando se cambie un valor
de la clave principal en la tabla principal.
Active la casilla Exigir integridad referencial y desactive Actualizar en cascada los campos relacionados para
impedir que se realicen cambios en un valor de la clave principal en la tabla principal, siempre que haya registros
relacionados en la tabla relacionada.
Active la casilla Exigir integridad referencial y a continuacin Eliminar en cascada los registros relacionados
para eliminar automticamente los registros relacionados en la tabla relacionada siempre que se elimine un regis-
tro de la tabla principal.
32 CONSULTAS - MENUS VISTA HOJA DE DATOS Pgs. 155
Active la casilla Exigir integridad referencial y desactive Eliminar en cascada los registros relacionados para
impedir que se eliminen registros de la tabla principal cuando existen registros relacionados en la tabla relacio-
nada.
Propiedades de la combinacin.
Para definir registros a incluir de tabla relacionada y principal:
1.- Los campos clave deben existir en ambas tablas.
2.- Todos los registros de tabla principal y los que coincidan de la relacionada.
3Todos los registros de la tabla relacionada y los que coincidan de la principal.
Se puede crear una relacin con una copia de la misma tabla (autorelacionada) para, por ejemplo,
buscar en la 2da tabla los datos del campo Jefe de la Tabla Empleados principal. Para ello se crea una relacin
entre el campo Jefe de la tabla principal y IdEmpleado de la relacionada.



CONSULTAS
Las consultas se usan para ver, cambiar y analizar datos de distintas maneras. Tambin se pueden usar como
origen de registros para formularios e informes.
El tipo de consulta ms comn es la consulta de seleccin. Una consulta de seleccin recupera datos de una o
ms tablas usando los criterios que especifique y, a continuacin, los muestra en el orden deseado.
Las consultas obtienen datos de dos o ms tablas relacionadas, buscan datos que cumplen criterios y calculan
totales. Algunas consultas se utilizan como la base de un formulario o informe; otras se utilizan para manipular
datos, cuyos resultados puede ver en la hoja de datos de la consulta.
Cree una consulta con un asistenmte o desde el principio en la vista Diseo de la consulta. Abrir las tablas o
consultas para utilizar en la consulta, en Consulta, diseo, con ALT+C, M. y arrastrar los campos al panel de
consulta (cuadrcula), en el orden que se deseen.
En diseo se pueden pasar todos los campos seleccionando con doble-clic o arrastrando el Ttulo, en *. El
asterisco pasa nombre de tabla + * (Personal.*). Con * no se puede especificar criterio ni ordenar, a no ser que se
repita el campo a tratar (y poner no mostrar). Con * siempre se refleja automticamente todo cambio que se haya
hecho en la tabla, como agregar o eliminar campos.
Para cambiar nombre de columna de Consulta., anteponer el nuevo y dos puntos. Ej.: AGENTE VENTAS.: ID
Empleado (aparece AGENTE VENTAS), o si no en Propiedades de ese campo, Ttulo.
Zoom: MAY+F2. Ampla el espacio del campo.
Ejemplo de Diseo de Consulta. Mostrar Clientes de Madrid con Pedidos de Artculos que comiencen con "Tra-
je" y su cantidad. El campo Poblacin no se muestra (todo Madrid). Observar los Campos de Relacin y su tipo
entre las Tablas y cmo se pueden asociar los campos de Artculos con los de Clientes.

CONSULTAS - MENUS VI STA HOJ A DE DATOS
Son iguales que los Mens de Vista de Tablas, excepto Men Ver, Vista SQL, que tambin est en Diseo..
CONSULTAS - MENUS VI STA DI SEO
MENU EDI CI ON
Eliminar columnas: En la vista Diseo de la consulta y en la ventana Filtro u orden avanzado, elimina la co-
lumna seleccionada de la cuadrcula de diseo, lo que a su vez elimina un campo de la consulta o filtro activo.
Para seleccionar una columna, haga clic en el selector de columna; la eliminacin de una columna en la cuadr-
cula de diseo no supone su eliminacin en la tabla base.
En la vista Hoja de datos de la tabla, elimina de forma permanente la columna seleccionada. Para seleccionar una
columna, haga clic en el selector de campo.
GUIA ACCESS 33
Borrar cuadrcula / Borrar filtro: Borra los campos en la cuadrcula o en el filtro. Adems, en la vista Diseo
de la consulta, borra los parmetros que pudiera haber en el cuadro de dilogo Parmetros de la consulta. Se
borran los campos en la cuadrcula pero no en la tabla base.
MENU VER
Vista SQL: Muestra la vista SQL donde puede ver y modificar una consulta utilizando el lenguaje de consulta
estructurado (Structured Query Language, SQL). Los cambios realizados en la ventana SQL se reflejan en la
vista Diseo de la consulta y viceversa (excepto para las consultas especficas de SQL).
SQL.
Trabajar con SQL en consultas, formularios, informes, macros y mdulos:
Puede utilizar el Lenguaje estructurado de consultas SQL, para consultar, actualizar y administrar bases de datos
relacionales, tales como Access. Cuando se crea una consulta en la vista Diseo, Access construye en segundo
plano la instruccin de SQL equivalente. Puede ver o editar la instruccin SQL en la vista SQL. Despus de
hacer modificaciones en una consulta en la vista SQL, sta puede no presentarse en la forma que tena anterior-
mente en la vista Diseo de la consulta.
Algunas consultas no se pueden crear en la cuadrcula de diseo. Para consultas de paso a travs, de definicin
de datos y de unin, debe crear instrucciones SQL directamente en la vista SQL.
En Access se pueden utilizar instrucciones SQL en muchos lugares, donde se pueda introducir el nombre de una
tabla, consulta o campo. En algunos casos, Access rellena la sentencia SQL. Por ejemplo, cuando utiliza un
asistente para crear un formulario o un informe que toma datos de ms de una tabla, Access crea automtica-
mente la instruccin SQL que utiliza como valor para la propiedad OrigenDelRegistro (RecordSource) del for-
mulario o informe. Cuando se utiliza un asistente para crear un cuadro de lista o un cuadro combinado, Access
crea la instruccin SQL y la utiliza como valor para la propiedad OrigenDeLaFila (RowSource) del cuadro de
texto o combinado. Se pueden utilizar instrucciones SQL en subconsultas en la cuadrcula de diseo de consulta,
en el argumento de la instruccin SQL de la macro RunSQL y en cdigo. La forma ms fcil de construir una
instruccin SQL es crear una consulta en la cuadrcula de diseo de la consulta, cambiar a vista SQL, y copiar y
pegar la instruccin SQL correspondiente en su cdigo. Ver Consulta Especfica SQL.
Ver o modificar la instruccin SQL que est detrs de una consulta existente:
Si est familiarizado con SQL, puede que desee trabajar directamente con la instruccin SQL en la que se basa la
consulta.
1 Cree una consulta o abra una existente.
2 Haga clic en la flecha al lado del botn Ver en la barra de herramientas y haga clic en la vista SQL.
Access presenta la instruccin SQL equivalente a lo creado en la vista Diseo.
3 Si desea hacer cambios, escrbalos en la instruccin SQL.
4 Para ver los cambios en la cuadrcula de diseo, haga clic en la flecha al lado del botn Vista en la barra
de herramientas y haga clic en la vista Diseo.
Generar instrucciones SQL que incluyan variables y controles:
Cuando se trabaja con objetos de acceso a datos (DAO), puede que necesite construir una instruccin SQL en el
cdigo. Por ejemplo, si est creando un nuevo objeto QueryDef, es necesario establecer su propiedad SQL a una
cadena SQL vlida. Es muy posible que tambin necesite una instruccin SQL cuando cree un objeto Recordset.
La forma ms fcil de construir una instruccin SQL es crear una consulta en la cuadrcula de diseo de la con-
sulta, cambiar a vista SQL, y copiar y pegar la instruccin SQL correspondiente en su cdigo.
A menudo una consulta debe estar basada en valores que suministra el usuario o que cambian en situaciones
diferentes. Si ste es el caso, necesitar incluir variables o valores de control en la consulta. El motor de base de
datos Jet procesa todas las instrucciones SQL, pero no las variables o los controles. Por tanto, debe construir su
instruccin SQL de forma que Access determine primero estos valores y luego los concatene en la instruccin
SQL que se pasa al motor de base de datos Jet.
El siguiente ejemplo muestra cmo crear un objeto QueryDef con una simple instruccin SQL. Esta consulta
devuelve todos los pedidos desde una tabla Pedidos que fue colocada despus del 31-3-96:
Dim dbs As Database, qdf As QueryDef, cadSQL As String
Set dbs = CurrentDb
cadSQL = SELECT * FROM Pedidos WHERE FechaPedido >#3-31-96#;
Set qdf = dbs.CreateQueryDef(SegundoTrimestre, cadSQL)
El siguiente ejemplo crea el mismo objeto QueryDef usando un valor almacenado en una variable. Observe el
signo numrico (#) que denota que los valores de la fecha deben ser incluidos en la cadena de forma que sean
concatenados con el valor de la fecha.
Dim dbs As Database, qdf As QueryDef, cadSQL As String
Dim dteStart As Date
dteStart = #3-31-96#
Set dbs = CurrentDb
cadSQL = SELECT * FROM Pedidos WHERE FechaPedido _
& > # & fechaComienzo & #;
Set qdf = dbs.CreateQueryDef(SegundoTrimestre, cadSQL)
34 CONSULTAS - MENUS VISTA DISEO Pgs. 155
El siguiente ejemplo crea un objeto QueryDef usando un valor en un control llamado FechaPedido en un formu-
lario Pedidos. Observe que se suministra la referencia completa al control y que se incluye el signo numrico (#)
que denota la fecha dentro de la cadena.
Dim dbs As Database, qdf As QueryDef, cadSQL As String
Set dbs = CurrentDb
cadSQL = SELECT * FROM Pedidos WHERE FechaPedido _
& > # & Forms!Pedidos!FechaPedido & #;
Set qdf = dbs.CreateQueryDef(SegundoTrimestre, cadSQL)
Totales.
Alterna entre ocultar y mostrar la fila Total en la cuadrcula de diseo de la consulta en los siguientes tipos de
consulta: seleccin, tabla de referencias cruzadas, creacin de tabla y datos anexados. Se utiliza para agrupar los
datos de la consulta activa o realizar clculos acumulativos, como promedios y cuentas.
Funciones agregadas y otras opciones de la fila Total en diseo de la consulta
Nueve de las 12 opciones en la fila Total de la cuadrcula de diseo de la consulta son funciones agregadas. To-
das excepto las funciones Primero y ltimo se explican en la siguiente tabla. Las otras tres opciones de la lista se
explican en la segunda tabla.
Nota Las funciones agregadas no incluirn registros que contengan valores en blanco (Nulo) en sus clculos.
Por ejemplo, la funcin Cuenta (Count) devuelve la suma de todos los registros sin valores Null. Hay una forma
de contar los valores Null y es posible convertir los valores Null a ceros en un clculo.
Suma Total de los valores de un campo. Nmero, Fecha/Hora, Moneda y AutoNumrico
Prom Promedio de los valores de un campo. Nmero, Fecha/Hora, Moneda y AutoNumrico
Mn Menor valor de un campo. Texto, Nmero, Fecha/Hora, Moneda y AutoNumrico
Mx Mayor valor de un campo. Texto, Nmero, Fecha/Hora, Moneda y AutoNumrico
Cuenta Nmero de valores de un campo, sin contar los valores Null (en blanco). Texto, Memo, Nmero,
Fecha/Hora, Moneda, AutoNumrico, S/No y Objeto OLE
DesvEst Desviacin estndar de los valores de un campo. Nmero, Fecha/Hora, Moneda y AutoNumrico
Var Varianza de los valores de un campo. Nmero, Fecha/Hora, Moneda y AutoNumrico
Las funciones Primero y Ultimo son anlogas a los mtodos MoveFirst y MoveLast de un objeto Recordset del
DAO. Simplemente devuelven el valor de un campo especificado en el primer o el ltimo registro, respectiva-
mente, del conjunto de resultados devuelto por una consulta. Puesto que los registros se devuelven habitualmente
sin un orden concreto (a menos que la consulta incluya una clusula ORDER BY), los registros devueltos por
estas funciones sern arbitrarios.
Seleccione Para
Agrupar por Definir los grupos para los que desea realizar los clculos. Por ejemplo, para mostrar las ventas
totales por categora, seleccione Agrupar por para el campo NombreCategora.
Expresin Crear un campo calculado que incluya una funcin agregada en su expresin. Normalmente,
crear un campo calculado cuando desee utilizar mltiples funciones en una expresin.
Donde Especificar los criterios de un campo que no est utilizando para definir los grupos. Si selecciona esta
opcin para un campo, Access ocultar el campo en los resultados de la consulta desactivando la casilla de veri-
ficacin Mostrar.
Ejemplos para totalizar por grupos.
y aparece Group by en cada campo en lnea Total. Reemplazar Group by segn se estime con Sum (suma
(el grupo o todos), Avg, Min, Max, Count, StDev (standard deviation), Var (variance), First, Last).
En la fila, todos los campos deben tener Group by o un concepto de total.
Ejemplos:
Product ID Unit Price (Total de registros y su precio medio.)
Total: Count Avg

Category ID Product Name (Cuantos por cada grupo.)
Total: Group by Count
Se agrupan varios de izq. a der.

Ship Country Customer ID Order Amount
Total: Group by Group by Sum
(Total de cada cliente por Orden de pas.)

Ship Country Customer ID Order ID
Total: Group by Group by Count
Criteria: Canada or UK >15
(Cantidad de Pedidos por cliente de ms de 15 pedidos de Canad y UK.)

Para seleccionar registros antes de concepto de total, utilizar Where:
Ship Country Customer ID Order ID Order Amount
GUIA ACCESS 35
Total: Group by Group by Count Where
Criteria: >2000 (no show)
(Cantidad de Pedidos por Cliente de ms de 2000)

Custmer ID Freight Percentage:Format(Sum([Freight]/Sum([Order Amount],0%)
Total: Group by Expression
(Porcentaje de Freight cargado a cada cliente.)

Vendedor: [Apellidos]&, &[Nombre] (de tabla Empleados)
Total: Suma([Cantidad]*[PrecioUnidad]) (de tabla Detalle de Pedidos)
FechaPedido (de tabla Pedidos)
Total: Group by Expression Where
Orden: Descendent
Criteria: Entre [Calcular desde fecha:] y [a fecha:]
Ej.: Mejores tres vendedores: En propiedad de la consulta se pone 3 en Valores Superiores
Nombres de tabla: Alterna entre mostrar y ocultar los nombres de las tablas inmediatamente debajo del nombre
del campo en la cuadrcula de diseo. Mostrar los nombres de las tablas ayuda a saber a qu tabla pertenece cada
campo en las consultas sobre varias tablas.
MENU CONSULTA
Ejecutar: Muestra los resultados en la vista Hoja de datos de las consultas de seleccin y de tabla de referencias
cruzadas, y de las consultas de combinacin SQL y de paso que devuelven datos. Cambia, copia o elimina datos
o crea un objeto de base de datos para consultas de accin (creacin de tabla, actualizacin, datos anexados y
eliminacin), y para las consultas de definicin de datos SQL y consultas de paso SQL. Antes de ejecutar estas
consultas de accin, compruebe en la vista Hoja de datos los registros que sern afectados.
Mostrar tabla: Muestra una o ms tablas o consultas que puede agregar a la ventana Relaciones o la consulta
activa en la vista Diseo de consulta.
Quitar tabla: Quita la tabla o consulta seleccionada de la consulta activa. Seleccione la tabla o consulta hacien-
do clic en cualquier parte de su lista de campos. Al quitar una tabla o consulta se elimina su contenido de la
cuadrcula de diseo, pero no se elimina de la base de datos activa.
Consulta de seleccin
Convierte la consulta activa en una consulta de seleccin, que busca registros en una o mas tablas, a menudo en
base a criterios. La consulta de seleccin es el tipo de consulta predeterminado. Una consulta de seleccin es el
tipo de consulta ms habitual. Este tipo de consulta obtiene los datos de una o ms tablas y muestra los resulta-
dos en una hoja de datos en la que puede actualizar los registros (con algunas restricciones). Tambin puede
utilizar una consulta de seleccin para agrupar los registros y calcular sumas, cuentas, promedios y otros tipos de
totales.
Qu es una consulta de seleccin y cundo se usa?
Una consulta de seleccin es el tipo de consulta ms habitual. Este tipo de consulta obtiene los datos de una o
ms tablas y muestra los resultados en una hoja de datos en la que puede actualizar los registros (con algunas
restricciones). Tambin puede utilizar una consulta de seleccin para agrupar los registros y calcular sumas,
cuentas, promedios y otros tipos de totales.
Crear una consulta de seleccin sin un asistente
1 En la ventana Base de datos, haga clic en la ficha Consultas y, a continuacin, haga clic en Nuevo.
2 En el cuadro de dilogo Nueva consulta, haga clic en Vista Diseo y, a continuacin, elija Aceptar.
3 En el cuadro de dilogo Mostrar tabla, haga clic en la ficha que enumera los objetos con cuyos datos
desea trabajar.
4 Haga doble clic en el nombre de cada objeto que desea agregar a la consulta y, a continuacin, haga clic
en Cerrar.
5 Si tiene varias tablas o consultas en la consulta, asegrese de que estn conectadas entre s mediante una
lnea de combinacin, de modo que Access sepa cmo est relacionada la informacin. Si no estn conectadas,
cree usted mismo la lnea de combinacin.
Si las tablas o consultas estn combinadas, puede cambiar el tipo de combinacin para que afecte a qu registros
selecciona la consulta.
6 Agregue campos a la consulta arrastrando los nombres de los campos desde la lista de campos hasta la
cuadrcula de diseo.
7 Mejore la consulta; para ello, introduzca criterios, agregue un orden, cree campos calculados, calcule la
suma, el promedio, la cuenta u otro tipo de total con los datos recuperados o modifique de otro modo el diseo
de la consulta.
8 Para guardar la consulta, haga clic en Guardar en la barra de herramientas. Escriba un nombre que
siga las reglas para nombrar objetos de Access y elija Aceptar.
9 Para ver el resultado de la consulta, haga clic en Ver en la barra de herramientas.
36 CONSULTAS - MENUS VISTA DISEO Pgs. 155
Crear una consulta de seleccin sencilla mediante un asistente
El Asistente para consultas sencillas crea consultas que recuperan datos de los campos especificados en una o
ms tablas o consultas. Si lo desea, el asistente tambin puede sumar, contar y obtener el promedio de los valores
de grupos de registros o de todos los registros y puede calcular el valor mnimo o mximo de un campo. No
obstante, no es posible limitar los registros recuperados mediante el establecimiento de criterios.
1 En la ventana Base de datos, haga clic en la ficha Consultas y, a continuacin, haga clic en Nuevo.
2 En el cuadro de dilogo Nueva consulta, haga clic en Asistente para consultas sencillas.
3 Elija Aceptar.
4 Haga clic en el nombre de la tabla o consulta en la que desea basar la consulta y, a continuacin, selec-
cione los campos cuyos datos desea recuperar.
5 Haga clic en una tabla o consulta adicional si lo desea y, a continuacin, seleccione los campos que
desea utilizar de ella. Repita este paso hasta que disponga de todos los campos que necesite.
6 Siga las instrucciones de los cuadros de dilogo del asistente. En el ltimo cuadro de dilogo, puede
seleccionar si desea ejecutar la consulta o ver la estructura de la consulta en la vista Diseo.
Si la consulta resultante no es exactamente como deseaba, puede volver a ejecutar el asistente o cambiar la con-
sulta en la vista Diseo.
Consulta de tabla de referencias cruzadas
Convierte la consulta activa en una consulta de tabla de referencias cruzadas, que totaliza los datos en formato de
hoja de clculo utilizando como columnas los valores de un campo o expresin. Por ejemplo, para mostrar las
ventas totales mensuales de cada empleado, presente los meses del ao como columnas y los vendedores como
filas. Una consulta de tabla de referencias cruzadas muestra valores resumidos (sumas, cuentas y promedios) de
un campo de una tabla y los agrupa segn un conjunto de hechos enumerados en el lado izquierdo de la hoja de
datos y otro conjunto de hechos enumerados en la parte superior de la hoja de datos, con sus valores en el cruce
de ambos. .
Por ejemplo, para no repetir el mismo vendedor para cada concepto de venta. El vendedor se agrupara en las
filas y los conceptos de venta en columnas.
Sugerencia: Puede mostrar datos de una tabla de referencias cruzadas sin crear una consulta independiente en la
base de datos mediante el Asistente para tablas dinmicas. Con una tabla dinmica, puede cambiar los encabeza-
dos de fila y columna segn desee para analizar los datos de distintos modos. En la barra de herramientas, haga
clic en la flecha que se encuentra junto al botn Nuevo objeto y haga clic en Formulario. En el cuadro de dilogo
Nuevo formulario, haga clic en Asistente para tablas dinmicas.
Notas: Debe tener al menos un Row Heading y slo un Column Heading y slo un Value.
En Query Properties se puede indicar orden de columnas entres ;s Ej.:
Company Name Expr.1:Format ([Order Date],Mmm) Order ID Order Date
Total: Group by Group by Count Where
Crsstab: Row Heading Column Heading Value
Criteria: *-*-96 (no show)
En .Query Prop. Especificar Fixed y poner Ene;Feb;etc. (si no, los saca alfabtico)
(Cantidad de Pedidos por Cliente cada mes durante el ao 1996.)
Crear una consulta de tabla de referencias cruzadas sin usar un asistente
1 En la ventana Base de datos, haga clic en la ficha Consultas y, despus, haga clic en Nueva.
2 En el cuadro de dilogo Nueva consulta, haga clic en Vista diseo y, despus, haga clic en Aceptar.
3 En el cuadro de dilogo Mostrar tabla, haga clic en la ficha que relaciona las tablas o consultas con
cuyos datos desea trabajar.
4 Haga doble clic en el nombre de cada objeto que desee agregar a la consulta y, despus, haga clic en
Cerrar.
5 Agregue campos a la fila Campos en la cuadrcula de diseo y especifique los criterios.
6 En la barra de herramientas, haga clic en Tipo de consulta y despus haga clic en Consulta de tabla de
referencias cruzadas.
7 Para el campo o los campos cuyos valores desea que aparezcan como filas, haga clic en la fila Tab ref
cruz y, despus, haga clic en Encabezado de fila.
Tiene que mantener el Agrupar por predeterminado en la fila Total de esos campos.
8 Para el campo cuyos valores desee que aparezcan como encabezados de columnas, haga clic en la fila
Tab ref cruz y, despus, haga clic en Encabezado de columna. Puede elegir Encabezado de columna para un solo
campo y debe mantener Agrupar por en la fila Total de ese campo.
De forma predeterminada, los encabezados de columnas se presentan en orden alfabtico o numrico. Si desea
que aparezcan en un orden diferente o si desea limitar las columnas que muestren encabezados, establezca la
propiedad EncabezadosDeColumna (ColumnHeadings) de la consulta.
9 En el campo cuyos valores desee utilizar en la tabla de referencia cruzada, haga clic en la fila Tab ref
cruz y, despus, haga clic en Valor.
Slo un campo puede establecerse a Valor.
10 En la fila Total de este campo, haga clic en el tipo de funcin agregada que desea para la referencia
cruzada (como Suma, Promedio o Cuenta).
GUIA ACCESS 37
11 Para especificar criterios que limiten los encabezados de filas antes de que se realice el clculo, escriba
una expresin en la fila Criterios de un campo con Encabezado de fila en la celda Tab ref cruz. Esto permite, por
ejemplo, presentar los totales de ventas de productos de ciertas categoras, como carne y pescado.
Para especificar criterios que limiten los registros antes de que se agrupen los encabezados de fila y antes de que
se realicen las referencias cruzadas, agregue el campo para el que desee establecer criterios en la cuadrcula de
diseo, haga clic en Dnde en la celda Total, deje en blanco la celda Tab ref cruz y escriba una expresin en la
fila Criterios. (Los resultados de la consulta no presentarn campos que contengan Dnde en la fila Total.)
12 Para ver los resultados de la consulta, haga clic en el botn Vista de la barra de herramientas.
Para detener la consulta despus de haberla iniciado, presione CTRL+PAUSA
Notas: La consulta Pedidos trimestrales por producto de la base de datos de ejemplo Neptuno es un ejemplo de
consulta de tabla de referencias cruzadas. Para ver esta consulta, abra la base de datos Neptuno en la subcarpeta
Ejemplos de la carpeta del programa Office. En la ventana Base de datos, haga clic en la ficha Consultas, haga
clic en Pedidos trimestrales por producto y, despus, haga clic en Diseo.
Si incluye un campo en la cuadrcula de diseo de la consulta pero hace clic en la opcin (Sin mostrar)
en la celda Tab ref cruz y establece Agrupar por en la celda Total, Access agrupar segn la misma como Enca-
bezado de fila, pero no presentar la fila en los resultados de la consulta.
Los valores del campo Encabezado de columna puede incluir caracteres que no estn permitidos en los
nombres de campos, como decimales. En tal caso, Access los reemplaza por el carcter de subrayado en la hoja
de datos.
Crear una consulta de tabla de referencias cruzadas mediante un asistente
1 En la ventana Base de datos, haga clic en la ficha Consultas y, a continuacin, haga clic en Nuevo.
2 En el cuadro de dilogo Nueva consulta, haga clic en Asistente para consultas de tablas de referencias
cruzadas.
3 Elija Aceptar.
4 Siga las instrucciones de los cuadros de dilogo del asistente. En el ltimo cuadro de dilogo, puede
seleccionar si desea ejecutar la consulta o si desea ver la estructura de la consulta en la vista Diseo.
Si la consulta resultante no es exactamente como desea, puede volver a ejecutar el asistente o cambiar la consulta
en la vista Diseo.
Sugerencia: Puede mostrar los datos de una tabla de referencias cruzadas sin necesidad de crear una consulta
independiente en la base de datos mediante el Asistente para tablas dinmicas. Con una tabla dinmica, puede
cambiar los encabezados de fila y de columna segn desee para analizar los datos de distintos modos.
Ordenar o limitar los encabezados de columnas presentados en una consulta de referencias cruzadas
En los encabezados de columna que contienen, por ejemplo, los meses del ao, puede mostrar los meses de for-
ma cronolgica, en lugar de alfabticamente, y tambin puede mostrar columnas de Enero a Junio.
1 Disee la consulta de tabla de referencias cruzadas con o sin ayuda del asistente.
2 Muestre la consulta en la vista Diseo
3 Haga clic en el fondo de la vista Diseo de la consulta, fuera de la cuadrcula de diseo y de la lista de
campos.
4 En la barra de herramientas, haga clic en Propiedades para presentar la hoja de propiedades de la con-
sulta.
5 En el cuadro de la propiedad EncabezadosDeColumna (ColumnHeadings), escriba los encabezados de
las columnas que desee mostrar, en el orden en que desea que aparezcan. Entre los encabezados de columnas,
escriba una coma (,) o el separador de listas de su pas. (Para determinar cul es el separador de listas de su pas,
haga doble clic en Configuracin regional del Panel de control de Windows.)
Los encabezados de columnas que escriba tienen que coincidir exactamente con los encabezados de columna de
la hoja de datos de la consulta. Por ejemplo, si un encabezado de columna en la hoja de datos es USA, debe
escribir el encabezado de columna como USA y no como US. (Despus de presionar ENTRAR o mover el
puntero o otra ubicacin, Access coloca comillas alrededor de cada encabezado.)
6 Para ver los resultados de la consulta, haga clic en el botn Vista de la barra de herramientas.
Notas: Si ejecuta con mucha frecuencia una consulta de tabla de referencias cruzadas o si la usa como base
para un formulario o informe, puede acelerar la consulta si utiliza el procedimiento anterior para especificar
encabezados de columna fijos. Si usa con frecuencia los mismos encabezados de columna en diferentes
consultas, considere la posibilidad de crear un campo de texto para almacenar los encabezados de columna. Abra
entonces la tabla y copie los encabezados al cuadro de la propiedad EncabezadosDeColumna (ColumnHea-
dings), segn los necesite.

Ejemplo de Consulta de Referencias Cruzadas: Pedidos Trimestrales por Artculo e I mporte Anual.

38 CONSULTAS - MENUS VISTA DISEO Pgs. 155

Diseo:


Campo completo: AO: Ao([FECHA PEDIDO])
" " Expr1: "TRIM " & ParcFecha("Q";[FECHA PEDIDO];1)
" " TOTAL IMPORTE: Suma([Unidades]*[Precio Venta]*(1-[DESCUENTO]))
En Propiedades del campo TOTAL IMPORTE en Formato: Estndar y Lugares decimales: 0.

Para obtener estos datos, pero slo totalizado por Secciones:


Diseo:


Tabla "Unidades Trimestrales" en realidad es la Consulta anterior por Artculos.
Ver Propiedades del campo TOTAL IMPORTE en la imagen.
En campos TRIM1, etc., en sus Propiedades de campo, Ttulo: 1er TRIMESTRE. etc.

Consultas de accin.
Es una consulta que realiza cambios a muchos registros en una sola operacin. Existen cuatro tipos de consultas
de accin: de eliminacin, de actualizacin, de datos anexados y de creacin de tabla. Es conveniente realizar
GUIA ACCESS 39
primero una consulta de Seleccin y convertirla despus de verificarla en una de Accin desde en men
Consulta en vista de Diseo.
Consulta de creacin de tabla
Convierte la consulta activa en una consulta de creacin de tabla, que crea una nueva tabla en la base de datos
activa o en otra base de datos. Dado que el comando copia datos, compruebe los resultados en la vista Hoja de
datos antes de ejecutarlo.
Crea una tabla nueva a partir de todos o de parte de los datos de una o ms tablas. Las consultas de creacin de
tabla son tiles para:
Crear una tabla para exportar a otras bases de datos de Access. Por ejemplo, es posible que desee crear
una tabla que contenga varios campos de la tabla Empleados y, a continuacin, exportar esa tabla a una base de
datos utilizada por el departamento de personal.
Crear informes que muestren datos de un determinado momento en el tiempo. Por ejemplo, supongamos
que el 15-May-96 desea imprimir un informe que muestre los totales de ventas del primer trimestre segn los
datos contenidos en las tablas base a las 9:00 A.M. del da 1-Abr-96. Un informe basado en una consulta o una
instruccin SQL extrae los datos ms actualizados de las tablas (los datos correspondientes al 15-May-96), en
lugar de los registros de una fecha y hora especficas. Para conservar los datos tal como estaban exactamente a
las 9:00 A.M. del 1-Abr-96, cree una consulta de creacin de tabla en ese momento del tiempo para recuperar los
registros necesarios y almacenarlos en una tabla nueva. A continuacin, utilice esta tabla, en lugar de una consul-
ta, como base de los informes.
Realizar una copia de seguridad de una tabla.
Crear una tabla histrica que contenga registros antiguos. Por ejemplo, puede crear una tabla que alma-
cene todos los pedidos antiguos antes de eliminarlos de la tabla Pedidos actual.
Mejorar el rendimiento de los formularios e informes basados en consultas de tablas mltiples o en
instrucciones SQL. Por ejemplo, supongamos que desea imprimir varios informes basados en una consulta de
cinco tablas que incluya totales. Puede acelerar el proceso creando primero una consulta de creacin de tabla que
recupere los registros que necesite y los almacene en una tabla. A continuacin puede basar los informes en esta
tabla o especificar la tabla en una instruccin SQL como el origen de los registros para un formulario o informe,
de modo que no tenga que volver a ejecutar la consulta para cada informe. No obstante, los datos de la tabla
quedan congelados en el momento en que se ejecuta la consulta de creacin de tabla.
Ejemplo:
Make Table Query. En Design. Query Menu (Make Table). En Prod.: Name for new table: Old Orders.
Orders.* Order ID
Criteria: <10050 (no show)
Consulta de actualizacin
Convierte la consulta activa en una consulta de actualizacin, que actualiza un grupo de registros, por ejemplo
incrementar los salarios en un 5%. Dado que este comando cambia datos, compruebe los resultados en la vista
Hoja de datos antes de ejecutarlo.
Realiza cambios globales a un grupo de registros de una o ms tablas. Por ejemplo, puede aumentar los precios
un 10 por ciento para todos los productos lcteos o bien puede aumentar los sueldos un 5 por ciento al personal
de una determinada categora. Con una consulta de actualizacin, puede cambiar los datos de las tablas existen-
tes.
Ejemplo:
Update. En Design. Query Menu (Update). Para sin criterio y mismos campos: Edit (Replace) en Datasheet.
Product Name Category ID Unit Price
Update to: {Unit Price]*1.1 (+10%)
Criteria: DAIR
Consulta de datos anexados
Convierte la consulta activa en una consulta de datos anexados, que agrega el resultado de la consulta al final de
la tabla en la base de datos activa o en otra base de datos. Dado que el comando copia datos, compruebe los
resultados en la vista Hoja de datos antes de ejecutarlo.
Agrega un grupo de registros de una o ms tablas al final de una o ms tablas. Por ejemplo, supongamos que
consigue nuevos clientes y tiene una base de datos que contiene una tabla con informacin acerca de estos clien-
tes. Para evitar tener que escribir toda esta informacin, desea anexarla a la tabla Clientes. Las consultas de datos
anexados tambin son tiles para:
Anexar campos basados en criterios. Por ejemplo, es posible que desee anexar slo los nombres y las
direcciones de los clientes con pedidos de un tamao considerable.
Anexar registros cuando algunos de los campos de una tabla no existe en la otra tabla. Por ejemplo, en
la base de datos de ejemplo Neptuno, la tabla Clientes tiene 11 campos. Supongamos que desea anexar registros
de otra tabla que tienen campos que coinciden con 9 de los 11 campos de la tabla Clientes. Una consulta de datos
anexados anexar los datos de los campos coincidentes e ignorar el resto.
En Design. Query Menu (Append). Arrastrar campos con el *, o escoger si necesario. No arrastrar Counter Field
para clculo automtico de registros.
40 CONSULTAS - MENUS VISTA DISEO Pgs. 155
Puede utilizar Copiar y Pegar para anexar registros sin Criterios y mismos campos.
Consulta de eliminacin
Convierte la consulta activa en una consulta de eliminacin, que elimina un grupo de registros, por ejemplo,
todos los pedidos de 1997 despus de haberlos anexado a la Tabla de Pedidos Histricos.. Dado que este coman-
do cambia datos, compruebe los resultados en la vista Hoja de datos antes de ejecutarlo.
Elimina un grupo de registros de una o ms tablas. Por ejemplo, puede utilizar una consulta de eliminacin para
quitar productos que ya no se fabrican o de los que no hay pedidos. Con las consultas de eliminacin, siempre se
eliminan registros enteros, no slo campos seleccionados dentro de los registros.
Ejemplo:
Delete. En Design. Query Menu (Delete)
Orders.* Order ID
Delete: From Where
Criteria: <10050 (no show)
Consulta Especfica de SQL.
Consulta de Unin:
Muestra la ventana SQL y convierte la consulta activa en una consulta de unin. Una consulta de unin combina
campos de dos o ms tablas o consultas unos tras otros en lugar de lado a lado.
La siguiente consulta de unin selecciona todos los nombres de compaas de Brasil de ambas tablas, Proveedo-
res y Clientes, y los ordena alfabticamente por ciudad:
SELECT [NombreCompaa], [Ciudad]
FROM [Proveedores]
WHERE Pas=Brasil
UNION SELECT [NombreCompaa], [Ciudad]
FROM [Clientes]
WHERE Pas=Brasil
ORDER BY [Ciudad];
La siguiente consulta de unin cambia el nombre el campo NombreCompaa por Nombre del provee-
dor/cliente en la salida de la consulta:
SELECT [NombreCompaa] AS [Proveedor/Nombre cliente], [Ciudad]
FROM [Proveedores]
UNION SELECT [NombreCompaa] AS [Proveedor/Nombre cliente], [Ciudad]
FROM [Clientes];
La siguiente consulta de unin utiliza la instruccin UNION ALL para extraer todos los registros, incluyendo los
registros duplicados:
SELECT [NombreCompaa], [Ciudad]
FROM [Proveedores]
UNION ALL SELECT [NombreCompaa], [Ciudad]
FROM [Clientes];
Paso a travs
Muestra la ventana SQL y convierte la consulta activa en una consulta de paso, en la que se enva una consulta
SQL a un servidor de bases de datos (tal como SQL Server). Para obtener detalles acerca de la sintaxis de la
consulta SQL, consulte la documentacin del servidor de bases de datos.
Definicin de datos
Muestra la ventana SQL y convierte la consulta activa en una consulta de definicin de datos, lo que crea o mo-
difica tablas en la base de datos activa.
Consulta de Parmetros
Establece los parmetros y los tipos de datos para una consulta que solicita informacin (como por ejemplo, un
criterio) cuando se ejecuta. Por ejemplo, puede solicitar el nombre de un vendedor y un intervalo de fechas para
obtener resultados variables con la misma consulta.
Es una consulta que, cuando se ejecuta, muestra su propio cuadro de dilogo que solicita informacin, como por
ejemplo criterios para recuperar registros o un valor que desea insertar en un campo. Puede disear la consulta
para que solicite ms de un dato; por ejemplo, puede disearla para que solicite dos fechas. Access puede enton-
ces recuperar todos los registros que quedan entre esas dos fechas.
Las consultas de parmetros tambin son tiles cuando se emplean como base para los formularios e informes, al
solicitar igualmente los parmetros. Por ejemplo, puede crear un informe de ingresos mensuales basado en una
consulta de parmetros. Al imprimir el informe, Access muestra un cuadro de dilogo que solicita el mes sobre
el que se desea el informe. Cuando se introduce un mes, Access imprime el informe apropiado.
Tambin puede crear un formulario o un cuadro de dilogo personalizado que solicite los parmetros de una
consulta, en lugar de utilizar el cuadro de dilogo de la consulta de parmetros.
En la celda Criterios, para cada campo que desee utilizar como parmetro, escriba el texto a solicitar entre cor-
chetes. Access mostrar este texto cuando se ejecute la consulta. El texto de la solicitud debe ser diferente del
nombre del campo, aunque puede incluir el nombre del campo.
GUIA ACCESS 41
Para un campo que muestra la fecha, puede mostrar el texto Introduzca la fecha inicial: y el texto Introduzca
la fecha final: para especificar un intervalo de valores. En la celda Criterio del campo, escriba Between [Intro-
duzca la fecha inicial:] And [Introduzca la fecha final:].
El Dilogo del Men sirve para poner los criterios por orden y definir el tipo de datos a entrar (opcionales).
Ejemplo:
Parameter Query. Query Menu (Parameters). Ej. (Puede hacerse en cualquier Select Query).
Category ID Product Name Order ID Order Date
Total: Group by Group by Count Where
Criteria: [Enter a Category ID:] Between [Enter beginning date:] and [Enter ending date:] (No show)
En Query Menu (Parameters) entrar (poner en orden): Enter a Category ID:
Enter beginning date:
Enter ending date:
(Cantidad de cada producto de una categora solicitada vendidos entre fechas solicitadas)
Otros: Like [Enter the first few letters followed by *]
Forms![Which Customer]![Text]
Expresiones:
Las expresiones son un componente fundamental de numerosas operaciones en Access. Una expresin es una
combinacin de smbolos (identificadores, operadores y valores) que produce un resultado. Por ejemplo, puede
utilizar la expresin siguiente en un control de un formulario o de un informe para mostrar la suma de los valores
de los controles Subtotal y Transporte:
= [Subtotal] + [Transporte]
stos son algunos ejemplos de operaciones comunes en las que se utilizan expresiones:
Establecer una propiedad que define un control calculado, establecer una regla de validacin o estable-
cer un valor predeterminado de un campo.
Introducir una expresin de criterio, crear un campo calculado o actualizar los registros de una consulta
o filtro.
Establecer una condicin para realizar una accin o serie de acciones de una macro, o especificar argu-
mentos para varias acciones.
Especificar argumentos para funciones, instrucciones y mtodos de procedimientos de Visual Basic para
aplicaciones.
Editar una consulta SQL en la vista SQL de la ventana Consulta o utilizar una instruccin SQL como
valor de una propiedad o como argumento.
Dnde introducir expresiones en consultas y filtros
Puede utilizar expresiones (en la cuadrcula de diseo de una consulta o en la ventana Filtro u orden avanzado,
en una instruccin SQL de la vista SQL de una consulta o en la ventana Filtro por formulario) para especificar
criterios que identifiquen los registros con los que desea trabajar. En las consultas, tambin puede utilizar expre-
siones para actualizar los valores de un grupo de registros o para crear campos calculados.
En la cuadrcula de diseo, la expresin debe introducirse en lugares diferentes dependiendo de la operacin que
se desee realizar (la tabla siguiente muestra dnde pueden introducirse expresiones). Despus de introducir una
expresin en la cuadrcula de diseo y de presionar la tecla ENTRAR, Microsoft Access muestra la expresin
utilizando la sintaxis que comprende este programa. Si no incluye un operador con la expresin, Microsoft Ac-
cess asume que debe utilizarse el operador =. Por ejemplo, si escribe Dinamarca como criterio en un campo Pas,
Microsoft Access muestra "Dinamarca" e interpreta la expresin como Pas="Dinamarca". Si incluye referencias
a nombres de campos en la expresin, los campos deben estar incluidos en una de las tablas agregadas a la con-
sulta (a no ser que est utilizando la funcin DBsq (DLookup) o una subconsulta). No obstante, no es posible
arrastrar los campos a la expresin de la cuadrcula de diseo.
Para hacer esto Escriba la expresin en
Especificar criterios para una consulta de seleccin, de tabla de referencias cruzadas o de accin, o bien para un
filtro avanzado Una celda Criterios de la cuadrcula de diseo de una consulta o filtro avanzado.
Crear un campo calculado Una celda Campo de la cuadrcula de diseo de una consulta o filtro avan-
zado.
Actualizar registros segn los resultados de la expresin (slo consultas de actualizacin) Una celda Actualizar
a de la cuadrcula de diseo de una consulta de actualizacin.
Especificar los registros con los que desea trabajar, cmo se agrupan, los criterios para las agrupaciones o cmo
se ordenan los registros Una instruccin SQL en la vista SQL.
Especificar los criterios cuando se utiliza Filtro por formulario Un campo de la ventana Filtro por formu-
lario de una expresin personalizada. Tambin puede seleccionar una expresin de la lista del campo.
Nota Puede ver cmo Microsoft Access evala las expresiones de las consultas cambiando a la vista SQL de
una consulta para mostrar sus instrucciones SQL base. Para mostrar una consulta en la vista SQL, haga clic en la
flecha situada junto al botn Vista en la barra de herramientas y, a continuacin, haga clic en Vista SQL. Si su
consulta incluye tablas vinculadas, los valores que especifique en el criterio de los campos de las tablas vincula
das pueden distinguir maysculas de mnsculas (los valores deben coincidir con los de la tabla base).
42 CONSULTAS - MENUS VISTA DISEO Pgs. 155
Crear una expresin con el Generador de expresiones:
Puede iniciar el Generador de expresiones en una celda Campo o Criterios de la vista Diseo de la consulta, en la
columna Condicin de la ventana Macro o en la ventana Mdulo.
1 Haga clic con el botn secundario en el lugar donde desee insertar la expresin.
2 En el men contextual, haga clic en Generar.
Nota: Si la celda o la columna Condicin donde se inicia el Generador de expresiones ya contiene un valor, ste
se copiar automticamente en el cuadro de la expresin. Para copiar texto de la ventana Mdulo en el Genera-
dor de expresiones, seleccinelo antes de iniciar el Generador.
Iniciar el Generador de expresiones en una hoja de propiedades o en la ventana Macro:
1 Haga clic en el cuadro de la propiedad o del argumento que vaya a contener la expresin.
2 Haga clic en el botn Generar situado junto al cuadro de la propiedad o argumento.
Si una propiedad tiene asociado ms de un generador, Microsoft Access mostrar el cuadro de dilogo Elegir
generador. Haga clic en Generador de expresiones y luego en Aceptar.
Nota Si el cuadro de la propiedad o argumento en el que se inicia el Generador de expresiones ya contiene un
valor, ste se copiar automticamente en el cuadro de expresin.
Operaciones:
1 En el cuadro inferior izquierdo del Generador de expresiones, haga clic o doble clic en la carpeta que
contenga el elemento deseado.
2 En el cuadro inferior intermedio, haga doble clic en un elemento para pegarlo en el cuadro de la expre-
sin, o bien haga clic en una categora de elementos.
3 Si ha seleccionado una categora en el cuadro inferior intermedio, aparecern valores en el cuadro infe-
rior derecho. Haga doble clic en uno de ellos para pegarlo en el cuadro de la expresin.
Sugerencia: Tambin puede escribir cualquier parte de la expresin directamente en el cuadro de la expresin.
4 Pegue los operadores que desee en la expresin situando el punto de insercin en el lugar del cuadro de
la expresin donde desee colocar el operador y haciendo clic en uno de los botones de operadores que se encuen-
tran en el centro del Generador.
5 Cuando la expresin est terminada, haga clic en Aceptar.
Access copiar la expresin en el lugar donde se inici el Generador de expresiones. Si ya exista un valor, o si
se inici el Generador en la ventana Mdulo teniendo texto seleccionado, la nueva expresin reemplazar al
valor local texto existente.
Expresiones de texto:
En(Canad, Reino Unido) Utiliza el operador En (In) para mostrar los pedidos enviados a Canad o al
Reino Unido.
Negado EE.UU. Utiliza el operador Negado (Not) para mostrar los pedidos enviados a pases distintos
de EE.UU.
Como S* Muestra los pedidos enviados a los clientes cuyo nombre empieza por S.
>=N Muestra los pedidos enviados a compaas cuyo nombre comienza por las letras N a Z.
Der([IdPedido], 2)=99 Utiliza la funcin Der (Right) para mostrar los pedidos con valores de
IdPedido que terminan en 99.
Longitud([NombreCompaa])>Val(30) Utiliza las funciones Longitud (Len) y Val (Val) para mostrar los
pedidos de las compaas cuyo nombre tiene ms de 30 caracteres.
Como *Importaciones Pedidos enviados a los clientes cuyos nombres terminan por la palabra Importacio-
nes.
Como [A-D]* Pedidos enviados a los clientes cuyos nombres empiezan de la A a la D.
Como *ar* Pedidos enviados a los clientes cuyos nombres incluyen la secuencia de letras ar.
Como Casa Dewe? Pedidos enviados al cliente con Casa como primera parte del nombre y un segundo
nombre de 5 letras, de las cuales las cuatro primeras son Dewe y la ltima se desconoce.
AA105 =Right([Part ID],3) da 105
Left/Right(stringexp,n): AA105 =Left([Part ID],2) da AA
Como Sm?th/L*ng (Long y Lever Engineering)/*th/*on*/*-*-96
Negado Sevilla (distinto a Sevilla)
Operador de Concatenacin.
&. Tambin el signo + , pero debe evitarse por ambigedad.
Expresiones de fecha:
Entre 15-3-96 y 30-3-96 (inclusive).
No es necesario s en textos ni #s en fechas. Tambin 16/3/97.
Entre Fecha( ) Y AgregFecha(m, 3, Fecha( )) Utiliza el operador Entre...Y (BetweenAnd) y las funcio-
nes AgregFecha (DateAdd) y Fecha (Date) para mostrar pedidos cuya fecha requerida est entre el da de hoy y
dentro de tres meses.
< Fecha( )- 30 Utiliza la funcin Fecha (Date) para mostrar los pedidos con una antigedad de ms de 30 das.
Ao([FechaPedido])=1996 Utiliza la funcin Ao (Year) para mostrar los pedidos con fechas de entrega
en 1996.
GUIA ACCESS 43
ParcFecha(q, [FechaPedido])=4 Utiliza la funcin ParcFecha (DatePart) para mostrar los pedidos del cuarto
trimestre.
SerieFecha(Ao([FechaPedido]),Mes([FechaPedido])+1, 1)-1 Utiliza las funciones SerieFecha (DateSerial), Ao
(Year) y Mes (Month) para mostrar los pedidos del ltimo da de cada mes.
Ao([FechaPedido])=Ao(Ahora()) Y Mes([FechaPedido])=Mes(Ahora()) Utiliza las funciones Ao (Year)
y Mes (Month) y el operador Y (And) para mostrar los pedidos del ao y el mes actual.Expresiones de
campo vaco:
Es Nulo: Muestra los pedidos de los clientes cuyo campo ReginEnvo es Nulo (est en blanco).
No es Nulo: Muestra los pedidos de los clientes cuyo campo ReginEnvo contiene un valor.
Fax Muestra los pedidos de los clientes que no tienen una mquina de fax, lo que se indica median-
te un valor de cadena de longitud cero en el campo Fax en lugar de un valor Nulo (en blanco).
#2/2/95# Muestra los pedidos enviados el 2-Feb-95.
DatePart(DatePart, date) =DatePart(w,[Holiday] da 4 (mirc, ingls)
=DatePart(ww,[Holiday] da 50 (semana del ao). yyyy da 1997. q da 1,2,3,4 (trimestre) m da 1 a 12.
Between Date() and Date()-5 (desde hace 5 das a hoy)
Between Date() and Date()-90 = Between Date() and DateAdd((m,-3,Date())
Expresiones aritmticas:
CargaPrincipal: [Carga] * 1.1 Muestra en el campo CargaPrincipal los gastos de la carga ms un 10 por
ciento.
CantidadPedido: [Cantidad] * [PrecioUnitario] Muestra en el campo CantidadPedido el producto de los
valores de los campos Cantidad y PrecioUnitario.
PlazoEntrega: [FechaRequerida] [FechaEnvo] Muestra en el campo PlazoEntrega la diferencia entre los
valores de los campos FechaRequerida y FechaEnvo.
StockTotal: [UnidadesEnStock]+[UnidadesEnPedido] Muestra en el campo StockTotal la suma de los
valores de los campos UnidadesEnStock y UnidadesEnPedido.
PorcentajeCarga: Suma([Carga])/Suma([Subtotal]) *100 Muestra en el campo PorcentajeCarga el porcenta-
je de los gastos de carga de cada subtotal, mediante la divisin de la suma de los valores del campo
Carga por la suma de los valores del campo Subtotal (este ejemplo utiliza la funcin Suma (Sum)).La fi-
la Total de la cuadrcula de diseo debe estar mostrada en pantalla y la celda Total de este campo debe
establecerse a Expresin. Si la propiedad Formato (Format) del campo est establecida a Porcentaje, no
incluya *100.
Nota: Cuando se utiliza un operador aritmtico (+, -, *, /) en una expresin y el valor de uno de los campos de
la expresin es Nulo, el resultado de la expresin completa es Nulo. Si varios registros de uno de los
campos utilizados en la expresin pudieran tener un valor Nulo, es posible convertir el valor Nulo a cero
mediante la funcin Nz; por ejemplo: Nz([UnidadesEnStock])+Nz([UnidadesEnPedido])
Tax cada artculo: =[Unit Price]*0.08 (8%) Total: =Sum([Unit Price]*0.08)
Extended Price: =[Quantity]*[Unit Price]*(100-[Discount])/100 (Para Discount de 0 a 100 de %)
Invoice Sub-total: =Sum((CLng([Quantity]*[Unit Price]*(1-[Discount])*100/100) (Para Discount de 0 a 1
de %) CLng redondea a entero.
Invoice total: =[Invoice Subtotal]+[Freight]
Otros Operadores Aritmticos:
\ Divide y devuelve un entero.
^ Eleva un nmero a la potencia del exponente.
Mod Divide un nmero por otro y devuelve el resto.
Otro Operador de Comparacin: <> No igual, diferente a.
Campo calculado
Campo definido en una consulta que presenta el resultado de una expresin en lugar de datos almacenados. El
valor se vuelve a calcular cada vez que cambia algn valor en la expresin. Un control calculado es un control en
un formulario o informe que presenta el resultado de una expresin en lugar de datos almacenados.
Un clculo personalizado le permite llevar a cabo en cada registro clculos numricos, de fechas y de texto utili-
zando los datos de uno o ms campos. Por ejemplo, con un clculo personalizado puede multiplicar los valores
de un campo por una determinada cantidad, encontrar la diferencia entre dos fechas almacenadas en distintos
campos, combinar varios valores de un campo Texto o crear subconsultas. Mediante las opciones de la fila Total
en la cuadrcula de diseo, es posible llevar a cabo el clculo en grupos de registros y calcular sumas, promedios,
cuentas u otro tipo de totales en el campo calculado.
En el caso de clculos personalizados, necesita crear un nuevo campo calculado directamente en la cuadrcula de
diseo. Para crear un campo calculado, escriba una expresin en una celda en blanco Campo en la cuadrcula de
diseo de la consulta. Ej.: Total Producto: [Unidades]*[Precio].
No obstante, no es necesario mostrar los resultados de un clculo en un campo. En su lugar, es posible utilizarlos
como criterios para determinar los registros que debe seleccionar la consulta o para determinar sobre qu regis-
tros se debe llevar a cabo la accin.
Varias:
= [Pas] En (Francia, Italia, Espaa) Y Longitud([CdigoPostal])<>5
44 CONSULTAS - MENUS VISTA DISEO Pgs. 155
Londres O Hedge End Utiliza el operador O (Or) para mostrar los pedidos enviados a Londres o a Hedge
End.
Entre #5-Ene-95# Y #10-Ene-95# Utiliza el operador Entre...Y (BetweenAnd) para mostrar los pedidos en-
viados no antes del 5-Ene-95 ni despus del 10-Ene-95.
=Date() =Page IIF(expr,truepart,falsepart)
IIF([Region] Is Null, |[City]| |[Postal Code]|,|[City]| |[Region]| |[Postal Code]|) Las barras verticales indican
que se trata de nombre de campo cuando est entre comillas (Text String). El IIF evita que aparezcan
tres espacios cuando no hay Region.
Creating a calculated field in the Query is a good idea for use in Reports several times.
% of Employee total: =[Sale Amount]/[Employee Total] Format: Percent.
Para Check Box (Ej.: Shipped Late ) =[Shipped Date]>[Required Date]
Si.Verdadero.Yes.True.On.-1 / No.Falso.False.Off.0
Los rdenes de campos van de izq. a der. segn su orden.
Para imprimir registros determinados, seleccionar.
Se puede escribir Y u O dentro de mismo campo: >=1-1-95 Y <=1-7-95 / Germany O Canada.
Para O entre diferentes campos, utilizar el O de la consulta: Ej.: >=N UK
OR: >=N Pars
(Que sea N a Z y pas UK o ciudad Pars)
Campo con valor: No es nulo/Es negado nulo (Not Null / Is Not Null).
Sin valor: Nulo/Es nulo (Null / Is Null)
Para campos [ ]: [Quantity]+10
>Forms![Students]![Age] : Tipo-objeto!Objeto!Campo
Between Forms![Notes]![First Date] and Forms![Notes]![Last Date]
Count(): para contar registros.
[Unit Price ]*[Quantity] [First Name]& &[Last Name]
Dar nombre a campo calculado, ponerlo antes del clculo y despus dos puntos:
Total Price: [Quantity]*[Unit Price]
New Price: Ccur([Unit price]*1.25) (Ms el 25%)
Expresiones para Validacin de campos:
<>0 Introduzca un valor distinto de cero.
0 O >100 El valor debe ser 0 o mayor que 100.
Como K??? El valor debe constar de cuatro caracteres y comenzar por la letra K.
<#1/1/96# La fecha debe ser anterior a 1996.
>=#1/1/97# Y <#1/1/98# La fecha debe pertenecer al ao 1997.
Expresiones para Condiciones de Macro:
[Ciudad]=Paris Paris es el valor de Ciudad en el campo en el formulario desde el cual se ejecut la macro.
Dcont([IdPedido], Pedidos)>35 Hay ms de 35 entradas en el campo IdPedido de la tabla Pedidos.
Dcont(*, Detalles de pedidos, [IdPedido]=Forms![Pedidos]![IdPedido])>3 Hay ms de tres entra-
das en la tabla Detalles de pedidos para los cuales el campo IdPedido de la tabla coincide con el campo
IdPedido del formulario Pedidos.
[FechaEnvo] Entre #2-Feb-1995# y #2-Mar-1995# El valor del campo FechaEnvo del formulario desde el cual
se ejecuta la macro no es anterior al 2-Feb-1995 y no es posterior al 2-Mar-1995.
Forms![Productos]![UnidadesEnStock]<5 El valor del campo UnidadesEnStock del formulario Productos es
menor que cinco.
EsNulo([Nombre]) El valor Nombre del formulario desde el que se ejecuta la macro es Nulo(no tiene
valor). Esta expresin es equivalente a [Nombre] Es Nulo.
[Pas]=UK Y Forms![Ventas Totales]![TotalPedidos]>100 El valor en el campo Pas del formulario desde el
que se ejecuta la macro es UK, y el valor del campo TotalPedidos del formulario Ventas Totales es ma-
yor que 100.
[Pas] En (Francia, Italia, Espaa) y Len([CdigoPostal])<>5 El valor en el campo Pas del formulario
desde el cual se ejecuta la macro es Francia, Italia, o Espaa, y el cdigo postal no es de 5 caracteres de
longitud.
CuadroMsj(Confirmar cambios?,1)=1 Haga clic en Aceptar en el cuadro de dilogo que presenta la funcin
CuadroMsj. Si hace clic en Cancelar en el cuadro de dilogo, Access ignora la accin.
Sugerencia Para hacer que Access ignore temporalmente una accin, introduzca Falso como condicin. Ignorar
temporalmente una accin puede ser de utilidad cuando est tratando de encontrar problemas en una macro.
Expresiones SQL como criterio:
Se pueden copiar de la Vista SQL de una consulta, cancelndola despus.
PrecioUnitario (SELECT [PrecioUnitario] FROM [Productos] WHERE [NombreProducto] = Sirope de rega-
liz) Productos cuyo precio es el mismo que el del Sirope de regaliz.
PrecioUnitario >(SELECT AVG([PrecioUnitario]) FROM [Productos])
Productos que tienen un precio unitario por encima de la media.
GUIA ACCESS 45
Salario > ALL (SELECT [Salario] FROM [Empleados] WHERE ([Cargo] LIKE *Director*) OR ([Cargo]
LIKE *Vicepresidente*)) Salario de cada comercial cuyo salario es mayor que el de los em-
pleados con el cargo Director o Vicepresidente.
Expresiones en formularios e informes:
Nota: En un control calculado, preceda cada expresin con un signo igual (=). Cuando establezca la propiedad
Nombre de un control calculado, asegrese de que utiliza un nombre nico. No utilice el nombre de uno
de los controles que utiliz en la expresin.
=N/A Presenta N/A.
=[Nombre] & & [Apellidos] Presenta el valor de los controles de Nombre y Apellido separados por un
espacio.
=Izquierda([NombreProducto], 1) Utiliza la funcin Izquierda para presentar el primer carcter del valor del
control NombreProducto.
=Derecha([CdigoActivo], 2) Utiliza la funcin Derecha para presentar los dos ltimos caracteres del valor
del control CdigoActivo.
=Recortar([Direccin]) Utiliza la funcin Recortar para presentar el valor del control Direccin, borrando
cualquier espacio delantero o trasero.
=Silnm(EsNulo([Regin]), [Ciudad] & & [CdPostal], [Ciudad] & & [Regin] & & [CdPostal])
Utiliza la funcin SiInm para presentar el valor de los controles Ciudad y CdPostal si Regin es Nulo;
en caso contrario, presenta el valor de los controles Ciudad, Regin y CdPostal, separados por espacios.
[Pgina] Resultado: 1, 2, 3
=Pgina & [Pgina] Pgina 1, Pgina 2, Pgina 3
=Pgina & [Pgina] & de & [Pginas] Pgina 1 de 3, Pgina 2 de 3, Pgina 3 de 3
=[Pgina] & de & [Pginas] & Pginas 1 de 3 Pginas, 2 de 3 Pginas, 3 de 3 Pginas
=[Pgina] & /& [Pginas] & Pginas 1/3 Pginas, 2/3 Pginas, 3/3 Pginas
=[Pas] & & [Pgina] UK 1, UK 2, UK 3
=Formato([Pgina], 000) 001, 002, 003
=[TotalEmpleado]/[TotalPas] El cociente de los valores de los controles TotalEmpleado y TotalPas
=Form![Pedidos]![IdPedido] El valor del control IdPedido en el formulario Pedidos.
=Form![Pedidos]![Subformulario Pedidos]![SubtotalPedido] El valor del control SubtotalPedido en el
subformulario Pedidos del formulario Pedidos.
=Forms![Pedidos]![Subformulario Pedidos]![IdProducto].Column(2) El valor de la tercera columna en
IdProducto, un cuadro de lista de columnas mltiples en el subformulario Pedidos del formulario Pedi-
dos. (0 hace referencia a la primera columna, 1 a la segunda, y as sucesivamente.)
=Forms![Pedidos]![Subformulario Pedidos]![Precio]*1.06 El producto del valor del control Precio del sub-
formulario Pedidos del formulario Pedidos por 1,06 (agrega el 6 por ciento al valor del control Precio).
=Principal![IdPedido] El valor del control IdPedido en el formulario principal del subformulario actual.
=Reports![Factura]![IdPedido] El valor del control IdPedido en el informe Factura.
=Reports![Resumen]![Subinforme Resumen]![Total Ventas] El valor del control TotalVentas en el
subinforme Resumen del informe Resumen.
=Principal![IdPedido] El valor del control IdPedido en el formulario principal del subinforme actual.
=Promedio([Cargo]) Utiliza la funcin Promedio (Avg) para presentar la media de los valores del control
Cargo.
=Cuenta([IdPedido]) Utiliza la funcin Cuenta (Count) para presentar el nmero de registros en el control
IdPedido.
=Suma([Ventas]) Utiliza la funcin Suma (Sum) para presentar la suma de los valores del control Ventas.
=Suma([Cantidad]*[Precio]) Utiliza la funcin Suma (Sum)para presentar la suma del producto de los
valores de los controles Cantidad y Precio.
=[Ventas]/Suma([Ventas])*100 Presenta el porcentaje de las ventas, determinado dividiendo el valor del
control Ventas por la suma de todos los valores del control Ventas.Nota Si la propiedad Formato
(Format) del control est establecida a Porcentaje, no incluya el *100.
=Formato(Ahora(), ss) Utiliza la funcin Formato (Format) para presentar el nmero de la semana del ao
que representa la fecha actual, donde ss es 1 a 53.
=ParcFecha(yyyy, [FechaPedido]) Utiliza la funcin ParcFecha (DatePart) para presentar los cuatro
dgitos del ao del valor del control FechaPedido.
=SumFecha(a, -10, [FechaPrometida]) Utiliza la funcin SumFecha (DateDif) para presentar una fecha que
sea 10 das antes del valor del control FechaPrometida.
=DifFecha(d, [FechaOrden], [FechaEnviado]) Utiliza la funcin DifFecha para presentar el nmero de
das de diferencia entre los valores de los controles FechaOrden y FechaEnviado.
=SiInm([Confirmado] = S, Pedido confirmado, Pedido no confirmado) Utiliza la funcin SiInm
(Iif) para presentar el mensaje Pedido confirmado si el valor del control Confirmado es S; en caso
contrario, presenta el mensaje Pedido no confirmado.
SiInm es la misma funcin IIF
46 CONSULTAS - MENUS VISTA DISEO Pgs. 155
=SiInm(EsNulo([Pas]), , [Pas]) Utiliza la funcin SiInm para presentar una cadena en blanco si el
valor del control Pas es Nulo; en caso contrario, presenta el valor del control Pas.
=SiInm(EsNulo([Regin]), [Ciudad] & & [CdPostal], [Ciudad] & & [Regin] & & [CdPostal])
Utiliza la funcin SiInm para presentar los valores de los controles Ciudad y CdPostal si Re-
gin es Nulo; en caso contrario, presenta el valor de los controles Ciudad, Regin y CdPos-
tal.=SiInm(EsNulo([FechaRequerida] [FechaEnviado]), Compruebe una fecha perdida , [FechaRe-
querida] [FechaEnviado]) Utiliza la funcin SiInm para presentar el mensaje Compruebe una
fecha perdida si el resultado de restar FechaEnviado de FechaRequerida es Nulo; en caso contrario,
presenta la diferencia entre los controles de FechaRequerida y FechaEnviado.
Ejemplos para realizar operaciones aritmticas en formularios e informes:
La siguiente tabla lista ejemplos de expresiones que puede utilizar en los controles calculados de los formularios
e informes.
Si utiliza esta expresin Access presenta
=[Subtotal]+[Cargo] La suma de los valores de los controles Subtotal y Cargo.
=[FechaRequerida]-[FechaEnviado] La diferencia entre los valores de los controles FechaRequerida y
FechaEnviado.
=[Precio]*1.06 El producto del valor del control Precio y 1.06 (incrementa un 6 por ciento al valor de Precio).
=[Cantidad]*[Precio] El producto de los valores de los controles Cantidad y Precio.
=[TotalEmpleado]/[TotalPas] El cociente de los valores de los controles TotalEmpleado y TotalPas
Nota: En un control calculado, preceda cada expresin con un signo igual (=).
Cuando establezca la propiedad Nombre de un control calculado, asegrese de que utiliza un nombre
nico. No utilice el nombre de uno de los controles que utiliz en la expresin.
Cuando utilice un operador aritmtico (+, -, *, /) en una expresin y el valor de uno de los controles en
la expresin sea Nulo, el resultado de la expresin completa ser Nulo. Si algunos registros en uno de los contro-
les que utiliz en la expresin pudiera tener un valor Nulo, puede convertir el valor Nulo a cero utilizando la
funcin Nz; por ejemplo: =Nz([Subtotal])+Nz([Carga])
Calcular el total de un control calculado de un formulario o informe
Cuando calcule un total con una funcin agregada como Suma (Sum) o una funcin agregada de dominio como
Dsuma (DSum), no puede utilizar el nombre de un control calculado en la funcin Suma (Sum). Debe repetir la
expresin del control calculado. Por ejemplo:
=Suma([Cantidad]*[PrecioUnitario])
Sin embargo, si tiene un campo calculado en una consulta base, por ejemplo,
=PrecioExtendido: [Cantidad]*[PrecioUnitario]
puede utilizar el nombre de ese campo en la funcin Suma (Sum), como se muestra aqu:
=Suma([PrecioExtendido])
Funciones en Expresiones.
Funciones de Agregado de Dominio comunes:
DAvg El promedio de valores.
DCount En nmero de registros.
DFirst Valor de campo en primer registro.
DLast Valor de campo en ltimo registro.
DLookup El valor de un campo.
DMin Valor mnino.
DMax Valor mximo.
DSum La suma de valores.
Ejemplos para utilizar funciones agregadas de dominio en formularios e informes
La siguiente tabla lista ejemplos de expresiones que puede utilizar en los controles calculados de los formularios
e informes.
Expresin Descripcin
=Dbsq("[NombreContacto]", "[Proveedores]", "[IdProveedor] = Forms![IdProveedor]") Utiliza la fun-
cin Dbsq (DLookup) para presentar el valor del campo NombreContacto en la tabla Proveedores donde el
valor del campo IdProveedor de la tabla se corresponde con el valor del control IdProveedor en el formulario
activo.
=Dbsq("[NombreContacto]", "[ Proveedores]", "[IdProveedor] = Forms![Nuevos Proveedores]![IdProveedor]")
Utiliza la funcin Dbsq (DLookup) para presentar el valor del campo NombreContacto en la tabla
Proveedores donde el valor del campo IdProveedor de la tabla se corresponde con el valor del control IdProvee-
dor en el formulario Nuevos Proveedores.
=DSuma("[CantidadPedido]", "[Pedidos]", "[IdCliente] = 'RATTC'") Utiliza la funcin Dsuma (DSum) para
presentar la suma total de los valores del campo CantidadPedido en la tabla Pedidos donde el IdCliente es
RATTC.
Notas
En un control calculado, preceda cada expresin con un signo igual (=).
GUIA ACCESS 47
Cuando establezca la propiedad Nombre de un control calculado, asegrese de que utiliza un nombre
nico. No utilice el nombre de uno de los controles que utiliz en la expresin.
No puede utilizar el nombre de un control en una expresin que utilice una funcin agregada de domi-
nio; debe utilizar slo nombres de campos de una tabla, consulta o instruccin SQL.
Funciones de Agregado SQL Comunes.
Utilizar en consultas y controles calculados en formularios e impresos, pero no en macros o mdulos.
Avg El promedio de valores de n campo.
Count El nmero de registros.
First Valor de campo del primer registro en consulta, formulario o informe.
Last Valor de campo del ltimo registro en consulta, formulario o informe.
Min El valor mnimo en un campo.
Max El valor mximo en un campo.
Sum La suma de valores en un campo.
Ejemplos para utilizar funciones agregadas en formularios e informes
La siguiente tabla lista ejemplos de expresiones que puede utilizar en los controles calculados de los formularios
e informes.
Expresin Descripcin
=Promedio([Cargo]) Utiliza la funcin Promedio (Avg) para presentar la media de los valores del control
Cargo.
=Cuenta([IdPedido]) Utiliza la funcin Cuenta (Count) para presentar el nmero de registros en el control
IdPedido.
=Suma([Ventas]) Utiliza la funcin Suma (Sum) para presentar la suma de los valores del control Ventas.
=Suma([Cantidad]*[Precio]) Utiliza la funcin Suma (Sum)para presentar la suma del producto de los
valores de los controles Cantidad y Precio.
=[Ventas]/Suma([Ventas])*100 Presenta el porcentaje de las ventas, determinado dividiendo el valor del
control Ventas por la suma de todos los valores del control Ventas.Nota Si la propiedad Formato (Format) del
control est establecida a Porcentaje, no incluya el *100.
Notas
En un control calculado, preceda cada expresin con un signo igual (=).
Cuando establezca la propiedad Nombre de un control calculado, asegrese de que utiliza un nombre
nico. No utilice el nombre de uno de los controles que utiliz en la expresin.
No puede utilizar el nombre de un control en una expresin que utilice una funcin agregada; debe
utilizar slo nombres de campos de una tabla, consulta o instruccin SQL.
Algunas Funciones Generales:
Choose Un valor en una lista de argumentos
La funcin Elegir (Choose) puede utilizarse para crear un control calculado cuyo valor es de-
terminado por el valor de un campo de una tabla en su base de datos. Por ejemplo, suponga que
tiene una tabla Transportistas que contiene un campo llamado IdTransportista. Puede crear un
control calculado en un formulario para un nombre del transportista basado en el valor del Id
del transportista.
=Choose([IdTransportista], "La veloz", "Transa", "Federal")
Date La Fecha actual del sistema. =Date()
DateAdd Fecha a la que se aade un intervalo de tiempo
DateAdd(interval, number, date)
El argumento interval tiene los siguientes valores:
Valor Descripcin
yyyy Ao
q Trimestre
m Mes
y Da del ao
d Da
w Da de la semana
ww Semana
h Hora
n Minuto
s Segundo
La funcin DateAdd no devuelve nunca una fecha no vlida. En el ejemplo siguiente se agrega
un mes al 31 de enero: DateAdd("m", 1, "31-ene-95"). Devuelve 28-2-95.
DateDiff Nmero de dias ( u otro intervalo de tiempo) entre dos fechas.
DateDiff(interval, date1, date2[, firstdayofweek[, firstweekofyear]])
Parte Descripcin
interval Requerido. Expresin de tipo cadena con el intervalo de tiempo utilizado para calcular
la diferencia entre date1 y date2. (Ver DateAdd)
48 CONSULTAS - MENUS VISTA DISEO Pgs. 155
date1, date2 Se requiere; Variant (Date). Las dos fechas que se van a utilizar en el clculo.
firstdayofweek Opcional. Constante que especifica el primer da de la semana. Si no se espe-
cifica, se asume que es el domingo:. Sunday 1 Domingo (predeterminado), Monday 2 Lunes
firstweekofyear Opcional. Constante, que especifica la primera semana del ao. Si no se es-
pecifica, se asume que es aqulla en la que se encuentre el 1 de enero. VbFirstJan1 1
Empieza con la semana en la que se encuentra el 1 de enero (predeterminado).
FirstFourDays 2 Empieza con la primera semana que tenga al menos cuatro das en el
nuevo ao. FirstFullWeek 3 Empieza con la primera semana que est completamente in-
cluda en el nuevo ao.
Das desde hoy: DateDiff("d", Date(), 17-ago-2000)
DatePart Un parte especfica de una fecha
DatePart(interval, date[,firstdayofweek[, firstweekofyear]])
Trimestre: DatePart("q", 27-jun-98)
Day Nmero del da del mes.
MiFecha = #12 febrero 1969# ' Asigna una fecha.
MiDa = Day(MiFecha) ' MiDa contiene 12.
Format Un nmero, fecha, hora o hilera de texto formateada.
Format(expresin[, formato[, primerdadesemana[, primerdadeao]]])
Formato:
Nmeros Utilice formatos numricos con nombre predefinidos o cree formatos numri-
cos definidos por el usuario.
Fechas y horas Utilice formatos de fecha/hora con nombre predefinidos o cree formatos de
fecha/hora definidos por el usuario.
Nmeros seriales de fecha y hora Utilice formatos de fecha y hora o formatos numricos.
Cadenas Cree sus propios formatos de cadena definidos por el usuario.
MiCadena = Format(Time, "Long Time") Devuelve la fecha actual del sistema en el formato
largo de fecha definido por el sistema.
MiCadena = Format(Date, "Long Date")
MiCadena = Format(MiHora, "h:m:s") ' Devuelve "17:4:23".
MiCadena = Format(MiHora, "hh:mm:ss AMPM") ' Devuelve "05:04:23 PM".
MiCadena = Format(MiFecha, "dddd, d mmm aaaa")' Devuelve "Mircoles,
' 27 de Ene de 1993".
' Si no se suministra el formato, devuelve una cadena.
MiCadena = Format(23) ' Devuelve "23".
' Formatos definidos por el usuario.
MiCadena = Format(5459.4, "##,##0.00") ' Devuelve "5.459,40".
MiCadena = Format(334.9, "###0.00") ' Devuelve "334,90".
MiCadena = Format(5, "0.00%") ' Devuelve "500,00%".
MiCadena = Format("HOLA", "<") ' Devuelve "hola".
MiCadena = Format("Esto es", ">") ' Devuelve "ESTO ES".
IIF (SiInm) Uno de dos argumentos dependiendo del resultado de una expresin.
IIf(expr, truepart, falsepart)
IIf(Prueba > 1000, "Grande", "Pequeo")
IsNull Un valor que indica si una expresin contiene el valor especial Null.
MiVar = ""
MiPrueba = IsNull(MiVar) ' Devuelve False.
MiVar = Null
MiPrueba = IsNull(MiVar) ' Devuelve True.
Left Un nmero especfico de caracteres ms a la izquierda de una hilera de texto.
UnaCadena = "Hola Mundo" ' Define la cadena.
MiCadena = Left(UnaCadena, 1) ' Devuelve "H".
MiCadena = Left(UnaCadena, 6) ' Devuelve "Hola M".
MiCadena = Left(UnaCadena, 10) ' Devuelve "Hola Mundo".
Right Un nmero especfico de caracteres ms a la derecha de una hilera de texto.
UnaCadena = "Hola Mundo" ' Define una cadena.
MiCadena = Right(UnaCadena, 1) ' Devuelve "o".
MiCadena = Right(UnaCadena, 6) ' Devuelve "Mundo".
MiCadena = Right(UnaCadena, 20) ' ' Devuelve "Hola Mundo".
Propiedades de Consulta
Propiedad Ttulos de columna (ColumnHeadings)
La propiedad Ttulos de columna (ColumnHeadings) se puede utilizar para especificar el orden o para limitar el
nmero de columnas que aparecen en una consulta de tabla de referencias cruzadas. Por ejemplo, en una consulta
GUIA ACCESS 49
que muestra nombres de pases, quizs desee mostrarlos en un orden especfico, como primero Estados Unidos,
segundo Canad y tercero el Reino Unido.
Valores:
Los valores de los datos del campo Encabezado de columna de la consulta de tabla de referencias cruzadas se
introducen como una expresin de cadena en el orden en que se desea presentar los encabezados en la hoja de
datos para la consulta de tabla de referencias cruzadas, separados por una coma (o el separador de lista estableci-
do en el cuadro de dilogo Propiedades de Configuracin regional del Panel de control de Windows). La tabla
siguiente muestra algunos ejemplos de valores de la propiedad Ttulos de columna (ColumnHeadings) y el resul-
tado en la hoja de datos de la consulta de tabla de referencias cruzadas.
Valor Resultado
Trimestre 1, Trimestre 2, Trimestre 3, Trimestre 4 Muestra encabezados de columnas para cada tri-
mestre.
Mxico, Canad, USA Muestra encabezados de columnas para cada pas.
Esta propiedad se puede establecer utilizando la hoja de propiedades de la consulta. Tambin se puede establecer
en la vista SQL de la ventana Consulta o en Visual Basic utilizando una clusula PIVOT en la instruccin SQL.
Nota Los encabezados de columna que se especifiquen para la propiedad Ttulos de columna (ColumnHea-
dings) tienen que coincidir exactamente con los valores de los datos del campo Encabezado de columna de la
cuadrcula de diseo de consulta. De lo contrario, los datos no aparecern en las columnas.
Comentarios:
La propiedad Ttulos de columna (ColumnHeadings) se utiliza para obtener ms control sobre la apariencia de
los encabezados de columna en una consulta de tabla de referencias cruzadas. De forma predeterminada, Access
muestra todos los valores de los datos de encabezados de columna en orden ascendente. Por ejemplo, si el nom-
bre del campo Encabezado de columna es Mes, los encabezados de columna predeterminados que se muestran
sern Abril, Agosto, Diciembre, Febrero, etc. La propiedad Ttulos de columna (ColumnHeadings) se puede
utilizar para mostrar los datos en el orden correcto con los valores apropiados: Enero, Febrero, Marzo, etc.
Si se incluye un encabezado de columna en el valor de la propiedad Ttulos de columna (ColumnHeadings), la
columna siempre aparece en la vista Hoja de datos de la consulta aunque no contenga ningn dato. Esto es til
para los informes basados en una consulta de tabla de referencias cruzadas, por ejemplo cuando siempre se desea
mostrar los mismos encabezados de columna en el informe.
Sugerencia: La propiedad Ttulos de columna (ColumnHeadings) se puede utilizar para aumentar la velocidad
de algunas consultas de tablas de referencias cruzadas limitando el nmero de columnas que aparecen.
Propiedad Permisos de ejecucin
La propiedad Permisos de ejecucin se puede utilizar en un entorno multiusuario con un grupo de trabajo prote-
gido para que no tengan efecto los permisos de usuario existentes. Esto permite ver una consulta o ejecutar una
consulta de datos anexados, de eliminacin, de creacin de tabla o actualizacin para las que no se tendra per-
miso de ejecucin de otra forma. Por ejemplo, como usuario se puede tener permiso de slo lectura para consul-
tas, mientras el propietario de las consultas tiene permiso de lectura/escritura. Si el propietario establece la pro-
piedad Permisos de ejecucin para especificar los permisos de propietario, se puede ejecutar una consulta de
datos anexados para agregar registros a una tabla.
Valores:
La propiedad Permisos de ejecucin puede tener los valores siguientes.
Valor Descripcin
Del propietario Todos los usuarios tienen permisos de propietario para ver o ejecutar la consulta.
Del usuario (Predeterminado) Los usuarios slo tienen sus propios permisos para ver o ejecutar la consulta.
Esta propiedad se puede establecer utilizando la hoja de propiedades de la consulta.
Tambin se puede establecer la propiedad Permisos de ejecucin en la vista SQL de la ventana Consulta utili-
zando la declaracin WITH OWNERACCESS OPTION en una instruccin SQL.
Propiedad BloqueosDelRegistro (RecordLocks)
Puede usar la propiedad BloqueosDelRegistro (RecordLocks) para determinar cmo se bloquean los registros y
qu sucede cuando dos usuarios intentan editar el mismo registro a la vez. Cuando edita un registro, Access
puede bloquear automticamente ese registro para evitar que otros usuarios lo cambien antes de que usted haya
finalizado.
Formularios. Especifica cmo se bloquean los registros en la tabla o consulta base cuando se actualizan
datos en una base de datos multiusuario.
Informes. Especifica si los registros de la tabla o consulta base se bloquean o no mientras se hace la
vista preliminar o se imprime un informe.
Consultas. Especifica si los registros de una consulta (normalmente una consulta de acciones en una
base de datos multiusuario) se bloquean o no mientras se ejecuta la consulta.
Valores:
Los valores de la propiedad BloqueosDelRegistro (RecordLocks) son las siguientes.
Valor Descripcin Visual Basic
Sin bloquear (Predeterminado ) En los formularios, dos o ms usuarios pueden editar simultneamente el
mismo registro. Esto se llama tambin bloqueo optimista. Si dos usuarios intentan guardar cambios en el mis-
50 CONSULTAS - MENUS VISTA DISEO Pgs. 155
mo registro, Access muestra un mensaje al usuario que intenta guardar el registro en segundo lugar. Este usuario
puede entonces descartar el registro, copiar el registro al Portapapeles, o reemplazar los cambios hechos por el
otro usuario. Este valor se usa tpicamente en formularios de slo lectura o en bases de datos de usuario nico.
Tambin se usa en bases de datos multiusuario para permitir que ms de un usuario sea capaz de hacer cambios
en el mismo registro al mismo tiempo.En informes, los registros no se bloquean cuando se hace la vista prelimi-
nar o se imprime el informe.En consultas, los registros no se bloquean cuando se ejecuta la consulta. 0
Todos los registros Todos los registros en la tabla o consulta base se bloquean mientras el formulario est
abierto en la vista Formulario o la vista Hoja de datos, mientras se hace vista preliminar o se imprime el informe,
o mientras se ejecuta la consulta. Aunque los usuarios pueden leer los registros, ninguno de ellos puede editar,
agregar o eliminar ningn registro hasta que se cierre el formulario, se finalice la impresin del informe, o haya
finalizado la ejecucin de la consulta 1
Registro editado (Slo formularios y consultas) Una pgina de registros se bloquea en cuanto cualquier
usuario comienza a editar cualquier campo en el registro y permanece bloqueada hasta que el usuario se mueve a
otro registro. Consecuentemente, un registro slo puede ser editado a la vez por una persona. Esto tambin se
llama bloqueo pesimista.2
Puede establecer esta propiedad usando la hoja de propiedades del formulario, una macro, o Visual Basic.
Comentarios:
Puede usar el valor Sin bloquear para formularios si slo una persona usa las tablas o consultas bases o hace
todos los cambios a los datos.
En una base de datos multiusuario, puede usar el valor Sin Bloquear si desea usar bloqueo optimista y advertir a
los usuarios que intenten editar el mismo registro en un formulario. Puede usar el valor Registro editado si desea
evitar que dos o ms usuarios editen datos al mismo tiempo.
Puede usar el valor Todos los registros cuando necesite asegurarse de que no se hacen cambios a los datos des-
pus de que comience la vista preliminar o la impresin de un informe o la ejecucin de una consulta de datos
anexados, de eliminacin, de creacin de tabla, o de actualizacin.
En la vista Formulario o la vista Hoja de datos, cada registro bloqueado tiene un indicador de bloqueo en su
selector de registro.
Sugerencia: Para cambiar el valor predeterminado de la propiedad BloqueosDelRegistro (RecordLocks) para
los formularios, elija Opciones del men Herramientas. Haga clic en la ficha Avanzadas en el cuadro de dilogo
Opciones y seleccione la opcin deseada bajo Bloqueo predeterminado de registros.
Los datos en un formulario, informe o consulta de una base de datos Conectividad Abierta de Bases de Datos
(ODBC) se tratan como si se hubiese elegido el valor Sin bloquear independientemente del valor de la propiedad
BloqueosDelRegistro (RecordLocks).
Propiedad TipoRecordset (RecordsetType)
Puede utilizar la propiedad TipoRecordset (RecordsetType) para especificar el tipo de recordset que se hace
disponible para un formulario. Por ejemplo si no desea que se puedan modificar los datos de controles depen-
dientes cuando un formulario est en la vista Formulario o en la vista Hoja de datos, puede establecer la propie-
dad TipoRecordset (RecordsetType) a Snapshot.
Valores:
La propiedad TipoRecordset (RecordsetType) usa los siguientes valores.
Valor Descripcin Visual Basic
Dynaset (Predeterminado) Puede editar controles dependientes basados en una tabla o en varias tablas con
relaciones uno-a-uno. En controles vinculados a campos basados en tablas con relaciones de uno a va-
rios, no puede editar datos del campo combinacin del lado uno de la relacin, a menos que est acti-
vada la actualizacin en cascada entre las tablas (Relaciones) 0
Dynaset (Actualizaciones no coherentes) Se pueden editar todas las tablas y los controles vinculados a sus
campos. 1
Snapshot Imposible editar las tablas o sus controles dependientes. 2
Puede establecer esta propiedad usando la hoja de propiedades del objeto, una macro, o Visual Basic.
Comentarios:
Puede crear formularios basados en varias tablas bases con campos vinculados a los controles del formulario.
Dependiendo del valor de la propiedad TipoRecordset (RecordsetType), podr limitar qu control dependiente se
puede editar.
Adems de la edicin del control proporcionada por la propiedad TipoRecordset (RecordsetType), cada control
del formulario tiene una propiedad Bloqueado (Locked) que puede utilizar para especificar si el control y los
datos subyacentes se pueden editar. Si la propiedad Bloqueado (Locked) se establece a S, no se podrn editar los
datos.
Valores nicos.
I mpedir que se muestren los registros duplicados en los resultados de la consulta
Access considera un registro como nico en tanto el valor de cualquier campo de un registro es diferente del
valor del mismo campo en otro registro. En una consulta, no tiene necesariamente que mostrar todos los campos
que componen los registros de las tablas o consultas base. Por lo tanto, si el campo que distingue a un registro de
otro no est en la cuadrcula de diseo de la consulta, el resultado de la consulta puede incluir registros duplica-
GUIA ACCESS 51
dos. Por ejemplo, si agrega el campo Apellido y el campo Pas a la cuadrcula de diseo de la consulta, podra
parecer que tiene registros duplicados cuando varios empleados tengan el mismo apellido y vivan en el mismo
pas. Sin embargo, los registros no estn duplicados en la tabla base, debido a que IdEmpleado es nico para
cada registro.
Puede mostrar registros nicos en base a todos los campos de la tabla o consulta base, y no slo teniendo en
cuenta los campos de la cuadrcula de diseo de la consulta o puede mostrar registros nicos teniendo en cuenta
slo los campos de la cuadrcula de diseo de la consulta. Con estas configuraciones, si hay duplicados, la con-
sulta muestra una ocurrencia del registro pero no los duplicados.
Impedir registros duplicados en una consulta basada en campos de la tabla base
1 Abra una consulta en la vista Diseo.
2 Seleccione la consulta haciendo clic en cualquier parte de la vista Diseo de la consulta excepto en la
cuadrcula de diseo y en las listas de campos.
3 Haga clic en Propiedades en la barra de herramientas para mostrar la hoja de propiedades de la consul-
ta.
4 Establezca la propiedad Registrosnicos como S.
Notas
La propiedad Registrosnicos slo tiene efecto cuando utiliza ms de una tabla en la consulta y selec-
cione campos de las tablas.
Cuando la propiedad Registrosnicos est establecida como S, Access establece automticamente la
propiedad Valoresnicos como No.
Como alternativa a configurar la propiedad Registrosnicos, puede agregar a la cuadrcula de diseo el
campo que diferencia a un registro de otro.
Impedir registros duplicados en una consulta basada en campos de la cuadrcula de diseo
1 Abra una consulta en la vista Diseo.
2 Seleccione la consulta haciendo clic en cualquier parte de la vista Diseo de la consulta excepto en la
cuadrcula de diseo y en las listas de campos.
3 Haga clic en Propiedades en la barra de herramientas para mostrar la hoja de propiedades de la consul-
ta.
4 Establezca la propiedad Valoresnicos como S.
Si el resultado de la consulta incluye ms de un campo, la combinacin de valores de todos los campos debe ser
nica para un registro dado a incluir en el resultado.
5 Para ver el resultado de la consulta, haga clic en Ver en la barra de herramientas.
Nota Cuando la propiedad Valoresnicos est establecida como S, Access establece automticamente la pro-
piedad Registrosnicos como No.
Campos en blanco en consultas.
Cuando un campo no contiene ningn valor, contiene un valor Null o, para campos de tipo Texto, Memo o Hi-
pervnculo, un valor Null o una cadena de longitud cero. Si existen valores Null en un campo, puede afectar a los
resultados de la consulta. A continuacin se indican algunas pautas que debe seguir para trabajar con las consul-
tas con valores Null y cadenas de longitud cero.
Combinar campos que contienen valores Null
Al combinar tablas en una consulta, el resultado incluir nicamente los registros que no contengan valores Null
en los campos coincidentes. Por ejemplo, para ver una lista de Proveedores y Clientes que viven en la misma
regin, cree una consulta que incluya las tablas Proveedores y Clientes, y las tablas se combinarn por el campo
Regin. Cuando vea los resultados, slo ver los valores de los registros que contengan un valor en el campo
Regin de ambas tablas.
Buscar valores Null o cadenas de longitud cero
Si utiliza una consulta para buscar valores Null o cadenas de longitud cero, escriba Es Nulo en la celda Criterios
para buscar los valores Null, o escriba dos signos de dobles comillas( ) en la celda Criterios para buscar cade-
nas de longitud cero (no escriba ningn espacio en blanco dentro de las comillas).
Entender cmo los valores Null afectan a los clculos numricos
Si est utilizando una funcin agregada para calcular la suma, promedio, cuenta o cualquier otra cantidad sobre
los valores de un campo, los registros de ese campo que tengan valores Null no se incluirn en el clculo. Esto es
verdad tanto si calcula la funcin agregada mediante la fila Total de la cuadrcula de diseo de la consulta, el
Asistente para consultas sencillas o una expresin personalizada. Por ejemplo, si utiliza la funcin Cuenta
(Count) para contar el nmero de valores de un campo, devolver una suma de todos los registros cuyos valores
no son Null. Si desea encontrar el nmero total de registros, incluyendo los valores Null, utilice Cuenta (Count)
con el carcter comodn asterisco (*).
Si en una expresin (como [UnidadesEnExistencia]+[UnidadesEnPedido]) utiliza un operador aritmtico (como
+, -, *, /), y uno de los campos de la expresin contiene un valor Null, el resultado de toda la expresin ser un
valor Null.
Convertir valores Null a cero
Cuando tenga campos que contengan valores Null, es posible crear una expresin que convierta los valores Null
a cero. Puede hacerlo si desea que los registros que contengan valores Null se incluyan en el clculo agregado o
52 FORMULARIOS - MENUS DE VISTA FORMULARIO Y HOJA DATOS Pgs. 155
si desea evitar que una expresin d como resultado un valor Null cuando uno de los campos de la expresin
contenga valores Null. Para convertir valores Null a cero, utilice la funcin Nz. Por ejemplo:
Nz([Subtotal])+Nz([Carga])
Combinar campos Texto que contengan valores Null
Si est utilizando una expresin para combinar dos campos que contienen valores de texto y uno o ambos de los
campos contienen valores Null, utilice el operador & en lugar del operador + para combinar los valores. El ope-
rador & combinar los valores aunque stos contengan valores Null, mientras que el operador + devolver un
valor Null si alguno de los dos valores es Null. Por ejemplo:
NombreCompleto: [Apellido] & & [Nombre]
Ordenar por campos que contengan valores Null y cadenas de longitud cero
Cuando ordena un campo en sentido ascendente, cualquier registro en el que ese campo contiene un valor Null se
muestra primero. Si un campo contiene tanto valores Null como cadenas de longitud cero, los valores Null apa-
recen primero en el criterio de ordenacin, seguidos inmediatamente de las cadenas de longitud cero.
Utilizar el carcter comodn asterisco (*) para devolver valores no Null
Si utiliza una expresin Como * al definir los criterios de la consulta para un campo, los resultados de la con-
sulta incluirn las cadenas de longitud cero de ese campo, pero no los valores Null.


FORMULARI OS
Los formularios muestran cmo obtener el mximo de la vista, introduccin y modificacin de sus datos en for-
matos en pantalla atractivos y efectivos. Puede usar los formularios para poder introducir, modificar o ver datos
en una tabla o consulta; cuadros de dilogo en los que pide informacin y luego lleva a cabo una accin basada
en la entrada; y formularios de paneles de control desde los que puede abrir otros formularios e informes en su
base de datos.
Puede crear un formulario usted solo o hacer que Access cree un formulario automticamente mediante un Asis-
tente para formularios. Un asistente acelera el proceso de creacin de un formulario ya que realiza automtica-
mente todo el trabajo bsico. Cuando se utiliza un Asistente para formularios, Access solicita informacin y crea
un formulario basado en las respuestas. Aunque tenga experiencia en la creacin de formularios, puede que des-
ee utilizar un Asistente para formularios para organizar rpidamente todos los controles en el formulario. A con-
tinuacin, puede cambiar a la vista Diseo para personalizar el formulario.
La mayor parte de la informacin de un formulario proviene de un origen de registros base. Otra informacin del
formulario est almacenada en el diseo del mismo.
El vnculo entre un formulario y su origen de registros se crea usando objetos grficos denominados controles. El
tipo ms comn de control que se usa para mostrar datos es un Cuadro de texto.
FORMULARI OS - MENUS DE VI STA FORMULARI O Y HOJ A DATOS
Includos en Vista Hoja de Datos de Tablas y Consultas.
FORMULARI OS - MENUS DE VI STA DI SEO.
MENU EDI CI ON
Seleccionar formulario o informe (CTRL+R): Selecciona el formulario o informe completo de forma que
pueda, por ejemplo, ver o modificar sus propiedades. Cuando est visible la Regla, tambin puede hacer clic en
el selector de formulario o de informe para seleccionar todo el formulario o informe.
MENU VER
Lista de campos: Presenta una lista de los campos contenidos en el origen de registros base del formulario o
informe. Se pueden arrastrar los campos desde la lista para crear controles que se hacen dependientes de manera
automtica del origen del registros.
Orden de tabulacin: Cambia el orden en el que se mueve el punto de insercin a travs de los controles cuan-
do se usa el tabulador en un formulario.
Cdigo: Presenta el cdigo del formulario o informe seleccionado en la ventana Mdulo.
Regla: Muestra u oculta las reglas de la parte superior e izquierda de un formulario o informe en la vista Diseo.
Cuadrcula: Muestra u oculta la cuadrcula. Utilice la cuadrcula para cambiar el tamao o alinear uniforme-
mente los controles cuando disea un formulario o informe.
Cuadro de herramientas: Muestra u oculta el cuadro de herramientas. Utilice el cuadro de herramientas para
crear controles en un formulario o informe.
Encabezado o pie de pgina o de formulario: Incluye o elimina una seccin de encabezado y una seccin de
pie de pgina/formulario. Utilice estas secciones, por ejemplo, para mostrar los ttulos, instrucciones o botones
de comando. Estas secciones aparecen en la parte superior e inferior de la ventana Formulario y al principio y al
final de la salida impresa, aunque no aparecen en la vista Hoja de datos.
MENU I NSERTAR
Nmeros de pgina: Inserta una expresin de nmero de pgina en un control de tipo cuadro de texto de un
formulario o informe. Puede especificar el formato, la posicin, la alineacin y si desea que se muestre o no el
nmero de pgina en la primera pgina.
GUIA ACCESS 53
Fecha y hora: Inserta una expresin de la fecha y hora actuales en un control de tipo cuadro de texto de un for-
mulario o informe. Se puede especificar el formato y si desea que se muestre slo la fecha o la hora.
Grfico: Muestra los datos de Access en un grfico de un formulario o un informe. Para agregar un grfico
creado con otra aplicacin, como Excel o Lotus 1-2-3, utilice la herramienta Marco de objeto independiente o la
herramienta Marco de objeto dependiente del cuadro de herramientas.
Para crear este control, en el men Insertar, elija Grfico y, a continuacin, haga clic en el formulario o el infor-
me en el que desea situar el control. Access inicia el Asistente para grficos.
Imagen: Inserta una imagen dentro de un control en un formulario o informe. Utilice un control de imagen para
imgenes estticas, tales como un logotipo, y para obtener un acceso rpido.
Objeto
Ver Objeto en Men de Vista Hoja de datos de Tabla, Pg 16.
Control ActiveX: Agrega un control ActiveX (por ejemplo el control Calendar) a un formulario o informe. Los
controles ActiveX se almacenan como archivos separados y se deben registrar. Los controles ActiveX se pueden
obtener de o de otras compaas.
Hipervnculo: Inserta o modifica una direccin de hipervnculo o una direccin URL (Uniform Resource Loca-
tor), incluida la subdireccin y el tipo de ruta de acceso (ya sea absoluta o relativa). En la vista Hoja de datos y
Formulario, el campo de direccin de hipervnculo debe estar seleccionado.
I nsertar pgina en el control ficha: Inserta una pgina nueva a la derecha de las pginas existentes en el control
ficha y la sita en primera posicin en la secuencia de orden de las pginas. Ver Control Ficha.
MENU FORMATO
Autoformato: Aplica su eleccin de formatos predefinidos a un formulario o informe, por ejemplo la imagen del
fondo y las fuentes para los controles.
Definir valores predeterminados de los controles: Utiliza las propiedades del control seleccionado como pro-
piedades predeterminadas para cualquier control del mismo tipo que agregue posteriormente al formulario o
informe activo.
Cambiar a...: Cambia el tipo de control seleccionado a otro tipo.
Ajustar a la cuadrcula: Activa y desactiva Ajustar a la cuadrcula. Cuando est activado, Access alinea los
controles con los puntos de la cuadrcula. Cuando est desactivado, puede colocar los controles en cualquier
punto del formulario o informe.
Alinear a la cuadrcula: Alinea la esquina superior izquierda de cada control seleccionado con el punto ms
cercano de la cuadrcula. Tambin Alinear A la izquierda, A la derecha, Arriba, Abajo.
Tamao, Ajustar: Ajusta el tamao del control seleccionado en un formulario o informe en funcin de su con-
tenido. Puede que desee agrandar un control, por ejemplo, si incrementa el tamao de fuente utilizado para su
texto. A la cuadrcula: Mueve todos los lados de los controles seleccionados hacia dentro o fuera para colocar-
los sobre los puntos ms cercanos de la cuadrcula. Use este comando, por ejemplo, cuando haya cambiado el
grosor de la cuadrcula y quiera volver a ajustar el tamao de los controles en base a esta nueva configuracin.
Tambin Tamao Al ms alto, Al ms corto, Al ms ancho, Al ms estrecho.
Espacio Horizontal: Iguala, aumenta o disminuye el espacio horizontal entre tres o ms controles selecciona-
dos.
Espacio Vertical: Iguala, aumenta o disminuye el espacio vertical entre tres o ms controles seleccionados.
Traer al frente: Mueve el control seleccionado a la parte superior de la pila de controles superpuestos.
Enviar al fondo: Mueve el control seleccionado a la parte inferior de la pila de controles superpuestos.
Crear un formulario mediante Autoformulario
Autoformulario crea un formulario que presenta todos los campos y registros de la tabla o consulta seleccionada.
Cada campo aparece en una lnea diferente con una etiqueta a su izquierda.
1 En la ventana Base de datos, haga clic en la ficha Tablas o Consultas.
2 Seleccione la tabla o consulta en la que desea basar el formulario o abra la tabla o consulta en cualquier
vista.
3 Haga clic en la flecha situada junto al botn Nuevo objeto en la barra de herramientas y, a continuacin,
haga clic en Autoformulario.
Crear un formulario con un asistente.
1 En la ventana Base de datos, haga clic en la ficha Formularios.
2 Elija el botn Nuevo.
3 En el cuadro de dilogo Nuevo formulario, seleccione el asistente que desea utilizar. En el lado izquier-
do del cuadro de dilogo aparecer una descripcin del asistente.
4 Seleccione el nombre de la tabla o consulta que contiene los datos en los que desea basar el formulario.
Nota: No es necesario que siga este paso si elige la opcin Asistente para formularios; puede especificar el
origen del registro para el formulario en el asistente.
5 Elija Aceptar.
6 Si ha seleccionado Asistente para formularios, Asistente para grficos o Asistente para tablas dinmicas
en el paso 3, siga las instrucciones de los cuadros de dilogo del asistente. Si ha seleccionado Autoformulario:
54 FORMULARIOS - MENUS DE VISTA DISEO. Pgs. 155
columnas, Autoformulario: tabular o Autoformulario: hoja de datos, Access crea el formulario de forma autom-
tica.
Si el formulario creado no tiene el aspecto deseado, puede cambiarlo en la vista Diseo.
Nota: Si selecciona una de las opciones de Autoformulario, Access utiliza el ltimo autoformato especificado,
ya sea en el Asistente para formularios o mediante el uso del comando Autoformato del men Formato en la
vista Diseo.
Arrastrado un hoja de datos, Access muestra el subformulario como una hoja de datos.
Crear un formulario basado en ms de una tabla.
En la primera pantalla del Asistente para formularios, puede seleccionar los campos que desea incluir en el for-
mulario. Estos campos pueden proceder de una o de varias tablas. Cuando se utiliza el Asistente para formularios
para crear un formulario basado en varias tablas, Access crea una instruccin SQL detrs del formulario. La
consulta o instruccin SQL incluye la informacin sobre qu tablas y qu campos utilizar.
Puede utilizar un Asistente para formularios para crear un formulario que presente datos de varias tablas, ya sea
un "formulario plano" o un "formulario jerrquico". Un ejemplo de formulario plano es un formulario que pre-
senta productos y proveedores. Un formulario jerrquico es un formulario con uno o ms subformularios. Los
subformularios son tiles si desea mostrar datos de tablas que contienen una relacin uno a varios. Por ejemplo,
podra tener un formulario Categoras que incluyera datos de una tabla Categoras y de una tabla Productos.
Puede que desee presentar los datos jerrquicamente sin utilizar un subformulario. Por ejemplo, si tiene un for-
mulario con muchos controles, puede que no le quede espacio para un subformulario. En ese caso, puede utilizar
el Asistente para formularios para crear formularios sincronizados. En ellos, al hacer clic en un botn de coman-
do del formulario, se abre otro formulario que est sincronizado con el registro del primer formulario.
Plantillas de formularios y de informes.
Cuando crea un formulario o informe sin utilizar un asistente, Access utiliza una plantilla para definir las carac-
tersticas predefinidas del formulario o informe.
La plantilla determina qu secciones tendr un formulario o un informe y define las dimensiones de cada sec-
cin. La plantilla tambin contiene todos los valores predeterminados de las propiedades del formulario o infor-
me, as como sus secciones y controles.
La plantilla predeterminada de los formularios e informes se llama Normal. No obstante, es posible utilizar cual-
quier formulario o informe ya existente como plantilla. Tambin puede crear un formulario o informe para utili-
zarlo como plantilla.
Nota:
Cambiar la plantilla no tiene ningn efecto sobre los formularios o informes existentes.
Una plantilla no crea controles en un nuevo formulario o informe.
Access guarda los valores para las opciones Plantilla para formulario y Plantilla para informe en el
archivo de informacin del grupo de trabajo de Access, no en su base de datos de usuario (el archivo .mdb).
Cuando cambia un valor establecido de una opcin, los cambios se aplican a cualquier base de datos que abra o
cree. Para ver el nombre de la plantilla que est actualmente en uso por los nuevos formularios o informes, haga
clic en Opciones del men Herramientas y, despus, haga clic en la ficha Formularios/Informes.
Para utilizar sus plantillas en otras bases de datos, copie o exporte las plantillas. Si las plantillas no estn
en una base de datos, Access utiliza la plantilla Normal para cualquier nuevo formulario o informe de nueva
creacin. No obstante, los nombres de las plantillas aparecen en las opciones Plantilla para formulario y Plantilla
para informe de cada base de datos del sistema de base de datos, incluso si las plantillas no estn en todas las
bases de datos.
Especificar una nueva plantilla para los formularios e informes:
1 En el men Herramientas, haga clic en Opciones.
2 Haga clic en la ficha Formularios/Informes.
3 Escriba el nombre de la nueva plantilla en el cuadro Plantilla para formulario o Plantilla para informe.
Nota: Puede utilizar un formulario o informe ya existente como plantilla, o bien puede crear un formulario o
informe especficamente para que se utilice como plantilla.
4 Haga clic en Aceptar.
Secciones de formularios.
Puede hacer ms eficiente un formulario mediante la adicin de una o ms secciones. La mayora de los formula-
rios constan de una nica seccin, pero tambin pueden incluir otras secciones, tales como un encabezado de
formulario, encabezado de pgina, pie de pgina y pie de formulario.
Un encabezado de formulario muestra informacin que desea mostrar para cada registro, como un ttulo para el
formulario o botones de comando que abren formularios relacionados o llevan a cabo otras tareas. Los encabeza-
dos de formulario aparecen en la parte superior de la pantalla en la vista Formulario y en la parte superior de la
primera pgina una vez impresa.
Un encabezado de pgina muestra informacin tal como ttulos, grficos, encabezados de columna o cualquier
informacin que se desee en la parte superior de cada pgina impresa. Los encabezados de pgina slo aparecen
en formularios impresos.
GUIA ACCESS 55
Una seccin Detalle muestra registros. Puede mostrar un registro en la pantalla o pgina o puede mostrar tantos
como se pueden ajustar.
Un pie de pgina muestra informacin tal como la fecha, el nmero de pgina o cualquier informacin que
desee en la parte inferior de cada pgina impresa. Los pies de pgina slo aparecen en formularios impresos.
Un pie de formulario muestra informacin que desea mostrar para cada registro tal como botones de comando
instrucciones para usar el formulario. Los pies de formulario aparecen slo en la parte inferior de la pantalla en
la vista Formulario o despus de la ltima seccin Detalle de la ltima pgina una vez impresa.
Agregar o quitar un encabezado o pie de formulario o un encabezado o pie de pgina:
1 Abra el formulario en la vista Diseo.
2 En el men Ver, elija Encabezado o pie de formulario o Encabezado o pie de pgina.
Nota: Los encabezados y los pies de formulario aparecen en la parte superior e inferior de un formulario en la
vista Formulario y al principio y al final de un formulario impreso. Los encabezados y los pies de pgina apare-
cen en la parte superior e inferior de cada pgina impresa; no aparecen en la vista Formulario.
Si quita un encabezado y un pie, Access elimina los controles del encabezado y el pie.
Slo se pueden agregar un encabezado y un pie por pares. Si no desea tener ambos, puede ajustar a cero
el alto del que no desea o puede asignarle a su propiedad Visible (Visible) el valor No. Tambin puede establecer
la propiedad MostrarCuando (DisplayWhen) del encabezado y el pie de un formulario para especificar cundo
desea que aparezcan el encabezado y el pie (Siempre, Slo al imprimir o Slo en pantalla).
Crear un formulario emergente o un cuadro de dilogo personalizado
Puede crear un formulario emergente para presentar la informacin a un usuario o para pedirle datos. Un formu-
lario emergente permanece visible sobre otros formularios abiertos, incluso cuando otro formulario est activo.
Un formulario emergente puede ser no modal o modal. Cuando un formulario emergente es no modal, se puede
tener acceso a otros objetos y comandos de men mientras el formulario permanece abierto. Por ejemplo, en un
formulario Pedidos, puede agregar un botn de comando que presente un formulario emergente de Productos. El
formulario emergente presenta la informacin de un producto en el formulario Pedidos.
1 Cree el formulario. El formulario puede incluir cualquier combinacin de controles.
2 En la vista Diseo del formulario, haga doble clic en el selector de formulario para abrir as la hoja de
propiedades del formulario.
3 En el cuadro de la propiedad Emergente (PopUp), haga clic en S.
4 En el cuadro de la propiedad EstiloDeLosBordes (BorderStyle), seleccione Fino si no desea que el for-
mulario sea ajustable; de lo contrario, pase al siguiente paso. Si selecciona el valor Fino, podr desplazar el for-
mulario emergente pero no podr ajustar el tamao.
5 Cree una macro o un procedimiento de evento que abra el formulario.
Nota: Para ver un ejemplo de un procedimiento de evento que presente un formulario emergente no modal,
haga clic en el botn Generar situado junto al cuadro de la propiedad AlHacerClic (OnClick) del botn. Ver los
detalles del producto en el formulario Pedidos en la aplicacin de ejemplo Pedidos.
6 Adjunte la macro o el procedimiento de evento a un formulario o informe, especificando el nombre de
la macro o el procedimiento de evento como el valor para la propiedad del evento adecuado. Por ejemplo, escri-
ba el nombre de la macro o el procedimiento de evento en el cuadro de la propiedad AlHacerClic (OnClick) de
un botn de comando.
Ver Pg 58, Propiedad Emergente (PopUp).
Ver Pg 59, Prop. Modal.
Cuando un formulario emergente es modal, no se puede tener acceso a ningn otro objeto o comando de men a
menos que oculte o cierre el formulario. Un formulario emergente modal se llama tambin cuadro de dilogo
personalizado. Por ejemplo, podra crear un cuadro de dilogo personalizado que preguntar el informe que des-
ee imprimir.
1 Cree el formulario. El formulario puede tener cualquier combinacin de controles.
2 En la vista Diseo del formulario, haga doble clic en el selector de formulario para abrir la hoja de
propiedades del formulario.
3 En el cuadro de la propiedad Emergente (PopUp), haga clic en S.
4 En el cuadro de la propiedad Modal (Modal), haga clic en S.
5 En el cuadro de la propiedad EstiloDeLosBordes (BorderStyle), seleccione Dilogo. Si selecciona el
parmetro Dilogo, el formulario tiene un borde grueso y slo puede incluir una barra de ttulo y un men Con-
trol. El formulario no se puede maximizar, minimizar o cambiar de tamao.
6 Cree una macro o procedimiento de evento que abra el formulario.
Nota: Para ver un ejemplo de una macro que abre un cuadro de dilogo personalizado, vea el botn Imprimir
factura del formulario en la barra de herramientas del formulario Pedidos en la aplicacin de ejemplo Pedidos.
7 Adjunte la macro o el procedimiento de evento a un formulario o informe especificando el nombre de la
macro o procedimiento de evento como el valor para la propiedad de evento adecuada. Por ejemplo, escriba el
nombre de la macro o procedimiento de evento en el cuadro de la propiedad AlHacerClic (OnClick) de un botn
de comando.
Nota: Un cuadro de dilogo personalizado contiene normalmente uno o ms botones de comando que ejecutan
macros o procedimientos de evento que utilizan la informacin introducida en el cuadro de dilogo para desarro-
56 FORMULARIOS - MENUS DE VISTA DISEO. Pgs. 155
llar otras acciones. Estos botones se llaman frecuentemente Aceptar o Cancelar. Puede controlar qu botn tiene
el enfoque y cul ser el de cancelar estableciendo las propiedades Predeterminado (Default) y Cancelar (Cancel)
para esos tipos de botones de comando.
Para situar el cuadro de dilogo personalizado en la pantalla, abra el formulario en la vista Diseo, maximice la
ventana de Access , coloque el cuadro de dilogo donde desee y guarde el formulario. El cuadro de dilogo
aparecer en esta posicin cuando se abra (suponiendo que la propiedad CentradoAutomtico (AutoCenter) est
establecida a No.
Si desea utilizar el formulario como un formulario normal adems de como un cuadro de dilogo, utilice el valor
Dilogo de la accin AbrirFormulario para abrir el formulario temporalmente como un cuadro de dilogo en
lugar de utilizar este procedimiento.
Algunas Propiedades de Formularios (Datos)
Propiedad OrigenDelRegistro (RecordSource)
La propiedad OrigenDelRegistro (RecordSource) se puede utilizar para especificar el origen de los datos para un
formulario o informe. Se pueden mostrar los datos de una tabla, consulta o instruccin SQL. Por ejemplo, para
mostrar y editar los datos de la tabla Empleados en un formulario, se establece la propiedad OrigenDelRegistro
(RecordSource) del formulario a Empleados. A continuacin se pueden hacer depender los controles del formu-
lario o informe a los campos especificados de la tabla Empleados estableciendo la propiedad OrigenDelControl
(ControlSource) del control al nombre de un campo de la tabla. Por ejemplo, puede hacer depender un control al
campo Apellido en la tabla Empleados estableciendo a Apellido la propiedad OrigenDelControl (ControlSource)
del control.
Valores
El valor de la propiedad OrigenDelRegistro (RecordSource) puede ser un nombre de tabla, un nombre de una
consulta o una instruccin SQL. Por ejemplo, se pueden utilizar los siguientes valores:
Valores de ejemplo Descripcin
Empleados Un nombre de la tabla que especifica la tabla Empleados como el origen de los datos.
SELECT Pedidos.FechaPedido FROM Pedidos; Una instruccin SQL que especifica el campo FechaPedido
en la tabla Pedidos como el origen de los datos. Puede obligar a un control en un formulario o informe al campo
FechaPedido en la tabla Pedidos estableciendo la propiedad OrigenDelControl (ControlSource) del control a
FechaPedido.
La propiedad OrigenDelRegistro (RecordSource) se puede establecer usando la hoja de propiedades del formula-
rio o informe, con una macro o usando Visual Basic.
En Visual Basic, utilice una expresin de cadena para establecer esta propiedad.
Nota Cambiar el origen del registro de un formulario o informe abierto causa una NuevaConsulta (Requery)
automtica de los datos bases.
Comentarios
Despus de que se haya creado un formulario o informe, se puede cambiar su origen de los datos cambiando la
propiedad OrigenDelRegistro (RecordSource). La propiedad OrigenDelRegistro (RecordSource) tambin es til
si se desea crear un formulario o informe reutilizable. Por ejemplo, se podra crear un formulario que incorpore
un diseo estndar, luego copiar el formulario y cambiar la propiedad OrigenDelRegistro (RecordSource) para
mostrar datos de una tabla, consulta o instruccin SQL diferente.
La limitacin del nmero de registros contenidos en el origen del registro de un formulario puede mejorar el
rendimiento, especialmente cuando su aplicacin se ejecuta en una red. Por ejemplo, se puede establecer la pro-
piedad OrigenDelRegistro (RecordSource) del formulario una instruccin SQL que devuelva un registro indivi-
dual y cambiar el origen del registro del formulario dependiendo del criterio seleccionado por el usuario.
Propiedad Filtro (Filter)
Puede utilizar la propiedad Filtro (Filter) para especificar que se muestre un subconjunto de registros, cuando se
aplica un filtro a un formulario, consulta o tabla.
Valores
La propiedad Filtro (Filter) es una expresin de cadena que consiste en una clusula WHERE sin la palabra clave
WHERE. Por ejemplo, el siguiente cdigo Visual Basic define y aplica un filtro para mostrar slo los clientes de
EE.UU.:
Me.Filtro = "Pas = 'EE.UU.'"
Me.ActivarFiltro = True
Puede establecer esta propiedad utilizando hojas de propiedades de tablas o de formularios, una macro o Visual
Basic.
Tambin puede establecer esta propiedad en la vista Formulario o en la vista Hoja de datos seleccionando Filtro
en el men Registros y haciendo clic en uno de los comandos en el submen.
Nota Los valores de la propiedad Filtro (Filter) no tienen efecto sobre la propiedad Filter de DAO.
Comentarios
Puede utilizar la propiedad Filtro (Filter) para guardar un filtro y aplicarlo en algn momento posterior. Los
filtros son guardados con los objetos en los que son creados. Cuando se abre el objeto son cargados automtica-
mente, aunque no son aplicados automticamente.
GUIA ACCESS 57
Cuando se crea un nuevo objeto, hereda las propiedades OrigenDelRegistro (RecordSource), Filtro (Filter), Or-
denarPor (
OrderBy) y ActivarOrden (OrderByOn) de la tabla o consulta de la que fue creado.
Para aplicar un filtro guardado a un formulario, consulta o tabla, puede hacer clic en Aplicar filtro de la barra de
herramientas, hacer clic en Aplicar Filtro/orden en el men Registros o utilizar una macro o Visual Basic para
establecer la propiedad ActivarFiltro (FilterOn) a Verdadero (True) (1). En el caso de los informes, puede apli-
car un filtro estableciendo la propiedad ActivarFiltro (FilterOn) a S en la hoja de propiedades del informe.
El botn Aplicar Filtro indica el estado de las propiedades Filtro (Filter) y ActivarFiltro (FilterOn). El botn
permanece desactivado hasta que haya un filtro para aplicar. Si en la actualidad se est aplicando un filtro, el
botn Aplicar filtro aparecer presionado.
Para aplicar un filtro automticamente cuando se abre un formulario, especifquelo en los valores de la propiedad
del evento OnOpen, o bien una macro que utilice la accin AplicarFiltro (ApplyFilter) o un procedimiento de
evento que utilice el mtodo ApplyFilter del objeto DoCmd.
Puede eliminar un filtro haciendo clic en el botn Aplicar filtro presionado, haciendo clic en Quitar filtro u orde-
nar en el men Registros o utilizando Visual Basic para establecer la propiedad ActivarFiltro (FilterOn) a Falso
(False) (0).
Nota Puede guardar un filtro como una consulta haciendo clic en Guardar como consulta en el men Archivo
mientras permanezca en la ventana Filtro por formulario o en la ventana Filtro u orden avanzado.
Cuando la propiedad Filtro (Filter) se establece en la vista Diseo del formulario, Access no intenta validar la
expresin SQL. Si la expresin SQL no es vlida, se producir un error cuando se aplique el Filtro.
Propiedad OrdenarPor (OrderBy)
Puede utilizar la propiedad OrdenarPor (OrderBy) para especificar cmo desea ordenar los registros en un for-
mulario, consulta, informe o tabla.
Valores
La propiedad OrdenarPor (OrderBy) es una expresin de cadena que representa el nombre del campo o campos
por los que desea ordenar los registros. Cuando se utiliza ms de un nombre de campo, separe los nombres con
una coma (,).
Cuando se establece la propiedad OrdenarPor (OrderBy) introduciendo uno o ms nombres de campos, los regis-
tros son ordenados en orden ascendente. De forma similar, Visual Basic ordena estos campos en orden ascenden-
te de forma predeterminada.
Si desea ordenar los registros en orden descendente, escriba DESC al final de la expresin de cadena. Por ejem-
plo, para ordenar los registros de clientes en orden descendente por nombre de contacto, establezca la propiedad
OrdenarPor (OrderBy) a "NombreContacto DESC".
Puede establecer la propiedad OrdenarPor (OrderBy) utilizando la hoja de propiedades del objeto, en una macro
o Visual Basic.
Comentarios
En el caso de los informes, la propiedad ActivarOrden (OrderByOn) debe ser establecida a S, para aplicar el
orden especificado por la propiedad OrdenarPor (OrderBy) del objeto. Para los formularios, seleccione el campo
por el que desea ordenar los campos y o bien haga clic en el botn de ordenar apropiado en la barra de herra-
mientas o seleccione Ordenar en el men Registros y haga clic en el comando que corresponda del submen.
Tambin puede establecer la propiedad ActivarOrden (OrderByOn) tanto para Formularios como Informes usan-
do Visual Basic.
Establecer la propiedad OrdenarPor (OrderBy) para un informe abierto har que se ejecuten los procedimientos
de evento Close y Open del informe.
Nota Cuando se crea un nuevo objeto, ste hereda las propiedades OrigenDelRegistro (RecordSource), Filtro
(Filter), OrdenarPor (OrderBy) y ActivarOrden (OrderByOn) de la tabla o consulta desde donde fue creado. En
el caso de los formularios e informes, los filtros heredados no se aplican automticamente cuando se abre un
objeto.
Propiedad PermitirEdiciones (AllowEdits)
La propiedad PermitirEdiciones (AllowEdits) se utiliza para especificar si un usuario puede modificar los regis-
tros guardados cuando use un formulario.
Valores
La PermitirEdiciones (AllowEdits) utiliza los siguientes valores.
Valor Descripcin Visual Basic
S (Predeterminado) El usuario puede modificar los registros guardados. True (1)
No El usuario no puede modificar los registros guardados. False (0)
La propiedad PermitirEdiciones (AllowEdits) se puede establecer usando la hoja de propiedades del formulario,
una macro o Visual Basic.
Observaciones
Puede usar la propiedad PermitirEdiciones (AllowEdits) para evitar cambios a los datos mostrados en un formu-
lario. Si dese impedir que se realicen cambios a los datos de un control determinado, use la propiedad Activado
(Enabled) o Bloqueado (Locked).
58 FORMULARIOS - MENUS DE VISTA DISEO. Pgs. 155
Si desea evitar que se produzcan cambios en los registros existentes (hacer un formulario de slo lectura), esta-
blezca las propiedades PermitirAgregar (AllowAdditions), PermitirEliminacin (AllowDeletions) y PermitirEdi-
ciones (AllowEdits) a No. Tambin puede hacer los registros de slo lectura estableciendo la propiedad TipoRe-
cordset (RecordsetType) a Snapshot.
Cuando la propiedad PermitirEdiciones (AllowEdits) est establecida a No, no estn disponibles ni el comando
Eliminar registro del men Edicin, ni el comando Entrada de datos del men Registros.
Nota Cuando est establecido el argumento Modo de datos de la accin AbrirFormulario, Access anular un
determinado nmero de valores de propiedades del formulario. Si el argumento Modo de datos de la accin
AbrirFormulario est establecido a Editar, Access abrir el formulario con los siguientes valores de la propie-
dad:
PermitirEdiciones (AllowEdits) S
PermitirEliminacin (AllowDeletions) S
PermitirAgregar (AllowAdditions) S
EntradaDeDatos (DataEntry) No
Para evitar que la accin AbrirFormulario anule alguno de estos valores de propiedad existentes, omita el valor
del argumento Modo de datos, de tal forma que Access use los valores de las propiedades definidos por el for-
mulario.
Propiedad EntradaDeDatos (DataEntry)
La propiedad EntradaDeDatos (DataEntry) se utiliza para especificar si se abre un formulario dependiente para
permitir slo la entrada de datos. La propiedad EntradaDeDatos (DataEntry) no determina si los registros pueden
agregarse o no; slo determina si se muestran los registros existentes.
Valores
La propiedad EntradaDeDatos (DataEntry) utiliza los siguientes valores.
Valor Descripcin Visual Basic
S El formulario se abre mostrando slo un registro en blanco. True (1)
No (Predeterminado) El formulario se abre mostrando los registros existentes. False (0)
La propiedad EntradaDeDatos (DataEntry) se puede establecer usando la hoja de propiedades de un formulario,
una macro o Visual Basic.
Esta propiedad se puede establecer en cualquier vista.
Observaciones
La propiedad EntradaDeDatos (DataEntry) slo tiene efecto cuando la propiedad PermitirAgregar (AllowAddi-
tions) est establecida a S.
Establecer la propiedad EntradaDeDatos (DataEntry) a S usando Visual Basic tiene el mismo efecto que hacer
clic en Entrada de datos en el men Registros. Establecerla a No usando Visual Basic es equivalente a hacer clic
en Quitar filtro u ordenar en el men Registros.
Nota Cuando se establece el argumento Modo de datos de la accin AbrirFormulario, Access anula un nmero
determinado de valores de propiedades del formulario. Si el argumento Modo de datos de la accin AbrirFormu-
lario est establecido a Editar, Access abrir el formulario con los siguientes valores de las propiedades:
PermitirEdiciones (AllowEdits) S
PermitirEliminacin (AllowDeletions) S
PermitirAgregar (AllowAdditions) S
EntradaDeDatos (DataEntry) No
Para evitar que la accin AbrirFormulario anule alguno de estos valores de propiedad existentes, omita el valor
del argumento Modo de datos, de tal forma que Access use los valores de las propiedades definidos por el for-
mulario.
Propiedad TipoRecordset (RecordsetType)
Ver Pg 50 Prop. Tipo Recorset.
(Otras) Propiedad Emergente (PopUp)
Ver Pg 55, Crear Formulario emergente o Cuadro dilogo.
Puede usar la propiedad Emergente (PopUp) para especificar si un formulario se abre como un formulario emer-
gente. Por ejemplo, establece la propiedad Emergente (PopUp) del formulario a S, la propiedad Modal a S, y la
propiedad EstiloDeLosBordes (BorderStyle) a Dialog para crear un cuadro de dilogo personalizado.
Valores
Los valores de la propiedad Emergente (PopUp) son:
Valor Descripcin Visual Basic
S El formulario se abre como un formulario emergente en la vista Formulario. Permanece por encima de
todas las dems ventanas de Access. True (-1)
No (Predeterminado) El formulario no es un formulario emergente. False (0)
Puede establecer esta propiedad usando la hoja de propiedades, una macro, o Visual Basic.
La propiedad Emergente (PopUp) slo se puede establecer en la vista Diseo del formulario.
Comentarios
GUIA ACCESS 59
Para especificar el tipo de borde que desea para un formulario emergente, use la propiedad EstiloDeLosBordes
(BorderStyle). Habitualmente se establece "Delgado" en la propiedad EstiloDeLosBordes (BorderStyle) para los
formularios emergentes.
Sugerencia Puede usar las propiedades Emergente (PopUp), Modal y EstiloDeLosBordes (BorderStyle) para
crear un cuadro de dilogo personalizado. Establezca la propiedad Modal a S, la propiedad Emergente (PopUp)
a S, y la propiedad EstiloDeLosBordes (BorderStyle) a Dilogo para cuadros de dilogo personalizados.
Establecer la propiedad Emergente (PopUp) a S hace que el formulario sea un formulario emergente slo cuan-
do haga algo de lo siguiente:
Abrirlo en la vista Formulario desde la ventana Base de datos.
Abrirlo en vista Formulario utilizando una macro o Visual Basic.
Cambiar de la vista Diseo a la vista Formulario.
(Otras) Propiedad Modal
Ver Pg 55, Crear Formulario emergente o Cuadro dilogo.
Puede utilizar la propiedad Modal para especificar si un formulario se abre como un formulario modal. Cuando
un formulario se abre como un formulario modal, debe cerrar el formulario para poder mover el enfoque a otro
objeto.
Valores
La propiedad Modal puede tener los valores siguientes:
Valor Descripcin Visual Basic
S El formulario se abre como un formulario modal en la vista Formulario. True (1)
No (Predeterminado) El formulario se abre como un formulario no modal en la vista Formulario. False
(0)
Puede establecer esta propiedad mediante la hoja de propiedades del formulario, una macro o Visual Basic.
Comentarios
Al abrir un formulario modal, las dems ventanas de Access se deshabilitan hasta que se cierra el formulario
(aunque puede cambiar a otras ventanas de otras aplicaciones). Para deshabilitar mens y barras de herramientas
adems de otras ventanas, establezca las propiedades Modal y Emergente (PopUp) del formulario a S.
Puede utilizar la propiedad EstiloDeLosBordes (BorderStyle) para especificar el tipo de borde que tendr un
formulario. Normalmente, los formularios modales tienen la propiedad EstiloDeLosBordes (BorderStyle) esta-
blecida a Dilogo.
Sugerencia Puede utilizar las propiedades Modal, Emergente (PopUp) y EstiloDeLosBordes (BorderStyle)
para crear un cuadro de dilogo personalizado. Puede establecer Modal a S, Emergente (PopUp) a S y Estilo-
DeLosBordes (BorderStyle) a Dilogo para los cuadros de dilogo personalizados.
Al establecer la propiedad Modal a S, el formulario se convierte en modal slo cuando:
Se abre en la vista Formulario desde la ventana Base de datos.
Se abre en la vista Formulario mediante una macro o Visual Basic.
Se cambia de la vista Diseo a la vista Formulario.
Cuando el formulario es modal, no puede cambiar a la vista Hoja de datos desde la vista Formulario, aunque
puede cambiar a la vista Diseo y, a continuacin, a la vista Hoja de datos.
El formulario no es modal en la vista Diseo o en la vista Hoja de datos y tampoco es modal si cambia de la vista
Hoja de datos a la vista Formulario.
Nota Puede utilizar el valor Dilogo del argumento de accin Modo de la ventana de la accin AbrirFormulario
para abrir un formulario con sus propiedades Modal y Emergente (PopUp) establecidas a S.
Cuando se establece la propiedad Emergente (PopUp) a S, no se puede cambiar a las otras vistas desde la vista
Formulario, porque la barra de herramientas del formulario no est disponible (No puede cambiar un formulario
emergente desde la vista Formulario a la vista Hoja de datos, incluso en una macro o en Visual Basic). Debe
cerrar el formulario y volverlo a abrir en la vista Diseo o en la vista Hoja de datos.
El formulario no es un formulario emergente en la vista Diseo y tampoco lo es en la vista Hoja de datos,
adems no es un formulario emergente si cambia desde la vista Hoja de datos a la vista Formulario.
Nota Puede usar el valor Dilogo del argumento Modo de ventana de la accin AbrirFormulario para abrir un
formulario con sus propiedades Emergente (PopUp) y Modal establecidas a S.
Sugerencia Cuando maximice una ventana en Access, todas las otras ventanas tambin se maximizarn cuan-
do las abra o se cambie a ellas. Sin embargo, los formularios emergentes no sern maximizados. Si desea que un
formulario mantenga su tamao cuando maximice otras ventanas, establezca su propiedad Emergente (PopUp) a
S.
Propiedad BloqueosDelRegistro (RecordLocks)
Ver Pg 49 Prop. Bloqueos del Registro.
Controles
Toda la informacin de un formulario o informe est contenida en los controles. Los controles son objetos de un
formulario o informe que muestran datos, realizan acciones o decoran el formulario o el informe. Por ejemplo,
puede utilizar un cuadro de texto en un formulario o informe para mostrar datos, un botn de comando en un
formulario para abrir otro formulario o informe, o una lnea o un rectngulo para separar y agrupar controles con
el fin de hacerlos ms legibles.
60 FORMULARIOS - MENUS DE VISTA DISEO. Pgs. 155
Access incluye los siguientes tipos de controles, a los cuales se puede tener acceso a travs del cuadro de herra-
mientas en la vista Diseo del formulario o en la vista Diseo del informe: cuadro de texto, etiqueta, grupo de
opciones, botn de opcin, casilla de verificacin, botn de alternar, cuadro combinado, cuadro de lista, botn de
comando, imagen, marco de objeto dependiente, marco de objeto independiente, subformulario/subinforme, salto
de pgina, lnea, rectngulo y controles personalizados ActiveX.
Los controles pueden ser dependientes, independientes o calculados. Un control dependiente est unido a un
campo de una tabla o consulta base. Los controles dependientes se utilizan para mostrar, introducir y actualizar
valores de los campos de la base de datos. Un control calculado utiliza una expresin como origen de los datos.
Una expresin puede utilizar datos de un campo de una tabla o consulta base de un formulario o informe o bien
datos de otro control del formulario o informe. Un control independiente no tiene un origen de los datos. Puede
utilizar los controles independientes para mostrar informacin, lneas, rectngulos e imgenes.
Tipos de Controles: Etiquetas, Cuadros de texto, Grupos de opciones, Botones de alternar, Botones de opcin,
Casillas de verificacin, Cuadros combinados, Cuadros de lista, Botones de comando, Imagen, Marcos de obje-
tos independientes o Marcos de objetos dependientes, Subformularios, Subinformes, Saltos de pgina, Lneas,
Rectngulos, Controles ficha, Otros Controles (ActiveX.).
Cuadro de Herramientas de controles
Mostrar/ocultar con ALT+ V, A. Para bloquear una herramienta (dejar fija), doble clic. Desbloquearla, ESC.
Botn seleccionar objetos (Flecha)
Se utiliza para seleccionar un control, una seccin o un formulario. Haga clic en esta herramienta para desblo-
quear un botn del cuadro de herramientas que estuviera bloqueado. Utilizar siempre para seleccionar controles.
Para varios textos y etiquetas (controles) abarcar en rectngulo arrastrando sobre slo textos o sobre etiquetas y
sus textos (todo) o sobre slo etiquetas. Para seleccionar controles no juntos, hacer clic en los textos sosteniendo
MAY. Cuanto se convierte en mano (en borde de texto), mueve texto(s) y etiqueta(s). Para cada uno indepen-
diente, dedo sobre cuadrado grande. Para mantener vertical u horizontal mientras se arrastra, sostener MAY.
Cambiar tamaos con cuadrados pequeos o con Menu Formato (Tamao, Ajustar)
Los controles se pueden Copiar, Cortar, Pegar (Pasa a portapapeles). Tambin duplicar (Igual que PowerPoint,
Duplicar de Nuevo).
Para alinear controles: Men Formato (Alinear). A la cuadrcula: alinea esq. sup izq. a la cuadrcula para alinear
en columnas o filas. Seleccionar primero slo etiquetas o textos. Despus: Arriba, Abajo, Izquierda, Derecha.
Botn Asistentes para Controles
Activa y desactiva los asistentes para controles. Utilice los Asistentes para controles para que le ayuden a crear
un cuadro de lista, un cuadro combinado, un grupo de opciones, un botn de comando, un grfico, un subinforme
o un subformulario. El botn Asistentes para controles debe estar presionado si se desean utilizar automtica-
mente los asistentes en la creacin de estos controles.
Etiqueta
Un control que presenta texto descriptivo, por ejemplo un ttulo o instrucciones de un formulario o informe.
Access adjunta automticamente etiquetas a los controles que crea.
Utilice este procedimiento para crear una etiqueta individual (una etiqueta que no est adherida a ningn otro
control). Para crear una etiqueta que se adjunta a un control, simplemente cree el control. Access adjunta de
forma automtica una etiqueta al control cuando lo crea.
1 Abra un formulario en la vista Diseo del formulario o un informe en la vista Diseo.
2 Haga clic en la herramienta Etiqueta en el Cuadro de Herramientas.
3 En el formulario o informe, haga clic en donde desee colocar la etiqueta, e introduzca a continuacin el
texto de la etiqueta.
Nota: Si desea presentar el texto de una etiqueta en ms de una lnea, puede ajustar el tamao de la etiqueta des-
pus de haber introducido todo el texto, o puede presionar CTRL+INTRO al final de la primera lnea de texto
para introducir un retorno de carro. Si inserta un retorno de carro, Access alinea las lneas subsiguientes segn
las escriba. Para romper una lnea de forma manual en un lnea continua, presione de nuevo CTRL+INTRO. El
ancho mximo de una etiqueta est determinado por la longitud de la primera lnea de texto. Si desea utilizar una
"y" comercial (&) en una etiqueta, debe teclearla dos veces. Esto es debido a que Access utiliza el carcter & en
una etiqueta o botn para definir una tecla de acceso.
Cuadros de texto.
Se utiliza para: presentar, introducir o modificar los datos del origen de registros base de un formulario o infor-
me, presentar los resultados de un clculo o recibir los datos introducidos por el usuario.
Crear un cuadro de texto dependiente
Arrastre el(los) campo(s) desde la lista de campos y pngalos en el formulario o informe.
Access coloca un cuadro de texto en el formulario o informe por cada campo que seleccione en la lista de
campos. Cada cuadro de texto est relacionado con un campo de la fuente de datos base del formulario o del
informe. Cada cuadro de texto tiene tambin adjunta una etiqueta de forma predeterminada.
Rehaga el tamao del cuadro de texto de forma que tenga el tamao adecuado para los datos que desea mos-
trar.
Si es necesario, cambie el texto de la etiqueta.
GUIA ACCESS 61
En el caso de los cuadros de texto de los formularios que tengan muchas lneas de texto, puede desear agregar
un barra de desplazamiento vertical (propiedad Barras de Desplazamientos).
Crear un cuadro de texto independiente
Haga clic en cualquier parte del formulario o informe para crear un cuadro de texto de tamao predetermina-
do, o arrastre un cuadro de texto que tenga el tamao que desea.
Crear un control calculado
Un cuadro de texto es el tipo de control ms utilizado para presentar un valor calculado, tambin puede utili-
zar cualquier control que tenga una propiedad OrigenDelControl (ControlSource).
S el control es un cuadro de texto, puede escribir directamente la expresin en el control.
Si el control no es cuadro de texto o si el control es un cuadro de texto pero desea utilizar el Generador de
expresiones para crear la expresin, asegrese de que el control est seleccionado, haga clic en Propiedades
en la barra de herramientas para abrir la hoja de propiedades del control y luego escriba la expresin en el
cuadro de la propiedad OrigenDelControl (ControlSource) o presione el botn Generar para abrir el Genera-
dor de expresiones.
En un control calculado, comience cada expresin con el operador =.
Si en el cuadro de la propiedad OrigenDelControl (ControlSource) necesita ms espacio para escribir una
expresin, presione MAY+F2 para abrir el cuadro Zoom.
Si el formulario est basado en una consulta, podra querer colocar la expresin en la consulta, en vez de en
el control calculado.
Para control texto de clculo, introducir la expresin. ( Ej.: =[Unit Price]*.75 (-25%)).
Algunas Propiedades de Cuadro de Texto (Datos)
Propiedad OrigenDelControl (ControlSource)
La propiedad OrigenDelControl (ControlSource) se puede utilizar para especificar qu datos aparecen en un
control. Se pueden mostrar y editar datos dependientes de un campo en una tabla, consulta o instruccin SQL.
Tambin se puede mostrar el resultado de una expresin. Para un nivel de grupo de informe, la propiedad Ori-
genDelControl (ControlSource) determina el campo o expresin por el que agrupar.
Nota La propiedad OrigenDelControl (ControlSource) no se aplica a los controles de casillas de verificacin,
botones de opcin o botones de alternar incluidos en un grupo de opciones. Slo se aplica al propio grupo de
opciones.
En el caso de los informes, la propiedad OrigenDelControl (ControlSource) slo se aplica a los niveles de grupo
del informe.
Valores
La propiedad OrigenDelControl (ControlSource) tiene los siguientes valores:
Valor Descripcin
Un nombre de campo El control es dependiente de un campo en una tabla, consulta o instruccin SQL. Los
datos del campo se muestran en el control. Los cambios a los datos dentro del control hacen que se cambien los
datos correspondientes en el campo. (Para hacer que el control sea de slo lectura, establezca la propiedad Blo-
queado (Locked) a S.) Si hace clic en un control dependiente para un campo que tiene un tipo de dato Hiper-
vnculo, ir al destino especificado en la direccin del hipervnculo.
Una expresin El control muestra los datos generados por una expresin. Estos datos pueden ser cambiados
por el usuario pero no se guardan en la base de datos.
La propiedad OrigenDelControl (ControlSource) se puede establecer para un control usando la hoja de propieda-
des del control, con una macro o usando Visual Basic.
Tambin se puede establecer la propiedad OrigenDelControl (ControlSource) para un cuadro de texto escribien-
do un nombre de campo o expresin directamente en el cuadro de texto en la vista Diseo del formulario o en la
vista Diseo del informe.
(Dejar en Blanco)
Para un informe, se puede establecer esta propiedad seleccionando un campo o escribiendo una expresin en la
columna Campo/expresin del cuadro Ordenar y agrupar . Para obtener ms detalles, consulte la propiedad
GroupLevel.
En Visual Basic, utilice una expresin de cadena para establecer el valor de esta propiedad.
Comentarios
Los formularios e informes actan como ventanas de su base de datos. El origen principal de los datos para un
formulario o informe se especifica estableciendo su propiedad OrigenDelRegistro (RecordSource) a una tabla,
consulta o instruccin SQL. A continuacin puede establecer la propiedad OrigenDelControl (ControlSource) a
un campo en el origen de los datos o a una expresin. Si el valor de la propiedad OrigenDelControl (Control-
Source) es una expresin, el valor que se muestra es de slo lectura y no se guarda en la base de datos. Por ejem-
plo, puede utilizar los siguientes valores:
Valores de ejemplo Descripcin
Apellido Para un control, los datos del campo Apellido se muestran en el control. Para un nivel de grupo de in-
forme, Access agrupa los datos sobre el apellido.
=Fecha( ) + 7 Para un control, esta expresin muestra una fecha que es siete das a partir del da de hoy en el
control.
62 FORMULARIOS - MENUS DE VISTA DISEO. Pgs. 155
=ParteFecha("q",FechaEnviado) Para un control, esta expresin muestra el trimestre de la fecha de envo. Para
un nivel de grupo de informe, Access agrupa los datos en el trimestre de la fecha del envo.
Propiedad MscaraDeEntrada (I nputMask)
Ver Pg 24, Propiedad Mscara.
Propiedades Activado (Enabled) y Bloqueado (Locked)
La propiedad Activado (Enabled) especifica si un control puede tener el enfoque en la vista Formulario.
La propiedad Bloqueado (Locked) especifica si se pueden editar los datos de un control en la vista For-
mulario.
Valores
Los valores de la propiedad Activado (Enabled) son las siguientes.
Valor Descripcin Visual Basic
S (Predeterminado para todos los controles excepto los marcos de objeto independientes) El control puede
tener el enfoque. Si el control es un marco de objeto independiente, haciendo doble clic en l se ejecuta el verbo
principal del control. Por ejemplo, un marco de objeto independiente podra reproducir un objeto de sonido in-
crustado. True (1)
No (Predeterminado para marcos de objeto independientes) El control no puede tener el enfoque y aparece
atenuado. Si el control es un grupo de opciones, ni el grupo de opciones ni los controles dentro del grupo de
opciones pueden tener el enfoque. False (0)
Los valores de la propiedad Bloqueado (Locked) son los siguientes.
Valor Descripcin Visual Basic
S (Predeterminado para marcos de objeto independientes) El control funciona normalmente pero no per-
mite modificar, agregar o eliminar datos. True
No (Predeterminado para todos los controles excepto marcos de objeto independientes) El control funciona
normalmente y permite modificar, agregar o eliminar datos. False
Puede establecer estas propiedad utilizando la hoja de propiedades del control, una macro, o en Visual Basic.
Comentarios
Use la propiedad Activado (Enabled) para activar y desactivar controles. Por ejemplo, en la vista Formulario
puede desactivar un botn de comando hasta que haya cambiado los datos en un control de cuadro de texto.
Puede usar entonces el evento AfterUpdate del control para llamar a un procedimiento de evento o una macro
para activar el botn de comando.
Use la propiedad Bloqueado (Locked) para proteger los datos en un campo hacindolos de slo lectura. Por
ejemplo, podra desear que un control slo mostrase informacin, sin permitir su modificacin, o podra desear
bloquear un control hasta que se cumpliese una condicin especfica.
Puede combinar los valores de las propiedades Activado (Enabled) y Bloqueado (Locked) para lograr los si-
guientes efectos.
Activado (Enabled) Bloqueado (Locked) Efecto
S S El control puede tener el enfoque. Los datos se muestran normalmente y se pueden copiar pero
no editar.
S No El control puede tener el enfoque. Los datos se muestran normalmente y se pueden copiar y
editar.
No S El control no puede tener el enfoque. Los datos se muestran normalmente pero no se pueden
copiar ni editar.
No No El control no puede tener el enfoque. El control y los datos estn desactivados (atenuados).
La propiedad PuntoDeTabulacin (TabStop) se puede combinar con la propiedad Activado (Enabled) para evitar
el uso de la tecla TAB para seleccionar un botn de comando, mientras se sigue permitiendo el uso del botn
haciendo clic en l. Al establecer "No" en la propiedad PuntoDeTabulacin (TabStop) se hace que el botn de
comando no est en el orden de tabulacin. Sin embargo, si la propiedad Activado (Enabled) est establecida a
"S", podr hacer clic en el botn de comando.
Para permitir modificaciones en un objeto incrustado o vinculado de un marco de objeto independiente, debe
establecer "S" en la propiedad Activado (Enabled) de marco de objeto independiente y "No" en la propiedad
Bloqueado (Locked).
Propiedad BuscarPorFiltro (FilterLookup)
Puede utilizar la propiedad BuscarPorFiltro (FilterLookup) para especificar si los valores deben aparecer en un
control de cuadro de texto dependiente cuando utilice la ventana Filtro por formulario.
Valores
La propiedad BuscarPorFiltro (FilterLookup) utiliza los siguientes valores.
Valor Descripcin Visual Basic
Nunca No se muestran los valores del campo. Puede especificar si los registros filtrados pueden contener valo-
res Null. 0
Base de datos predeterminada (Predeterminado) Los valores de los campos se muestran de acuerdo con los
valores bajo la seccin Valores predeterminados de filtro por formulario de la ficha Editar/Buscar del cuadro de
dilogo Opciones, disponible haciendo clic en Opciones en el men Herramientas. 1
Siempre Los valores de los campos se muestran siempre. 2
GUIA ACCESS 63
Puede establecer la propiedad BuscarPorFiltro (FilterLookup) utilizando la hoja de propiedades del cuadro de
texto, una macro o Visual Basic.
Tambin puede establecer de forma predeterminada esta propiedad utilizando un cuadro de texto con el estilo de
control predeterminado del control o el mtodo DefaultControl en Visual Basic.
Comentarios
Si desea limitar los tipos de campos a mostrar, elimine la casilla de verificacin apropiada bajo Valores prede-
terminados de Filtro por formulario en la ficha Modificar/Buscar del cuadro de dilogo Opciones, al que se tiene
acceso haciendo clic en Opciones en el men Herramientas. Si no se muestran las listas de campos, debe incre-
mentar el nmero en el cuadro No mostrar listas cuando el nmero de registros ledos sea superior a, de forma
que el valor sea mayor o igual al nmero mximo de registros en cualquier campo del origen de los registros.
Grupo de opciones
Se utiliza junto con las casillas de verificacin, los botones de opcin o los botones de alternar para presentar un
conjunto de valores alternativos. Por ejemplo, se puede utilizar un grupo de opcin para especificar si un pedido
se va a enviar por aire, por mar o por tierra.
Crear un grupo de opciones con casillas de verificacin, botones de alternar o de opcin
Puede crear su propio grupo de opciones o puede hacer que Access cree el grupo de opciones para el usuario
utilizando un asistente. Un asistente aligera el proceso de crear un grupo de opciones porque lleva a cabo todo el
trabajo de tipo bsico que realizara el usuario. Cuando utiliza un asistente, Access le pide informacin y crea un
grupo de opciones basado en sus respuestas.
Sugerencia: Si desea presentar ms de unas pocas opciones, utilice un cuadro de lista o un cuadro combinado
en vez de un grupo de opciones.
Puede utilizar un grupo de opciones en un formulario o informe para presentar un conjunto limitado de alternati-
vas. Un grupo de opciones hace fcil seleccionar un valor, ya que slo tiene que hacer clic en el valor que desee.
Slo se puede elegir una opcin cada vez de entre un grupo de opciones.
Un grupo de opciones consiste en un marco de grupo y un conjunto de casillas de verificacin, opciones, o boto-
nes de alternar.
Si un grupo de opciones est vinculado con un campo, slo est vinculado con el campo el propio marco del
grupo, no las casillas de verificacin, los botones de alternar, o los botones de opcin dentro del marco. En vez
de establecer la propiedad OrigenDelControl (ControlSource) para cada uno de los controles del grupo de opcio-
nes, establezca la propiedad ValorDeLaOpcin (OptionValue) de cada casilla de verificacin, botn de alternar,
o de opcin a un nmero que tenga algn significado para el campo con el que el marco del grupo est vincula-
do. Cuando se selecciona una opcin en un grupo de opciones, Access establece el valor del campo con el que el
grupo de opciones est vinculado al valor de la propiedad ValorDeLaOpcin (OptionValue) de la opcin selec-
cionada.
Nota: La propiedad ValorDeLaOpcin (OptionValue) se establece a un nmero porque el valor de un grupo de
opciones slo puede ser un nmero, no texto. Access guarda este nmero en la tabla base. En este ejemplo, si
desea presentar el nombre del distribuidor en vez de un nmero en la tabla Pedidos, puede crear una tabla sepa-
rada llamada Distribuidores que guarde los nombres de los distribuidores, y entonces hacer que el campo Enviar
de la tabla Pedidos sea un campo de Bsqueda que busca los datos de la tabla Distribuidores.
Un grupo de opciones tambin puede ser establecido como una expresin, o puede ser independiente. Puede
utilizar un grupo de opciones independientes en un cuadro de dilogo personalizado para aceptar la entrada de
datos de los usuarios y llevar a cabo a continuacin alguna accin basada en esa entrada.
Si desea crear un grupo de opciones independiente, haga clic en donde desee colocar el marco del grupo.
Si desea crear un grupo de opciones dependiente, haga clic en Lista de campos en la barra de herramientas para
presentar la lista de campos y arrastre entonces el campo apropiado desde la lista de campos hacia el formulario
o informe. Si el botn de la lista de campos o el comando no estn disponibles, necesita hacer depender el for-
mulario o el informe de un origen de registros mediante la propiedad OrigenDelRegistro (RecordSource).
Nota: Debe arrastrar el campo desde la lista de campos. Si hace clic en la lista de campos y despus hace clic
en el formulario o informe, el control no quedar relacionado.
En el Cuadro de herramientas, haga clic en la herramienta Casilla de verificacin , Botn de opcin, o Botn de
alternar, y haga a continuacin clic dentro del marco del grupo donde desee que aparezca el ngulo superior
izquierdo de la casilla de verificacin, del botn de opcin, o el botn de alternar. Cuando el puntero del ratn
est sobre el marco, Access seala el grupo de opciones para indicar que los controles colocados dentro forman
parte del grupo de opciones.
Cuando Access crea el primer control dentro de un grupo de opciones, establece la propiedad ValorDeLaOpcin
(OptionValue) del control a 1.
Repita el paso 5 para cada uno de los controles que agregue al grupo de opciones. Access establece la propiedad
ValorDeLaOpcin (OptionValue) de la segunda opcin a 2, la tercera a 3, y as sucesivamente.
Si creara una casilla de verificacin, un botn de opcin o un botn de alternar fuera de un grupo de opciones y
quisiera agregar ese control al grupo de opciones, debe cortar y pegar el control dentro del grupo de opciones
(seleccione el marco del grupo de opciones antes de pegar). Al cortar y pegar, Access establece la propiedad
ValorDeLaOpcin (OptionValue) del control a -1 de forma que debe restablecer la propiedad al valor que desee.
Si arrastra un control existente hacia un marco de grupo, el control no llega a formar parte del grupo de opciones.
64 FORMULARIOS - MENUS DE VISTA DISEO. Pgs. 155
Botn de alternar
Se utiliza como: un control autnomo dependiente de un campo S/No, como un control independiente para
recibir los datos introducidos por el usuario en un cuadro de dilogo personalizado, o como parte de un grupo de
opciones.
Puede utilizar un botn de alternar en un formulario como un control individual para presentar un valor S/No de
una tabla, consulta o instruccin SQL base.
Cuando se hace clic en un botn de alternar que est vinculado a un campo de S/No, Access presenta el valor
en la tabla base de acuerdo con la propiedad Formato (Format) del campo (Si/No, Verdadero/Falso, o Activa-
do/Desactivado).
Los botones de alternar son muy prcticos cuando se utilizan en un grupo de opciones junto con otros botones.
En un grupo de opciones, puede ver fcilmente si un botn est presionado.
Puede utilizar imgenes en los botones de alternar en vez de texto. Por ejemplo, en vez de presentar la palabra
"Suspendido" en el botn de alternar del primer ejemplo, podra presentar la imagen de una papelera.
Tambin puede utilizar el botn de alternar en un cuadro dilogo personalizado para aceptar la entrada de datos
de los usuarios.
Botn de opcin
Se utiliza como: un control autnomo dependiente de un campo S/No, como un control independiente para
recibir los datos introducidos por el usuario en un cuadro de dilogo personalizado, o como parte de un grupo de
opciones.
Puede utilizar un botn de opcin en un formulario como un control individual para presentar un valor S/No de
una tabla, consulta o instruccin SQL base.
Cuando se selecciona o desactiva una opcin que est vinculada a un campo S/No, Access presenta el valor de
la tabla base de acuerdo con la propiedad Formato (Format) del campo (S/No, Verdadero/Falso o Activa-
do/Desactivado).
Tambin puede utilizar las opciones en un grupo de opciones para presentar valores entre los cuales elegir. Tam-
bin puede utilizar un botn de opcin independiente en un cuadro de dilogo personalizado para aceptar la en-
trada de datos de los usuarios.
Casilla de verificacin
Se utiliza como: un control autnomo dependiente de un campo S/No, como un control independiente para
recibir los datos introducidos por el usuario en un cuadro de dilogo personalizado, o como parte de un grupo de
opciones.
Puede utilizar una casilla de verificacin en un formulario o informe como un control individual para presentar
un valor S/No de una tabla, consulta o instruccin SQL base.
Cuando se selecciona o borra una casilla de verificacin que depende de un campo S/No, Access presenta el
valor de la tabla base de acuerdo con la propiedad Formato (Format) del campo (S/No, Verdadero/Falso o Acti-
vado/Desactivado).
Tambin puede utilizar casillas de verificacin en un grupo de opciones para presentar valores entre los cuales
elegir. Tambin puede utilizar una casilla de verificacin independiente en un cuadro dilogo personalizado para
aceptar la entrada de datos de los usuarios.
Cuadro combinado
Combina las caractersticas de un cuadro de lista y un cuadro de texto. Se puede escribir en el cuadro de texto o
seleccionar un elemento en el cuadro de lista para agregar un valor a un campo base.
Las filas para un cuadro de lista o cuadro combinado pueden venir desde una lista fija de valores que introduce
cuando crea el cuadro de lista o cuadro combinado (procedimiento utilizado cuando la lista no cambia muy a
menudo), o pueden venir de una tabla o consulta (procedimiento utilizado cuando la tabla se actualiza muy a
menudo). Por ejemplo, podra utilizar una lista fija para un cuadro de lista que contenga las entradas de Sr., Sra.,
Srta. Si, por otro lado, tiene un formulario de Productos y desea presentar un cuadro de lista que liste los provee-
dores de producto que van a cambiar muy frecuentemente, base el cuadro de lista en una tabla o consulta. El
cuadro de lista busca los valores en la tabla de Proveedores y presenta los nombres de los proveedores para que
se pueda elegir.
Cuando un usuario selecciona un valor en el cuadro de lista o cuadro combinado, tiene dos opciones. Puede
guardar el valor seleccionado en una tabla (no en la misma tabla de donde la lista toma las filas) o puede pasar el
valor a otro control. Por ejemplo, para el cuadro de lista de Proveedores, si un usuario selecciona "Pavlova,
Ltd.", Access busca el valor de la clave principal (IdProveedor) para Pavlova, Ltd. en la tabla Proveedores y
establece el campo IdProveedor (la clave exterior) para el registro actual en la tabla Productos para el mismo
valor. Este es el valor que se guarda. Puesto que se guarda un valor basado en una seleccin en el cuadro de lista,
el cuadro de lista es dependiente. (Observe que el valor del NombreProveedor de la tabla Proveedores se muestra
en el cuadro de lista pero no se almacena.)
Si, por otra parte, desea utilizar el valor seleccionado en el cuadro de lista o cuadro combinado para determinar
el contenido de otro control o controles, necesita crear un cuadro de lista o cuadro combinado independiente. Por
ejemplo, puede desear crear un cuadro de lista o cuadro combinado que pueda utilizar para buscar un registro
relacionado en un formulario. O puede desear crear un cuadro de lista o cuadro combinado para filtrar los regis-
tros en otro cuadro de lista o cuadro combinado.
GUIA ACCESS 65
Crear un cuadro de lista dependiente o cuadro combinado que muestre valores fijos:
Cree un Campo de bsqueda en la vista Diseo de la tabla.:
Para insertar el campo dentro de la tabla, haga clic en la fila situada debajo del lugar donde desea agregar el
campo y, a continuacin, haga clic en Insertar filas en la barra de herramientas.
Para agregar el campo al final de la tabla, haga clic en la primera fila en blanco.
En la columna Nombre del campo, escriba el nombre del campo siguiendo las reglas para nombrar objetos de
Access.
En la columna Tipo de datos, haga clic en la flecha y seleccione Asistente para bsquedas.
En el primer cuadro de dilogo del Asistente para bsquedas, haga clic en la opcin que indica que escribir los
valores que desee.
Haga clic en Siguiente y siga las instrucciones de los restantes cuadros de dilogo del Asistente para bsquedas.
Nota: Cuando se utiliza el Asistente para bsquedas para crear una lista de valores fijos, Access establece de-
terminadas propiedades del campo segn las selecciones realizadas en el asistente. Una vez creado el campo, si
agrega el campo a un formulario, Access copia su definicin al formulario. No tendr que crear el cuadro com-
binado o el cuadro de lista ni su definicin de lista de valores para el formulario. No obstante, si cambia la defi-
nicin del campo de lista de valores de la tabla despus de agregarlo a un formulario, esos cambios no se refle-
jarn en el formulario. Para corregir esta situacin, elimine el campo del formulario y agrguelo de nuevo.
Nota Puede crear un cuadro de lista o cuadro combinado de bsqueda sin crear un campo de bsqueda, aunque
si crea un campo de bsqueda en la vista Diseo de la tabla, slo necesita crear el cuadro de lista o cuadro com-
binado una vez. Puede entonces utilizar la misma lista de consultas en cualquier formulario. Si no tiene pensado
utilizar la misma lista de bsqueda en ms de un formulario, puede utilizar el Asistente para cuadros de Lista o el
Asistente para cuadros Combinados en la vista Diseo del formulario.
Haga una de las siguientes cosas:
Cree un nuevo formulario basado en un origen de registros que incluya el campo de bsqueda que ha
creado en el paso 1. Access crea de forma automtica el cuadro de lista o cuadro combinado de bsqueda.
Abra un formulario existente basado en un origen del registro que incluya el campo de bsqueda que ha
creado en el paso 1. En la vista Diseo del formulario, haga clic en Lista de campos en la barra de herramientas
para presentar la lista de campos y, a continuacin, arrastre el campo de bsqueda desde la lista de campos al
formulario. Access crea de forma automtica el cuadro de lista o cuadro combinado de bsqueda.
Crear un cuadro de lista o cuadro comb. dependiente que muestre los valores de una tabla o consulta:
Cree un Campo de bsqueda en la vista Diseo de la tabla. Debe definir la lista de campos de la bsqueda en una
tabla que contendr la clave exterior. Por ejemplo, si desea crear un campo de bsqueda para la tabla Proveedo-
res en un formulario Productos, defina el campo de bsqueda en la tabla Productos.
Haga una de las siguientes cosas:
Cree un nuevo formulario basado en un origen del registro que incluye el campo de bsqueda que ha
creado en el paso 1. Access crea de forma automtica el cuadro de lista o cuadro combinado de bsqueda.
Abra un formulario existente basado en un origen del registro que incluya el campo de bsqueda que ha
creado en el paso 1. En la vista Diseo del formulario, haga clic en Lista de campos en la barra de herramientas
para presentar la lista de campos y, a continuacin, arrastre el campo de bsqueda desde la lista de campos al
formulario. Access crea automticamente el cuadro de lista o cuadro combinado de bsqueda.
Cuando utilice un asistente para crear un cuadro de lista o cuadro combinado basado en una tabla o consulta,
Access crear una instruccin SQL basada en los campos que ha seleccionado y establecer la propiedad Ori-
genDeLaFila del control a esa instruccin SQL. Si el cuadro de lista o cuadro combinado no est ordenado en el
orden que el usuario desea, es posible modificar la instruccin SQL haciendo clic en el botn Generar cercano a
la propiedad OrigenDeLaFila.
Crear un cuadro de lista o cuadro combinado independiente que muestre valores fijos:
Asegrese de que la herramienta Asistente para controles est presionada en el cuadro de herramientas.
Haga clic en la herramienta Cuadro de lista o en la herramienta Cuadro combinado en el cuadro de herramien-
tas.
En el formulario, haga clic en donde desee colocar el cuadro de lista o cuadro combinado.
Siga las instrucciones en los cuadros de dilogo del asistente. Cuando el asistente le pregunte cmo desea obte-
ner los valores de la lista, seleccione la opcin que indica que el usuario escribir los valores que crearn la lista.
Cuando el asistente pregunte si desea guardar los valores o recordarlos para una utilizacin futura, seleccione la
opcin que indica que el usuario los recordar para utilizarlos posteriormente.
Crear un cuadro de lista o cuadro comb. independiente que muestre los valores de una tabla o consulta:
Asegrese de que la herramienta Asistentes para controles est presionada en el cuadro de herramientas.
Haga clic en la herramienta Cuadro de Lista o en la herramienta Cuadro combinado en el cuadro de herramien-
tas. En el formulario, haga clic donde desee colocar la lista.
Siga las instrucciones en los cuadros de dilogo del asistente. Cuando el asistente le pregunte cmo desea obte-
ner los valores de la lista, seleccione la opcin que indica que desea que el cuadro combinado o el cuadro de lista
busque los valores en la tabla o consulta. Cuando el asistente pregunte si desea guardar los valores o recordarlos
para una utilizacin futura, seleccione la opcin que indica que los recordar para utilizarlos posteriormente.
66 FORMULARIOS - MENUS DE VISTA DISEO. Pgs. 155
Nota: Cuando utilice un asistente para crear un cuadro de lista o cuadro combinado basado en una tabla o consul-
ta, Access crear una instruccin SQL basado en los campos que ha seleccionado y establecer la propiedad
OrigenDeLaFila del control a esa instruccin SQL. Si el cuadro de lista o cuadro combinado no est ordenado en
el orden que el usuario desea, es posible modificar la instruccin SQL haciendo clic en el botn Generar cercano
a la propiedad OrigenDeLaFila.
Buscar un registro seleccionando un valor de una lista
En un formulario, puede crear un cuadro de lista o un cuadro combinado que busque un registro cuando selec-
cione un valor de la lista.
1 Abra el formulario en la vista Diseo.
2 Haga clic en Asistentes para controles del cuadro de herramientas si no est presionado.
3 En el cuadro de herramientas, haga clic en Cuadro de lista o en Cuadro combinado
4 En el formulario, haga clic donde desee situar el cuadro de lista o el cuadro combinado.
5 En el primer cuadro de dilogo del asistente, haga clic en la opcin para buscar un registro basndose en
el valor que ha seleccionado en el cuadro de lista o en el cuadro combinado.
6 Siga las instrucciones en los cuadros de dilogo del asistente. En el ltimo cuadro de dilogo, haga clic
en Terminar para mostrar el cuadro de lista o el cuadro combinado en la vista Diseo.
Si desea ver el procedimiento de evento que hace que funcione el cuadro de lista o el cuadro combinado, abra la
hoja de propiedades del cuadro y, a continuacin, haga clic en el botn Generar situado al lado del cuadro de la
propiedad Despus de actualizar (AfterUpdate).
Algunas Propiedades de Cuadro de Lista/Combinado (Datos)
Ver Pg 30, Propiedades de Cuadros de lista o combinados, para resumen.
Propiedades TipoDeOrigenDeLaFila (RowSourceType) y OrigenDeLaFila (RowSource)
Las propiedades TipoDeOrigenDeLaFila (RowSourceType) y OrigenDeLaFila (RowSource) se pueden utilizar
juntas para mostrar a Access cmo suministrar datos a un cuadro de lista, a cuadro combinado o un objeto OLE
no dependiente, como por ejemplo un grfico. Por ejemplo, para mostrar filas de datos en un cuadro de lista
desde una consulta llamada ListaClientes, configure la propiedad RowSourceType del cuadro de lista a Ta-
bla/Consulta y su propiedad OrigenDeLaFila (RowSource) a la consulta llamada ListaClientes.
Valores
La propiedad TipoDeOrigenDeLaFila (RowSourceType) utiliza los siguientes valores.
Valor Descripcin
Tabla/Consulta (Predeterminado) Los datos son de una tabla, consulta o instruccin SQL especificados por el
valor de OrigenDeLaFila(RowSource).
Lista de valores Los datos son una lista de elementos especificados por el valor de OrigenDeLaFi-
la(RowSource).
Lista de campos Los campos son una lista de nombres de campos de una tabla, consulta o instruccin SQL
especificados por el valor de OrigenDeLaFila(RowSource).
Nota La propiedad TipoDeOrigenDeLaFila (RowSourceType) se puede tambin establecer con una funcin
definida por el usuario. El nombre de la funcin se introduce sin que le preceda un signo igual (=) y sin que le
siga el par de parntesis. Es necesario suministrar los argumentos de cdigo especficos de la funcin para indi-
car a Access cmo rellenar el control.
El valor de la propiedad OrigenDeLaFila (RowSource) depende del valor de la propiedad TipoDeOrigenDeLaFi-
la (RowSourceType).
Para establecer el valor de
TipoDeOrigenDeLaFila
(RowSourceType)
Introduzca en OrigenDeLaFila (RowSource)
Tabla/consulta Un nombre de tabla, un nombre de consulta o una instruccin SQL.
Lista de valores Una lista de elementos usando puntos y comas (;) como separadores.
Lista de campos Un nombre de tabla, un nombre de consulta o una Instruccin SQL.
Nota Si la propiedad TipoDeOrigenDeLaFila (RowSourceType) se establece a una funcin definida por el
usuario, la propiedad OrigenDeLaFila (RowSource) puede dejarse en blanco.
Las propiedades TipoDeOrigenDeLaFila (RowSourceType) y OrigenDeLaFila (RowSource) se pueden estable-
cer usando la hoja de propiedades del control, con una macro o usando Visual Basic.
Para los campos de tabla, estas propiedades se pueden establecer en la ficha Buscar en la seccin Propiedades del
campo de la vista Diseo de la tabla para los campos estableciendo la propiedad Mostrar control a un cuadro
combinado o cuadro de lista.
Nota Access establece estas propiedades automticamente cuando se selecciona el Asistente para consultas
como el tipo de datos para un campo en la vista Diseo de la tabla.
En Visual Basic, establezca la propiedad TipoDeOrigenDeLaFila (RowSourceType) usando una expresin de
cadena con uno de estos valores: "Tabla/consulta", "Lista de valores" o "Lista de campos". Una expresin de
cadena tambin se usa para establecer el valor de la propiedad OrigenDeLaFila (RowSource). Para establecer la
propiedad TipoDeOrigenDeLaFila (RowSourceType) a una funcin definida por el usuario, introduzca el nom-
bre de la funcin.
GUIA ACCESS 67
Comentarios
Cuando se tiene un nmero limitado de valores que no cambian, se puede establecer la propiedad TipoDeOri-
genDeLaFila (RowSourceType) a Lista de valores y luego introducir los valores que conforman la lista en la
propiedad OrigenDeLaFila (RowSource).
Cuando se crea una funcin definida por el usuario para insertar elementos en un cuadro de lista o cuadro com-
binado, Access llama a la funcin repetidamente para obtener la informacin que necesita. Las funciones Tipo-
DeOrigenDeLaFila (RowSourceType) definidas por el usuario deben ser escritas en un formato de funcin muy
especfico.
Propiedad ColumnaDependiente (BoundColumn)
Al realizar una seleccin en un cuadro de lista o un cuadro combinado, la propiedad ColumnaDependiente
(BoundColumn) indica a Access la columna cuyos valores debe utilizar como valor del control. Si el control
depende de un campo, el valor de la columna especificada por la propiedad ColumnaDependiente (BoundCo-
lumn) se almacena en el campo indicado en la propiedad OrigenDelControl (ControlSource).
Valores
La propiedad ColumnaDependiente (BoundColumn) puede tener los valores siguientes:
Valor Descripcin
0 El valor de la propiedad ListIndex, en lugar del valor de la columna, se almacena en el registro actual.
El valor de la propiedad ListIndex de la primera fila es 0, de la segunda fila es 1, etc. Access establece la pro-
piedad ListIndex cuando se selecciona un elemento de un cuadro de lista o de la parte de cuadro de lista de un
cuadro combinado. El establecimiento de la propiedad ColumnaDependiente (BoundColumn) a 0 y el uso del
valor de la propiedad ListIndex del control pueden resultar tiles si, por ejemplo, slo tiene inters en almacenar
una secuencia de nmeros.
1 mayor (El valor predeterminado es 1). El valor de la columna especificada se convierte en el valor del
control. Si el control depende de un campo, este valor se almacena en ese campo en el registro actual. La propie-
dad ColumnaDependiente (BoundColumn) no puede establecerse a un valor mayor que el valor de la propiedad
NmeroDeColumnas (ColumnCount).
Puede establecer la propiedad ColumnaDependiente (BoundColumn) mediante la hoja de propiedades del con-
trol, una macro o Visual Basic.
Para los campos de tabla, puede establecer esta propiedad en la ficha Bsqueda de la seccin Propiedades del
campo de la vista Diseo de la tabla para los campos cuya propiedad Mostrar control est establecida a Cuadro
combinado o a Cuadro de lista.
Sugerencia Access establece la propiedad ColumnaDependiente (BoundColumn) automticamente al selec-
cionar Asistente para bsquedas como tipo de datos de un campo en la vista Diseo de la tabla.
En Visual Basic, establezca la propiedad ColumnaDependiente (BoundColumn) utilizando un nmero o una
expresin numrica cuyo valor se encuentre entre 0 y el valor de la propiedad NmeroDeColumnas (Column-
Count).
Comentarios
La columna visible ms a la izquierda de un cuadro combinado (la columna situada ms a la izquierda cuyo valor
de la propiedad AnchuraDeColumnas (ColumnWidths) del cuadro combinado no sea 0) contiene los datos que
aparecen en el cuadro de texto que forma parte del cuadro combinado en la vista Formulario o en un informe. La
propiedad ColumnaDependiente (BoundColumn) determina la columna cuyo valor del cuadro de texto o el cua-
dro combinado se almacenar al realizar una seleccin. Esto permite mostrar datos diferentes de los almacenados
como el valor del control.
Nota Si la columna dependiente no es la misma que la columna visible situada ms a la izquierda del control (o
si establece la propiedad ColumnaDependiente (BoundColumn) a 0), la propiedad LimitarALista (LimitToList)
se establece a S.
Access utiliza nmeros basados en cero para hacer referencia a las columnas de la propiedad Columna (Co-
lumn). Es decir, se hace referencia a la primera columna mediante la expresin Column(0); se hace referencia a
la segunda columna mediante la expresin Column(1); etc. No obstante, la propiedad ColumnaDependiente
(BoundColumn) utiliza nmeros basados en 1 para hacer referencia a las columnas. Esto quiere decir que si la
propiedad ColumnaDependiente (BoundColumn) est establecida a 1, puede tener acceso al valor almacenado en
esa columna mediante la expresin Column(0).
Si la propiedad ExpansinAutomtica (AutoExpand) est establecida a S, Access introduce automticamente
un valor en la parte del cuadro de texto del cuadro combinado que coincide con un valor de la lista del cuadro
combinado a medida que el usuario escribe el valor.
Cuadro de lista
Presenta una lista de valores desplazable. En la vista Formulario, se puede seleccionar de la lista para introducir
un valor en un nuevo registro o para cambiar un valor en un registro existente.
Ver Cuadro Combinado.
Botn de comando
Se utiliza para realizar acciones; por ejemplo localizar un registro, imprimir un registro o aplicar un filtro de
formulario.
68 FORMULARIOS - MENUS DE VISTA DISEO. Pgs. 155
Es posible crear su propio botn de comando o puede hacer que Access cree el botn de comando utilizando un
asistente. Un asistente aligera el proceso de crear un botn de comando porque lleva a cabo todo el trabajo de
tipo bsico a realizar por el usuario. Cuando utiliza un asistente, Access le pide informacin y crea un botn de
comando basado en sus respuestas.
Con el Asistente para botones de comando puede crear ms de 30 tipos diferentes de botones de comandos. Por
ejemplo, puede crear un botn de comando que busca un registro, imprime un registro, o aplica un filtro de un
formulario.
Tambin es una buena idea utilizar el Asistente para botones de comando si desea aprender cmo escribir proce-
dimientos de evento. Cuando Access crea un botn de comando con un asistente, crea un procedimiento evento
y lo adjunta al botn. Puede abrir el procedimiento de evento para ver cmo funciona y modificarlo para que se
ajuste a sus necesidades.
Crear un botn de comando sin usar un asistente: (Botn Asistente de Cuadro de Herramientas desactivado)
En el formulario, haga clic donde desee colocar el botn de comando.
Asegrese de que el botn de comando est seleccionado y haga clic en Propiedades para abrir su hoja de pro-
piedades.
En el cuadro de la propiedad AlHacerClic (OnClick), escriba el nombre de la macro o procedimiento de evento
que desee ejecutar cuando se haga clic en el botn, o bien haga clic en el botn Generar para utilizar el Genera-
dor de macros o el Generador de cdigo.
Botn de Comando prop. Al hacer Clic: nombre de Macro o Funcin.
Mejor crear arrastrando la Macro.
Un evento es una accin determinada que se produce en, o con, un objeto particular. Access puede responder a
una variedad de eventos: clics del ratn, cambios en los datos, formularios que se abren o se cierran, y muchos
otros. Los eventos son normalmente el resultado de una accin del usuario.
Usando un procedimiento de evento o una macro, se pueden agregar respuestas personalizadas a un evento que
se produzca en un formulario, informe, o control.
Suponga que desea que un formulario Detalles de producto se abra cuando haga clic en un botn de comando
Detalles de producto en un formulario Pedidos. Los siguientes ejemplos muestran cmo hacer esto usando un
procedimiento de evento o usando una macro.
Responder al evento Al hacer clic usando un procedimiento de evento:
Cuando se crea un procedimiento de evento para un objeto, Access agrega una plantilla de procedimiento de
evento nombrada para el evento y el objeto al mdulo de formulario o mdulo de informe. Todo lo que necesita
hacer es agregar cdigo que responda de la forma que desee cuando se produzca el evento en el formulario o
informe.
Responder al evento Al hacer clic usando una macro:
Para hacer que se ejecute una macro en respuesta a un evento, abra la hoja de propiedades para el formulario,
informe, o control. Busque la propiedad que corresponda al evento, y establzcala a la macro que desee ejecutar.
Si desea presentar texto en el botn de comando, escriba el texto en el cuadro de la propiedad Ttulo (Caption).
Si no desea texto en el botn, puede utilizar en su lugar una imagen.
Sugerencia Tambin puede crear un botn de comando que ejecute una macro arrastrando la macro desde la
ventana Base de datos a la vista Diseo del formulario.
Crear un botn de comando para abrir y sincronizar, cerrar o imprimir un formulario:
1 Abra un formulario en la vista Diseo del formulario.
2 Haga clic en la herramienta Asistentes para controles en el Cuadro de herramientas si no est ya presio-
nada.
3 En el Cuadro de herramientas, haga clic en la herramienta Botn de comando .
4 En el formulario, haga clic en donde desee colocar el botn de comando.
5 En el primer cuadro de dilogo del asistente, haga clic en Operaciones con formularios en el cuadro de
Categoras, y a continuacin haga clic en el tipo de botn que desee crear en el cuadro Acciones.
6 Siga las instrucciones de los cuadros de dilogo del asistente. En el ltimo cuadro de dilogo, haga clic
en Terminar para presentar el botn de comando en la vista Diseo.
Si desea ver el procedimiento de evento que pone en funcionamiento al botn, haga clic en el botn Generar en
la propiedad AlHacerClic (OnClick) del botn de comando.
I magen
Se utiliza para presentar una imagen esttica en un formulario o informe. Dado que una imagen esttica no es un
objeto OLE, no se puede modificar la imagen dentro de Access una vez que ha sido incluida en un formulario o
informe.
En el cuadro de dilogo Insertar imagen, haga clic en el nombre de archivo cuya imagen desea agregar. Podra
necesitar utilizar el cuadro Buscar en para especificar la unidad y la carpeta donde se encuentra la imagen.
Access crea un control de imagen y presenta la imagen en el control.
Nota: Puede ajustar el tamao y proporciones de un objeto despus de que lo haya pegado (Propiedades).
Recortar. Presenta la imagen con su tamao real. Si la imagen es mayor que el rea dentro de los
mrgenes, la imagen se recorta.
GUIA ACCESS 69
Extender. Hace la imagen del tamao del rea dentro de los mrgenes. Esto puede distorsionar la ima-
gen.
Zoom. Presenta la imagen entera despus de cambiarle el tamao para ajustar o bien el alto o bien el an-
cho al rea de los mrgenes. Esta opcin no distorsiona la imagen.
Cuando agrega una imagen a un control de imagen, Access inserta la imagen de modo predeterminado. Cuando
se inserta una imagen forma parte del archivo de base de datos. Si piensa utilizar la misma imagen en varios
formularios e informes, es posible que desee vincular la imagen en lugar de insertarla. Cuando vincula una ima-
gen, slo guarda la imagen una vez. Para vincular una imagen, establezca la propiedad TipoDeImagen para el
control de imagen a Vinculado.
Agregar una imagen u otro objeto a un formulario o informe:
Es posible agregar objetos o partes de objetos que haya creado en otras aplicaciones a un formulario o informe
de Access. Por ejemplo, puede agregar una imagen que haya creado con Paint, una hoja de clculo que haya
creado con Excel, o un documento Word que haya creado con Word. Puede agregar toda la informacin de un
archivo o solamente determinada informacin seleccionada.
Cmo agregar una imagen o un objeto depende de si desea que el objeto sea dependiente o independiente. Un
objeto dependiente se guarda en una tabla. Cuando se mueva a un nuevo registro, el objeto presentado en el
formulario o informe cambia. Por ejemplo, es posible querer guardar una foto de cada uno de los empleados de
su compaa. Un objeto independiente, por su parte, se guarda en el diseo del formulario o del informe. Cuando
se mueve a un nuevo registro, el objeto no cambia. Por ejemplo, se puede agregar un logotipo que ha creado con
Paint a un formulario o informe.
Marco de objeto independiente
Se utiliza para presentar un objeto OLE independiente, como una hoja de clculo de Excel, en un formulario o
informe. El objeto permanece constante mientras usted se desplaza de registro en registro.
Es posible agregar objetos o partes de objetos que haya creado en otras aplicaciones a un formulario o informe
de Access. Por ejemplo, puede agregar una imagen que haya creado con Paint, una hoja de clculo que haya
creado con Excel, o un documento Word que haya creado con Word. Puede agregar toda la informacin de un
archivo o solamente determinada informacin seleccionada.
Cmo agregar una imagen o un objeto depende de si desea que el objeto sea dependiente o independiente. Un
objeto dependiente se guarda en una tabla. Cuando se mueva a un nuevo registro, el objeto presentado en el
formulario o informe cambia. Por ejemplo, es posible querer guardar una foto de cada uno de los empleados de
su compaa. Un objeto independiente, por su parte, se guarda en el diseo del formulario o del informe. Cuando
se mueve a un nuevo registro, el objeto no cambia. Por ejemplo, se puede agregar un logotipo que ha creado con
Paint a un formulario o informe.
I nsertar un objeto independiente existente
Abra un formulario en la vista Diseo o un informe en la vista Diseo.
Sobre el formulario o informe, haga clic donde desee insertar el objeto.
En el cuadro de dilogo Insertar Objeto, haga clic en Crear desde archivo, y especifique la ruta de acceso del
archivo. Si no conoce la ruta de acceso, puede hacer clic en Examinar.
Seleccione la opcin Mostrar como icono si desea que el objeto aparezca como un icono en vez de como el pro-
pio objeto. Mostrar como icono un objeto puede ser til cuando el objeto contiene informacin adicional que no
tiene que ser presentada. Mostrar como icono un objeto utiliza menos espacio en disco.
Si la aplicacin que est copiando permite editar el objeto OLE utilizando arrastrar y soltar, puede arrastrar el
archivo directamente desde el Explorador de Windows o desde el escritorio en vez de utilizar la herramienta
Marco de objeto independiente.
En muchos casos, se editar un objeto independiente en la vista Diseo del formulario o informe. Si desea poder
editar tambin el objeto en la vista Formulario, establezca la propiedad Activado (Enabled) del marco de objeto
independiente a S y la propiedad Bloqueado (Locked) a No.
Marco de objeto dependiente
Se utiliza para mostrar los objetos OLE; por ejemplo una serie de imgenes, en un formulario o informe. Este
control es para objetos almacenados en un campo del origen de registros base del formulario o informe. A medi-
da que se desplaza de registro en registro, se presenta un objeto diferente en el formulario o informe.
Agregar un objeto dependiente a un formulario o informe:
Puede agregar un objeto dependiente a un formulario o informe como un objeto insertado o como un objeto
vinculado.
Cuando inserta un objeto en un formulario o informe, Access guarda el objeto en su archivo de base de datos. Si
modifica un objeto desde su formulario o informe, el objeto se cambia en su base de datos. Por esta razn, un
objeto insertado est siempre disponible.
Cuando vincula un objeto, puede ver y modificar el objeto desde su formulario o informe, pero los cambios se
almacenan en el archivo original del objeto, no en su archivo de la base de datos. Tambin puede modificar el
archivo del objeto de forma separada y hacer que los ltimos cambios le aparezcan la prxima vez que abra el
formulario o informe. La vinculacin de un objeto es muy til para los archivos muy grandes que no desea in-
cluir en su base de datos, y para los archivos que desee utilizar en varios formularios e informes, aunque si un
archivo de objeto vinculado es movido, tiene que reconectar el vnculo de nuevo.
70 FORMULARIOS - MENUS DE VISTA DISEO. Pgs. 155
I nsertar un objeto dependiente existente
Si todava no lo ha hecho, cree un marco de objeto dependiente en un formulario.
Cambie a la vista Formulario o la vista Hoja de datos.
Muvase al registro en el que desea insertar el objeto y haga clic en el campo del objeto OLE.
En el men Insertar, haga clic en Objeto.
En el cuadro de dilogo Insertar Objeto, haga clic en Crear desde archivo y, a continuacin, especifique una ruta
de acceso hacia el archivo. Si no conoce la ruta de acceso, haga clic en Examinar.
Seleccione la casilla de verificacin Vincular, si desde vincularlo.
Seleccione la opcin Mostrar como icono si desea que el objeto aparezca como un icono en vez de como el pro-
pio objeto. Mostrar como icono un objeto puede ser til cuando el objeto contiene informacin adicional que no
tiene que ser presentada. Mostrar como icono un objeto utiliza menos espacio en disco.
Haga clic en Aceptar.
Si se encuentra en la vista Formulario, Access presenta el objeto. Si se encuentra en la vista Hoja de datos,
Access presenta el nombre del objeto, por ejemplo, "Imagen de mapa de bits".
Si necesita editar el objeto, haga doble clic en l.
Nota: Si la aplicacin que est copiando admite la edicin de OLE de arrastrar y soltar, puede arrastrar el archivo
directamente desde el Explorador de Windows o desde el escritorio en vez de utilizar el comando Objeto.
Puede ajustar el tamao y proporciones de un objeto despus de que lo haya pegado
Tambin puede insertar un objeto dependiente en una hoja de datos de una tabla o consulta.
Salto de pgina
Se utiliza para comenzar una nueva pantalla en un formulario, una nueva pgina en un formulario impreso o una
nueva pgina de un impreso.
Crear un formulario con ms de una pgina (pantalla)
Haga clic en el formulario en el lugar donde desea situar el fin de pgina. Site el fin de pgina por encima o por
debajo de un control para evitar cortar los datos de ese control.
Access marca el fin de pgina en el borde izquierdo del formulario con una pequea lnea de puntos.
Nota: Si desea que todas las pginas tengan el mismo tamao y que cada ventana muestre solamente una pgi-
na, disee el formulario de modo que los fines de pgina estn a la misma distancia unos de otros. Para ello, site
los controles de fin de pgina mediante la regla vertical.
Haga doble clic en el selector de formularios para abrir la hoja de propiedades y, a continuacin, haga clic en
Pgina activa en el cuadro de la propiedad Ciclo (Cycle). Cuando la propiedad Ciclo (Cycle) est establecida a
Pgina activa, no se puede presionar la tecla TAB para desplazarse entre pginas.
Quite la barra de desplazamiento vertical estableciendo la propiedad BarrasDeDesplazamiento (ScrollBars) a
Slo horizontal o a Ninguna.
Cambie a la vista Formulario para probar el formulario y cambiar su tamao de modo que, cada vez, slo pueda
ver una pgina. Puede presionar las teclas RE PG o AV PG para desplazarse por las pginas.
Nota: Es posible que tambin desee establecer otras propiedades en la vista Diseo. Por ejemplo, puede que
desee establecer la propiedad EstiloDeLosBordes (BorderStyle) a Fino para que no se permita cambiar el tamao
del formulario y tambin es posible que desee establecer la propiedad BotonesMinMax (MinMaxButtons) a
Ninguno para que el formulario no presente botones Minimizar y Maximizar. Adems, cabe la posibilidad de
que desee agregar un botn de comando a cada pgina que pueda utilizarse para mover el enfoque a la pgina
siguiente o a la pgina anterior. Para ver un ejemplo de este tipo de botn de comando, vea el formulario Em-
pleados de la base de datos de ejemplo Neptuno.
Un fin de pgina est activo en la vista Formulario slo cuando la propiedad PresentacinPredeterminada (De-
faultView) del formulario tiene el valor Formulario simple.
Para los formularios utilizados en la vista Formulario, el fin de pgina marca hasta dnde se desplazar el formu-
lario al presionar RE PG o AV PG. En los formularios impresos, el fin de pgina marca el principio de una
nueva pgina dentro de una seccin. Para empezar una pgina al principio de una seccin, utilice la propiedad
ForzarNuevaPgina (ForceNewPage) de la seccin.
Control ficha
Utilice este control para crear un formulario con fichas de varias pginas (como el formulario Empleados de la
base de datos Neptuno) o un cuadro de dilogo con fichas (como el cuadro de dilogo Opciones del men
Herramientas). Puede copiar o agregar otros controles a un control ficha. Haga clic con el botn secundario del
ratn en el control Ficha de la cuadrcula de diseo para modificar el nmero de pginas, el orden de las pginas,
las propiedades de la pgina seleccionada y las propiedades del control ficha seleccionado.
En el cuadro de herramientas, haga clic en la herramienta Control ficha y, a continuacin, haga clic en el formu-
lario en el que desea situar el control.
Access agrega un control ficha con dos pginas. La primera pgina se encuentra en la parte superior.
Para agregar controles al control ficha, haga clic en la ficha de la pgina a la que desea agregar los controles. A
continuacin, agregue los controles mediante uno de los mtodos siguientes:
Haga clic en Lista de campos en la barra de herramientas para mostrar la lista de campos y arrastre
uno o ms campos a la pgina de la ficha.
GUIA ACCESS 71
Haga clic en una herramienta del cuadro de herramientas y haga clic en la pgina de la ficha. Puede
agregar cualquier tipo de control excepto otro control ficha.
Copie controles de otra parte del formulario o de otra pgina (sin embargo, no es posible arrastrar con-
troles de otra parte de un formulario o de otra pgina).
stas son otras operaciones que quiz desee realizar:
Para cambiar el nombre de una ficha, haga doble clic en la pgina que desea cambiar para abrir su hoja
de propiedades y especifique un nuevo nombre en la propiedad Ttulo (Caption). Si no especifica un nombre en
la propiedad Ttulo (Caption), Access utiliza el valor de la propiedad Nombre (Name).
Para agregar, eliminar o cambiar el orden de las fichas, haga clic en el borde del control ficha con el
botn secundario del ratn (ratn) y, a continuacin, haga clic en Insertar pgina, Eliminar pgina u Orden de las
pginas.
Para cambiar el orden de tabulacin de los controles de una pgina, haga clic en la pgina con el botn
secundario del ratn y haga clic en Orden de tabulacin.
Para cambiar el nombre de la fuente, el tamao de la fuente, etc., de las pginas, haga doble clic en el
borde del control ficha para abrir su hoja de propiedades y a continuacin establezca las propiedades correspon-
dientes. No es posible especificar configuraciones diferentes para cada pgina.
Ajuste el tamao del control ficha segn sea apropiado. Haga clic en cada ficha para asegurarse de que todos los
controles caben en ella.
Nota: Access no recorta los controles al ajustar el tamao del control ficha. Es posible que tenga que mover los
controles para poder reducir el tamao del control ficha.
Subformulario/Subinforme
Se utiliza para presentar los datos procedentes de ms de una tabla en un formulario o informe.
Crear un formulario y un subformulario al mismo tiempo:
Antes de utilizar este procedimiento, asegrese de que ha configurado la tabla de relaciones correctamente.
1 En cualquier ventana de Access, haga clic en la flecha situada al lado del botn Nuevo objeto, luego
seleccione Formulario.
2 En el cuadro de dilogo Nuevo formulario, haga doble clic en Asistente para formularios.
3 En el primer cuadro de dilogo del asistente, seleccione de la lista una tabla o una consulta. Por ejem-
plo, para crear un formulario Categoras que presente los productos de cada categora en un subformulario, se-
leccione la tabla Categoras (la parte "uno" de la relacin uno a varios).
4 Haga doble clic en los campos que desee incluir de esta tabla o consulta.
5 En el mismo cuadro de dilogo del asistente, seleccione otra tabla o consulta de la lista. Utilizando el
mismo ejemplo, seleccione la tabla Productos (la parte "varios" de la relacin uno a varios del formulario Cate-
goras de ejemplo).
Nota: Da igual que elija primero una tabla o una consulta.
6 Haga doble clic en los campos que desee incluir de esta tabla o consulta.
7 Cuando haga clic en Siguiente, si ha establecido las relaciones correctamente antes de iniciar el asisten-
te, el asistente preguntar qu tabla o consulta desea ver. Utilizando el mismo ejemplo, que para crear el formu-
lario Categoras, seleccione por Categoras.
8 En el mismo cuadro de dilogo, seleccione la opcin Formulario con subformularios.
9 Siga las indicaciones de los cuadros de dilogo restantes. Cuando seleccione Terminar, Access crea dos
formularios, uno para el formulario principal y el control del subformulario y otro para el subformulario.
Crear un subformulario y agregarlo a un formulario existente:
Antes de utilizar este procedimiento, asegrese de que ha configurado la tabla de relaciones correctamente.
1 Abra en vista Diseo el formulario que desee agregar al subformulario.
2 Asegrese de que la herramienta Asistentes para controles en el cuadro de herramientas est presionada.
3 Haga clic en la herramienta Subformulario/Subinforme del cuadro de herramientas.
4 En el formulario, haga clic en el lugar donde desee colocar el subformulario.
5 Siga las indicaciones de los cuadros de dilogo del asistente.
6 Cuando seleccione Terminar, Access agrega un control de un subformulario al formulario. Tambin
crea un formulario separado que el control del subformulario utiliza para presentar el subformulario.
Agregar un formulario existente a otro formulario tambin existente para crear un formulario con un sub-
formulario:
Antes de utilizar este procedimiento, asegrese de que ha configurado la tabla de relaciones correctamente.
1 Abra el formulario que desee utilizar como el formulario principal en la vista Diseo. Normalmente ser
un formulario basado en una tabla o una consulta en la parte "uno" de una relacin uno a varios.
2 Asegrese de que la herramienta Asistentes para controles est presionada en el cuadro de herramientas.
3 Presione F11 para pasar a la ventana Base de datos.
4 Arrastre un formulario o una hoja de datos de la ventana Base de datos al formulario principal.
Access agrega un control de un subformulario al formulario. Si ha arrastrado un formulario presentado en la
vista Formulario, Access presenta el subformulario en esa vista. Si ha arrastrado un hoja de datos, Access
muestra el subformulario como una hoja de datos.
Vincular un formulario principal y un subformulario
72 FORMULARIOS - MENUS DE VISTA DISEO. Pgs. 155
Si crea un subformulario con el Asistente para formularios o con el Asistente para subformularios y subinformes,
Access vincula automticamente el formulario principal con el subformulario segn ciertas condiciones. Si el
formulario principal y el subformulario no satisfacen estas condiciones, puede utilizar este procedimiento para
vincularlos.
1 Abra el formulario principal en la vista Diseo.
2 Asegrese de que el control del subformulario est seleccionado, y luego haga clic en Propiedades en
la barra de herramientas para presentar la hoja de propiedades del control del subformulario.
3 En el cuadro de la propiedad Vincular campos secundarios (LinkChildFields), introduzca el nombre del
campo de vinculacin del subformulario. Si no est seguro de qu es un campo de vinculacin, haga clic en el
botn Generar para abrir el Vinculador de campos de subformularios y subinformes. Para introducir ms de un
campo de vinculacin, separe los nombre de los campos con puntos y comas (;). Si introduce ms de un campo
de vinculacin, debe introducir los campos en el mismo orden en las propiedades Vincular campos secundarios
(LinkChildFields) y Vincular campos principales (LinkMasterFields).
Nota No puede utilizar el nombre de un control en la propiedad VincularCamposSecundarios (LinkChild-
Fields).
4 En el cuadro de la propiedad Vincular campos principales (LinkMasterFields) introduzca el nombre del
campo de vinculacin en el formulario principal. Si no est seguro de qu es un campo de vinculacin, haga clic
en el botn Generar para abrir el Vinculador de campos de subformularios y subinformes. Para introducir ms de
un campo de vinculacin, separe los nombre de los campos con puntos y comas (;). Si introduce ms de un cam-
po de vinculacin, debe introducir los campos en el mismo orden en las propiedades Vincular campos secunda-
rios (LinkChildFields) y Vincular campos principales (LinkMasterFields).
Notas
Los campos de vinculacin no han de aparecer en el formulario principal ni en el subformulario, pero se
han de incluir en el origen de registros base. Si utiliza el Asistente para formularios al crear el subformulario;
Access incluye automticamente los campos de vinculacin en el origen de registros base incluso, si no los elige
en el asistente.
Los campos de vinculacin deben tener el mismo o un tipo compatible de tipo de datos o tamao de
campo. Por ejemplo, un campo Autonumrico es compatible con un campo numrico cuya propiedad Tamao
del campo est establecida a Entero largo.

Ejemplo (diseo) de Formulario con datos en primer ejemplo de Consulta en Pg 37.



Para obtener una sola Seccin y sus totales, segn el Pie del formulario anterior:



Formulario con Botones de alternar en un Cuadro de opciones en que en sus Propiedades, en ficha Eventos, En
evento Al hacer clic, ejecuta la macro "Ver Botones" (ver imagen siguiente).
El Cuadro de texto independiente se utiliza como Variable de memoria con valor predeterminado 0 y nombre
ABIERTOS.
GUIA ACCESS 73


El Subformalario 12 es para mostrar el Total General (todas las Secciones) a partir del segundo ejemplo de
Consulta en Pg 37 y el diseo es:


Vista completa:

74 FORMULARIOS - MENUS DE VISTA DISEO. Pgs. 155

Algunas Propiedades de Subformulario/Subinforme (Datos)
Propiedad ObjetoOrigen (SourceObject)
Use la propiedad ObjetoOrigen (SourceObject) para identificar el formulario o informe origen del subformulario
o subinforme de un formulario o informe. Tambin puede usar esta propiedad con marcos de objeto independien-
tes vinculados para determinar la ruta completa y el nombre del archivo que contiene los datos vinculados al
marco de objeto.
Valores
Introduzca el nombre del formulario o informe origen del subformulario en la hoja de propiedades del control. Si
agrega un subformulario o subinforme a un formulario o informe arrastrndolo desde la ventana Base de datos,
la propiedad se establecer automticamente en la hoja de propiedades.
Para los marcos de objeto independientes, la propiedad ObjetoOrigen (SourceObject) se establece automtica-
mente al utilizar el comando Objeto del men Insertar para insertar un objeto OLE.
Para un subformulario o subinforme, puede establecer esta propiedad utilizando la hoja de propiedades del con-
trol, una macro o Visual Basic.
En Visual Basic, esta propiedad se establece usando una expresin de cadena que contiene el nombre de un for-
mulario o informe.
Para los marcos de objeto independientes vinculados, la propiedad ObjetoOrigen (SourceObject) no se puede
establecer en ninguna vista.
Nota No se puede establecer o modificar la propiedad ObjetoOrigen (SourceObject) en los eventos Open o
Format de un informe.
Comentarios
Si elimina el valor de la propiedad ObjetoOrigen (SourceObject) en la hoja de propiedades de un subformulario
o subinforme, el control permanecer en el formulario pero ya no estar vinculado al formulario o informe ori-
gen.
Propiedades VincularCamposSecundarios (LinkChildFields) y VincularCamposPrincipales (LinkMaster-
Fields)
Use conjuntamente las propiedades VincularCamposSecundarios (LinkChildFields) y VincularCamposPrincipa-
les (LinkMasterFields) para especificar cmo Access vincula los registros de un formulario o informe con los
registros de un subformulario, subinforme u objeto incrustado, tales como un grfico. Si se establecen estas pro-
piedades, Access actualiza automticamente el registro vinculado del subformulario al cambiar a un nuevo re-
gistro del formulario principal.
Valores
Puede establecer la propiedades VincularCamposSecundarios (LinkChildFields) y VincularCamposPrincipales
(LinkMasterFields) del subformulario, subinforme u objeto incrustado de la siguiente forma:
La propiedad VincularCamposSecundarios (LinkChildFields) Escriba el nombre de uno o ms campos
de vinculacin en el subformulario, subinforme u objeto incrustado.
La propiedad VincularCamposPrincipales (LinkMasterFields): Escriba el nombre de uno o ms campos
o controles de vinculacin en el formulario o informe principales.
Puede utilizar el Vinculador de campos de subformulario/subinforme para establecer estas propiedades eligiendo
el botn Generar a la derecha del cuadro de la propiedad en la hoja de propiedades.
Tambin puede establecer estas propiedades mediante una expresin de cadena en una macro o Visual Basic.
Slo es posible establecer estas propiedades en la vista Diseo o durante el evento Open de un formulario o
informe.
Comentarios
No es necesario que tengan el mismo nombres los campos o controles que use para establecer estas propiedades,
pero han de contener la misma clase de datos y tener el mismo (o compatible) tipo de datos y tamao de campo.
Por ejemplo, un campo AutoNumrico es compatible con un campo Numrico si la propiedad Tamao del cam-
po del campo numrico es Entero largo.
Puede usar el nombre de un control (incluso el nombre de un control calculado) para establecer la propiedad
VincularCamposPrincipales (LinkMasterFields), pero no puede usar el nombre de un control para la propiedad
VincularCamposSecundarios (LinkChildFields). Si desea usar un valor calculado como el vnculo para un sub-
formulario, subinforme u objeto incrustado, defina un campo calculado en la consulta base del objeto secundario
y establezca la propiedad VincularCamposSecundarios (LinkChildFields) a ese campo.
Cuando especifique ms de un nombre de campo o control para el valor de estas propiedades, ha de introducir el
mismo nmero de campos o controles para ambas propiedades y separar los nombres con un punto y coma (;).
Al crear un subformulario o subinforme arrastrando un formulario o informe desde la ventana Base de datos a
otro formulario o informe o usando el Asistente para formularios, Access automticamente establece las propie-
dades VincularCamposSecundarios (LinkChildFields) y VincularCamposPrincipales (LinkMasterFields) bajo las
condiciones siguientes:
Tanto el formulario o informe principal como el objeto secundario se basan en tablas y se ha definido
una relacin entre estas tablas con el comando Relaciones. Access utiliza los campos que relacionan las dos
tablas como los campos de vinculacin.
GUIA ACCESS 75
El formulario o informe principal se basa en una tabla con una clave principal y el subformulario o
subinforme se basan en una tabla o consulta que contiene un campo con el mismo nombre y el mismo tipo de
datos (o compatible) que la clave principal. Access usa la clave principal de la tabla base del objeto principal y
el campo con el mismo nombre de la tabla o consulta base del objeto secundario como campos de vinculacin.
Nota Los campos de vinculacin no han de estar includos en el objeto principal o en el objeto secundario. Es
suficiente con que estn en las tablas o consultas base de los objetos, para que se puedan usar para vincular los
objetos. Si se usa un asistente, Access incluye automticamente los campos de vinculacin.
Lnea:
Se utiliza en un formulario o informe, por ejemplo, para dar nfasis a la informacin relacionada o especialmente
importante.
Dibujar una lnea en un formulario o un informe:
1 Abra un formulario en la vista Diseo o un informe en la vista Diseo.
2 Haga clic en la herramienta Lnea en el cuadro de herramientas.
3 Haga clic en cualquier parte del formulario o informe para crear una lnea de tamao predeterminado o
bien haga clic y arrastre el ratn (ratn) para crear una lnea del tamao que desee.
Nota: Para dibujar lneas horizontales o verticales, haga clic en la herramienta Lnea y, a continuacin, arrastre
el ratn para crear la lnea. Para realizar pequeos ajustes en la longitud o el ngulo de una lnea, seleccione la
lnea, mantenga presionada la tecla MAY y presione una de las teclas de direccin. Para efectuar pequeos ajus-
tes en la ubicacin de una lnea, mantenga presionada la tecla CTRL y presione una de las teclas de direccin.
Para cambiar el grosor de una lnea, seleccione la lnea, haga clic en la flecha situada junto al botn Ancho de
lnea o de borde en la barra de herramientas Formato y, a continuacin, seleccione el grosor de lnea que desee.
Para cambiar el estilo de lnea (puntos, guiones, etc.) de una lnea, seleccione la lnea, haga clic en Propiedades
en la barra de herramientas para abrir la hoja de propiedades y, a continuacin, seleccione un estilo de borde en
el cuadro de la propiedad EstiloDeLosBordes (BorderStyle).
Seleccionar lnea y elegir Duplicar varias veces para crear lneas iguales (Ej.: lneas para escribir a mano)
Si necesario, utilizar Formato (Alinear). Para 3-D: Propiedades, Formato, Estilo Especial.
Rectngulo
Se utiliza para crear efectos grficos, como agrupar un conjunto de controles de un formulario o resaltar los datos
importantes de un informe.
Dibujar un rectngulo en un formulario o un informe:
1 Abra un formulario en la vista Diseo o un informe en la vista Diseo.
2 Haga clic en la herramienta Rectngulo en el cuadro de herramientas.
3 Haga clic en cualquier parte del formulario o informe para crear un rectngulo de tamao predetermina-
do o arrastre el ratn (ratn) para crear un rectngulo del tamao que desee.
Nota: Para cambiar el grosor del borde de un rectngulo, seleccione el rectngulo, haga clic en la flecha situada
junto al botn Ancho de lnea o de borde en la barra de herramientas Formato y, a continuacin, seleccione el
grosor que desee. Para cambiar el estilo de lnea (puntos, guiones, etc.) de un rectngulo, seleccione el rectngu-
lo, haga clic en Propiedades en la barra de herramientas para abrir la hoja de propiedades y, a continuacin,
seleccione un estilo de borde en el cuadro de la propiedad EstiloDeLosBordes (BorderStyle).
Cambiar las propiedades predeterminadas de un tipo de control
Cada tipo de control tiene un conjunto predeterminado de propiedades que determina la apariencia general y el
comportamiento de ese tipo de control. Por ejemplo, las propiedades predeterminadas de un cuadro de texto
determinan el tamao y la fuente del cuadro de texto y si tiene una etiqueta adjunta. Este conjunto de propieda-
des del control se denomina "estilo de control predeterminado". Es posible que desee cambiar el estilo de control
predeterminado de un tipo de control si observa que a menudo hace los mismos cambios en ese tipo de control
despus de agregarlo a un formulario o un informe.
Por ejemplo, suponga que no desea crear etiquetas para los cuadros de texto que agrega a un nuevo formulario.
En lugar de eliminar la etiqueta cada vez que crea un cuadro de texto, puede cambiar el valor de la propiedad
Etiquetado automtico a No en el estilo de control predeterminado del cuadro de texto.
Una vez que restablece el estilo de control predeterminado de un control, todos los controles posteriores de ese
tipo agregados al formulario o informe activos tendrn esa configuracin de propiedades. El estilo de control
predeterminado se mantiene activo en ese formulario o informe hasta que lo cambie de nuevo.
Cambiar el estilo de control predeterminado de nuevos controles mediante la hoja de propiedades
1 Abra un formulario en la vista Diseo, o un informe en la vista Diseo.
2 En el cuadro de herramientas, elija la herramienta del tipo de control que desea cambiar. Por ejemplo, si
desea cambiar el estilo de control predeterminado de los cuadros de texto, elija la herramienta Cuadro de texto .
3 Presente la hoja de propiedades haciendo clic en Botn Propiedades en la barra de herramientas Diseo
Access cambia la barra de ttulo de la hoja de propiedades para indicar que ha abierto la hoja de propiedades
predeterminada de ese tipo de control.
4 En la hoja de propiedades, cambie los valores de las propiedades.
Cambiar el estilo de control predeterminado de nuevos controles mediante un control existente
1 Abra un formulario en la vista Diseo, o un informe en la vista Diseo.
2 Seleccione el control que tiene las caractersticas que desea usar como caractersticas predeterminadas.
76 FORMULARIOS - MENUS DE VISTA DISEO. Pgs. 155
3 En el men Formato, elija Definir valores predeterminados de los controles.
Access establece las propiedades predeterminadas para ese tipo de control basndose en el control seleccionado.
Sugerencia: Se pueden copiar las caractersticas de formato de un control a otro haciendo clic en Copiar forma-
to en la barra de herramientas. Para obtener ms informacin, haga clic en .
Especificar una nueva plantilla para los formularios e informes
1 En el men Herramientas, haga clic en Opciones.
2 Haga clic en la ficha Formularios/Informes.
3 Escriba el nombre de la nueva plantilla en el cuadro Plantilla para formulario o Plantilla para informe.
Nota: Puede utilizar un formulario o informe ya existente como plantilla, o bien puede crear un formulario o
informe especficamente para que se utilice como plantilla.
4 Haga clic en Aceptar.
Objetos/Controles: Ajustes y Complementos.
Puede cambiar la apariencia de un formulario completo o simplemente de alguna de sus partes.
Para cambiar la fuente, el tamao de fuente y el grosor de lnea para todo el texto y lneas del formulario
al mismo tiempo, haga clic en Autoformato en la barra de herramientas, y a continuacin seleccione un nuevo
autoformato para el formulario.
Para cambiar la apariencia de un control, por ejemplo, un cuadro de texto, haga clic en el control para
seleccionarlo. Despus, en la barra de herramientas Formato, seleccione una fuente distinta, un tamao de fuente
distinto u otra opcin de formato. Para agregar una imagen de fondo a un formulario, en la hoja de propiedades
del formulario, especifique un grfico en el cuadro de la propiedad Imagen o haga clic en el botn Generar que
se encuentra junto al cuadro de la propiedad para abrir el cuadro de dilogo Insertar imagen.
Puede mover controles seleccionados, ajustar su tamao o alinearlos. Para seleccionar un control, por ejem-
plo, un cuadro de texto, haga clic en l. Para seleccionar varios controles, mantenga presionada la tecla MAY
mientras hace clic en cada control. Una vez que el control est seleccionado, moviendo los cuadros de ajuste
lateral modifica el tamao, una mano en control principal lo mueve junto con su etiqueta, un dedo en cuadro
de seleccin mueve slo al control.
Para alinear controles, seleccione los que desea alinear. Despus, seleccione Alinear en el men Formato y haga
clic en Izquierda, Derecha, Arriba, Abajo o A la cuadrcula.
Es posible crear efectos especiales, como por ejemplo texto sombreado, asimtrico, girado y estirado, utilizando
la herramienta WordArt de la barra de herramientas Dibujo.
Los objetos de WordArt son realmente objetos de dibujo, por lo que no se tratan como texto. Al igual que con los
objetos de dibujo, puede utilizar las herramientas de las barras de herramientas WordArt y Dibujo para cambiar
los objetos de WordArt. Por ejemplo, puede cambiar su relleno, estilo de lnea, sombra o efecto 3D. Sin embar-
go, no puede ver el objeto de WordArt en la vista Esquema ni revisar su ortografa.
Si utiliza la herramienta Sombra de la barra de herramientas Dibujo, agregar profundidad a los objetos de dibu-
jo. Para ajustar la posicin de la sombra o cambiar su color, haga clic en Configuracin de sombra y, a conti-
nuacin, utilice las herramientas de la barra de herramientas Configuracin de sombra.
Puede agregar un efecto 3D a las lneas, Autoformas y objetos de forma libre utilizando la herramienta 3D de la
barra de herramientas Dibujo. Con las opciones 3D, puede cambiar la profundidad del objeto de dibujo y su
color, ngulo, direccin de la iluminacin y reflexin de la superficie. Para modificar el efecto 3D de un objeto
de dibujo, haga clic en Configuracin 3D y utilice las herramientas de la barra de herramientas Configuracin
3D.
Se puede agregar una sombra o un efecto 3D a un objeto de dibujo, pero no ambas cosas. Por ejemplo, si aplica
un efecto 3D a un objeto de dibujo que tenga sombra, la sombra desaparece.
Puede utilizar la herramienta Color de relleno de la barra de herramientas Dibujo para rellenar los objetos de
dibujo con un color slido, un degradado, una trama, una textura o una imagen. Para quitar el color de relle-
no o crear un objeto de dibujo transparente, haga clic en la flecha que se encuentra junto a Color de relleno y, a
continuacin, haga clic en Sin relleno.
Al dibujar un objeto, ste aparece automticamente con un borde alrededor una lnea fina que define su forma.
Tambin se pueden agregar bordes a cuadros de texto, imgenes y artes importadas. Puede cambiar o aplicar
formato a los bordes de la misma forma que se hace con las lneas. Para cambiar el grosor de los bordes, utilice
la herramienta Estilo de lnea. La herramienta Tipo de lnea se utiliza para hacer que los bordes sean rayados o
punteados; utilice la herramienta Color de lnea para agregar color a los bordes o quitarlos completamente.
La barra de herramientas Dibujo contiene herramientas que se utilizan para dibujar, manipular y dar formato a
todo tipo de objetos de dibujo. Para ver esta barra de herramientas, haga clic en Dibujo en la barra de herramien-
tas Estndar. Si hace clic en un botn de la barra de herramientas que incluya una flecha triangular, aparecer un
men. Puede mover algunos de estos mens y acercarlos a los objetos de dibujo para poder utilizarlos con mayor
facilidad. Si el men que aparece tiene una barra slida en el borde superior, arrastre la barra para mover el
men.
Utilizando las herramientas de Autoformas de la barra de herramientas Dibujo, podr crear automticamente
una gran variedad de formas.
El men Autoformas contiene varias categoras de formas. Adems de las lneas, incluye formas bsicas, flechas
de bloque, elementos de diagrama de flujo, cintas y estrellas, y llamadas.
GUIA ACCESS 77
Para dibujar una Autoforma, haga clic en Autoformas, seale una categora y haga clic en la forma que desee.
Haga clic en el documento para agregar la forma con su tamao predeterminado o arrstrela para obtener el ta-
mao que desee.Tambin puede transformar una Autoforma en otra. Seleccione la autoforma que desee cambiar,
haga clic en Dibujo en la barra de herramientas Dibujo, seale Cambiar autoforma y seleccione la nueva forma.
Todas las Autoformas tienen controladores de tamao y uno o varios controladores de ajuste. Puede arrastrar
los controladores para cambiar su tamao o forma.
Puede utilizar las herramientas de Lneas del men Autoformas para trazar lneas rectas o curvas, lneas de forma
libre y flechas sencillas o dobles.Para trazar una lnea o una forma libre, haga clic en Autoformas en la barra de
herramientas Dibujo, seale Lneas, haga clic en la herramienta que desee y arrastre el ratn. En caso de que slo
desee trazar una lnea recta, haga clic en Lnea de la barra de herramientas Dibujo.
Puede utilizar las herramientas de formato de la barra de herramientas Dibujo para modificar lneas, curvas y
formas libres. Por ejemplo, puede dar color a las lneas, cambiar su grosor, agregar puntas de flecha o convertir-
las en lneas punteadas o rayadas.
Puede agregar texto a cualquier objeto de dibujo, excepto en las lneas rectas, las formas libres y los conecto-
res, haciendo clic en el objeto y escribiendo el texto. El texto se adjunta y se mueve con el objeto. Si no desea
adjuntar el texto a ningn objeto de dibujo, utilice la herramienta Cuadro de texto de la barra de herramientas
Dibujo. Esta herramienta puede utilizarse para agregar texto a cualquier parte de la pgina, por ejemplo para
crear ttulos para los grficos.


I NFORMES
Un informe es una forma efectiva de presentar los datos en formato impreso. Como tiene control sobre el tamao
y el aspecto de todos los elementos de un informe, puede presentar la informacin en la forma que desee verla.
La mayor parte de la informacin en un informe proviene de una tabla, consulta o instruccin SQL base, que es
el origen de los datos del informe. Otra informacin del informe se almacena en el diseo del informe.
Puede crear un informe usted mismo o hacer que Access cree un informe automticamente mediante un Asisten-
te para Informes. Un asistente para informes acelera el proceso para crear un informe ya que hace todo el trabajo
bsico en su lugar. Cuando usa un asistente para informes, ste le pide informacin y crea un informe basado en
sus respuestas. Aunque haya creado muchos informes, puede que desee utilizar un asistente para organizar rpi-
damente su informe. Despus puede cambiar a la vista Diseo para personalizarlo.
I NFORMES - MENUS EN VI STA PREVI A DI SEO Y PRELI MI NAR.
Includos en Tablas, Vista Hoja de datos.
I NFORMES - MENUS EN VI STA DI SEO.
Includos en Formularios, Vista Diseo excepto:
MENU VER
Vista previa del diseo: Presenta el informe con el aspecto que tendr cuando se imprima, pero utilizando slo
datos de muestra, de forma que pueda echar un vistazo rpido al diseo del informe. La vista previa del diseo
presenta todas las secciones del informe y ordena y agrupa los datos de la seccin de detalle, pero ignora los
criterios y las combinaciones de cualquier consulta base. Tambin se accede a este comando por botn en Ficha
Informes de la ventana Base de Datos, mostrando el informe seleccionado..
Vista preliminar: Muestra el objeto activo, tabla, formulario o informe, tal y como va a aparecer cuando se
imprima (excepto en la ventana Macro, donde presenta primero el Documentador). Puede acercar o alejar una
pgina o ver varias pginas al mismo tiempo.
Ordenar y agrupar: Agrega, elimina o modifica los campos o expresiones por los que agrupar, el orden y las
propiedades de grupo tales como los encabezados y pies.
Encabezado o pie de pgina : Incluye o elimina una seccin de encabezado y una seccin de pie de pgina de
un formulario o informe. Utilice los encabezados de pgina para, por ejemplo, presentar ttulos o encabezados de
columna. Utilice los pies de pgina para, por ejemplo, presentar el nmero de pgina o la fecha.
Encabezado o pie del informe: Presenta o quita las secciones de encabezado o pie del informe. Utilice el enca-
bezado para introducciones que contengan, por ejemplo, texto, imgenes y logotipos. Utilice el pie del informe
para resmenes que contengan, por ejemplo, totales generales.
Crear un informe usando Autoinforme:
Autoinforme crea un informe que presenta todos los campos y registros de la tabla o consulta seleccionada.
1 En la ventana Base de datos, haga clic en la ficha Informes.
2 Haga clic en Nuevo.
3 En el cuadro de dilogo Nuevo informe haga clic en uno de los siguientes asistentes:
Autoinforme: en columnas. Cada campo aparece en una lnea distinta con una etiqueta a su izquierda.
Autoinforme: tabular. Los campos de cada registro aparecen en una lnea y las etiquetas se imprimen
una vez en la parte superior de cada pgina.
4 Haga clic en la tabla o consulta que contiene los datos en los que desea basar su informe.
5 Haga clic en Aceptar.
78 INFORMES - MENUS EN VISTA DISEO. Pgs. 155
Access aplica el ltimo autoformato utilizado en el informe. Si todava no ha utilizado el Asistente para infor-
mes para crear el informe ni ha usado el comando Autoformato en el men Formato, Access utiliza el autofor-
mato estndar.
Sugerencia: Tambin puede crear un informe de una sola columna basado en la tabla o consulta abierta o en la
tabla o consulta seleccionada en la ventana Base de datos. Haga clic en Autoinforme en el men Insertar, o en la
flecha junto al botn Nuevo objeto en la barra de herramientas, y despus en Autoinforme. Los informes creados
con este mtodo slo constan de registros de detalle, pero no incluyen encabezado de informe ni encabezado de
pgina ni pie de pgina.
Crear un informe con un asistente:
1 En la ventana Base de datos, haga clic en la ficha Informes.
2 Elija Nuevo.
3 En el cuadro de dilogo Nuevo Informe, elija el asistente que desea utilizar. Una descripcin del asisten-
te aparece en el lado izquierdo del cuadro de texto.
4 Elija la tabla o consulta que contiene los datos en los que desea basar su informe.
Nota: Access utiliza esa tabla o consulta como el origen de datos predeterminada para el informe. Sin embargo,
puede cambiar el origen de datos del asistente y seleccionar campos de otras tablas y consultas.
5 Haga clic en Aceptar.
6 Si ha hecho clic en Asistente para informes, Asistente para grficos o Asistente para etiquetas en el paso
3, siga las instrucciones de los cuadros de dilogo del asistente. Si ha seleccionado Autoinforme: tabular o Auto-
informe: en columnas, Access crear automticamente el informe.
Si el informe obtenido no tiene el aspecto deseado, puede cambiarlo en la vista Diseo.
Crear un informe sin asistente:
1 En la ventana Base de datos, haga clic en la ficha Informes.
2 Haga clic en Nuevo.
3 En el cuadro de dilogo Nuevo Informe, haga clic en Vista diseo.
4 Elija el nombre de la tabla o consulta que contiene los datos en los que desea basar el informe. (Si desea
un informe independiente, no seleccione nada de esta lista)
Sugerencia: Si desea crear un informe que utilice datos de ms de una tabla, base su informe en una consulta.
5 Haga clic en Aceptar.
Access presenta la ventana Informe en la vista Diseo.
Crear un informe basado en ms de una tabla:
Usar el Asistente para informes es la forma ms sencilla y rpida de crear un informe que combine datos de ms
de una tabla. El Asistente para informes acelera el proceso de crear un informe porque hace todo el trabajo bsi-
co automticamente. En la primera pantalla del Asistente para informes, puede elegir los campos que desea in-
cluir en su informe. Estos campos pueden ser de una tabla o de varias tablas. Cuando utiliza el Asistente para
informes para crear un informe basado en varias tablas, Access crea una consulta detrs del informe. La consulta
incluye la informacin sobre qu tablas y qu campos utilizar.
Si desea crear un informe usted mismo, es posible crear una consulta y basar el informe sobre ella.
Crear un subinforme en un informe existente:
Si el subinforme se va a vincular al informe principal, compruebe que ha configurado correctamente las relacio-
nes de tabla antes de utilizar este procedimiento.
1 Abra el informe que desea utilizar como informe principal en la vista Diseo.
2 Compruebe que la herramienta Asistentes para controles en el cuadro de herramientas est presionada.
3 Haga clic en Subformulario/Subinforme en el cuadro de herramientas.
4 En el informe, haga clic donde desee situar el subinforme.
5 Siga las instrucciones de los cuadros de dilogo del asistente.
Cuando haga clic en el botn Terminar, Access agregar un control de subinforme a su informe. Tambin crear
otro informe que se mostrar como subinforme.
Agregar un informe existente a otro para crear un subinforme
Si el subinforme se va a vincular al informe principal, asegrese de que ha configurado correctamente las rela-
ciones de tabla antes de utilizar este procedimiento.
1 Abra el informe que desea utilizar como informe principal en la vista Diseo.
2 Compruebe que la herramienta Asistentes para controles en el cuadro de herramientas est presionada.
3 Presione F11 para cambiar a la ventana Base de datos.
4 Arrastre un informe o una hoja de datos desde la ventana Base de datos a la seccin del informe princi-
pal donde desea que aparezca el subinforme.
Access agregar un control de subinforme al informe.
Secciones de un informe.
La informacin de un informe puede dividirse en secciones. Cada seccin tiene un propsito especfico y se
imprime en un orden previsible en la pgina y en el informe.
GUIA ACCESS 79
El encabezado del informe aparece una vez al principio de un informe. Se puede usar para elementos como un
logotipo, un ttulo de informe o una fecha de impresin. El encabezado del informe se imprime antes que el
encabezado de pgina en la primera pgina del informe.
El encabezado de pgina aparece en la parte superior de cada pgina del informe. Se usa para mostrar elemen-
tos tales como los encabezados de columna.
Al principio de un nuevo grupo de registros aparece un encabezado de grupo. Se usa para mostrar informacin
que se aplica al grupo como conjunto, tal como un nombre de grupo.
La seccin Detalle contiene el cuerpo principal de los datos de un informe. Esta seccin se repite para cada re-
gistro del origen de registros base del informe.
Al final de cada grupo de registros aparece un pie de grupo. Se usa para mostrar elementos como los totales de
grupo.
El pie de pgina aparece en la parte inferior de cada pgina del informe. Se usa para mostrar elementos tales
como los nmeros de pgina.
El pie del informe aparece una vez al final del informe. Se usa para mostrar elementos tales como los totales de
informe. Es la ltima seccin en el diseo del informe, pero aparece antes del pie de pgina en la ltima pgina
del informe impreso.
Agregar o quitar un encabezado y pie de informe o un encabezado y pie de pgina
Abra el informe en la vista Diseo.
Haga clic en Encabezado o pie del informe o en Encabezado o pie de pgina en el men Ver.
Notas: Slo se pueden agregar un encabezado y pie de pgina como pareja. Si no desea ambos, un encabezado
y un pie de pgina, establezca la propiedad Visible a No para la seccin que no desee. O bien, elimine todos los
controles de la seccin y cambie el tamao de la seccin a un alto igual a cero o estableczca su propiedad Altura
(Height) a 0.
Si elimina un encabezado y pie de pgina, Microsoft Access eliminar tambin los controles del enca-
bezado y pie de pgina.
Crear etiquetas postales y de otros tipos
1 En la ventana Base de datos, haga clic en la ficha Informes.
2 Haga clic en Nuevo.
3 En el cuadro de dilogo Nuevo informe, haga clic en Asistente para etiquetas.
4 Haga clic en la tabla o la consulta que contiene los datos de las etiquetas y, a continuacin, haga clic en
Aceptar.
5 Siga las instrucciones de los cuadros de dilogo del asistente.
Si el informe de etiquetas resultante no tiene el aspecto deseado, podr borrarlo y volver a ejecutar el Asistente
para etiquetas.
El informe Etiquetas de cliente de la base de datos de ejemplo Neptuno muestra tres etiquetas postales a lo an-
cho. Para ver este informe, abra la base de datos Neptuno en la subcarpeta Ejemplos de la carpeta del programa
Office. En la ventana Base de datos, haga clic en la ficha Informes, en Etiquetas de cliente y, por ltimo, en
Diseo.
I nsertar Campo calculado a un registro de un informe
1 Abra el informe en la vista Diseo.
2 Agregue un cuadro de texto a la seccin de detalle.
3 Para ver la hoja propiedades, asegrese de que el cuadro de texto est seleccionado, y luego haga clic en
el botn Propiedades de la barra de herramientas.
4 Haga una de las siguientes cosas:
En el cuadro de la propiedad OrigenDelControl (ControlSource), introduzca una expresin apropiada.
(Ver Pg 41 Expresiones.)
Haga clic en el botn Generar para utilizar el Generador de expresiones para crear la expresin.
Nota: Si un informe est basado en una consulta, puede colocar la expresin en la consulta base del informe.
Puede mejorar el rendimiento del informe y si va a calcular los totales de grupos de registros, es ms fcil utilizar
el nombre de un campo calculado de una funcin agregada (Ver Pg 34, Totales, ALT+ V, T.).
Agrupar los registros en un informe
En un informe se pueden agrupar hasta 10 campos o expresiones.
1 Abra el informe en la vista Diseo.
2 Haga clic en el botn Ordenar y agrupar de la barra de herramientas para mostrar el cuadro Ordenar y
agrupar.
3 Establezca el tipo de orden para los datos del informe.
4 Haga clic en el campo o expresin cuyas propiedades de grupo desee establecer.
5 Establezca las propiedades de grupo en la siguiente lista. Se debe establecer a S o Encabezado del gru-
po o Pie del grupo para crear un nivel de grupo y establecer las dems propiedades de agrupamiento.
Encabezado del grupo. Agrega o elimina un encabezado del grupo para el campo o expresin.
Pie del grupo. Agrega o elimina un pie de grupo para el campo o expresin.
80 INFORMES - MENUS EN VISTA DISEO. Pgs. 155
AgruparEn (GroupOn). Especifica cmo se desean agrupar los valores. Las opciones que se ven depen-
den del tipo de datos del campo por el que se est agrupando. Si se agrupa por una expresin, ver todas las
opciones para todos los tipos de datos.
IntervaloDelGrupo (GroupInterval). Especifica cualquier intervalo que sea vlido para los valores en el
campo o expresin por el que est agrupando.
MantenerJuntos (KeepTogether). Especifica si Access debe imprimir todo o slo parte de un grupo en
la misma pgina.
Nota: El informe Ventas de empleado por pas de la base de datos de ejemplo Neptuno tiene dos niveles de
grupo.
Ordenar los registros en un informe.
En un informe se puede ordenar hasta por 10 campos o expresiones.
1 Abra el informe en la vista Diseo.
2 Haga clic en Ordenar y agrupar en la barra de herramientas para mostrar el cuadro Ordenar y agrupar.
3 En la primera fila de la columna Campo/Expresin, seleccione un nombre de campo o escriba una ex-
presin.
El campo o expresin de la primera fila es el primer nivel de ordenacin (el conjunto mayor). La segunda fila es
el segundo nivel de ordenacin y as sucesivamente.
Cuando se rellena la columna Campo/Expresin, Access establece el tipo de orden a Ascendente. El tipo de
orden ascendente ordena desde la A a la Z o desde 0 a 9.
4 Para cambiar el tipo de orden, seleccione Descendente en la lista Tipo de orden. El orden Descendente
ordena desde la Z a la A o desde 9 a 0.
Nota: El informe Etiquetas de cliente de la base de datos de ejemplo Neptuno ordena los registros por los valo-
res de tres campos.
Calcular un total o promedio para un grupo o para todos los registros de un informe
1 Abra el informe en vista Diseo.
2 Agregue un cuadro de texto calculado a una o ms de las siguientes secciones:
Para calcular un total o promedio de un grupo de registros, agregue un cuadro de texto al encabezado
del grupo o al pie de pgina del grupo.
Para calcular el total general o promedio de todos los registros en el informe, agregue un cuadro de
texto al encabezado del informe o al pie de pgina del informe.
3 Para mostrar la hoja de propiedades, asegrese de que el cuadro de texto est seleccionado, y luego haga
clic en el botn Propiedades de la barra de herramientas.
4 Haga una de las siguientes cosas:
En el cuadro de la propiedad OrigenDelControl (Control Source), introduzca una expresin que utilice
la funcin Suma (Sum) para calcular un total o la funcin Promedio (Avg) para calcular un promedio.
Haga clic en el botn Generar para utilizar el Generador de expresiones para crear la expresin.
El informe Ventas de empleado por pas de la base de datos de ejemplo Neptuno tiene un ejemplo de
totales de grupo y un total general.
Calcular una suma continua de un informe
1 Abra el informe en la vista Diseo.
2 Agregue un cuadro de texto a una o ms de las siguientes secciones:
Para calcular una suma continua que se incrementa por cada registro, agregue un cuadro de texto de-
pendiente o un cuadro de texto calculado a la seccin de detalle.
Para calcular una suma continua que se incrementa por cada grupo de registros, agregue un cuadro de
texto dependiente o un cuadro de texto calculado al encabezado del grupo o al pie de pgina del grupo.
3 Para presentar la hoja de propiedades, asegrese de que el cuadro de texto est seleccionado, y luego
haga clic en el botn Propiedades de la barra de herramientas.
4 Establezca la propiedad SumaContinua (RunningSum) de acuerdo con el tipo de total continuo que
desee:
Sobre grupo. Inicializa a 0 al principio de cada nivel de grupo ms alto.
Sobre todo. Acumula hasta el final del informe.
Notas
Cuando establece la propiedad SumaContinua (RunningSum) a Sobre todo, puede repetir el total gene-
ral en el pie de pgina del informe. Cree un cuadro de texto en el pie de pgina del informe y establezca su pro-
piedad OrigenDelControl (ControlSource) al nombre del cuadro de texto que calcula la suma continua; por
ejemplo, =[CantidadPedido].
Propiedad SumaContinua (RunningSum)
La propiedad SumaContinua (RunningSum) se puede utilizar para calcular los totales registro a registro o grupo
a grupo de un informe. La propiedad SumaContinua (RunningSum) especifica si un cuadro de texto en un infor-
me muestra un subtotal y le permite establecer el intervalo en el que se acumulan los valores. Por ejemplo, puede
agrupar los datos por meses y mostrar la suma de las ventas de cada mes en el pie de pgina del grupo. Se puede
mostrar la suma continua de las ventas acumuladas del informe completo (ventas de Enero en el pi de pgina de
GUIA ACCESS 81
Enero, ventas de Enero ms Febrero en el pi de pgina de Febrero y as sucesivamente) agregando un cuadro de
texto al pie de pgina que muestre la suma de las ventas y configurando su propiedad SumaContinua (Running-
Sum) a Sobre todo.
Nota: La propiedad SumaContinua (RunningSum) slo se aplica a un cuadro de texto en un informe.
Valores: La propiedad SumaContinua (RunningSum) utiliza los siguientes valores:
Valor Descripcin) Visual Basic
No (Predeterminado) El cuadro de texto muestra los datos del campo base para el registro activo. 0
Sobre grupo El cuadro de texto muestra una suma continua de los valores del mismo nivel de grupo. El
valor acumula hasta que se encuentre otra seccin de nivel de grupo. 1
Sobre todo El cuadro de texto muestra una suma continua de valores en el mismo nivel de grupo. El valor
se acumula hasta el final del informe. 2
La propiedad SumaContinua (RunningSum) se puede establecer usando la hoja de propiedades del cuadro de
texto, con una macro o usando Visual Basic. La propiedad SumaContinua (RunningSum) slo se puede estable-
cer en la vista Diseo.
Comentarios: Coloque el cuadro de texto en la seccin de detalles para calcular un total registro a registro. Por
ejemplo, para numerar los registros que aparecen en una seccin de detalles de un informe, establezca la propie-
dad OrigenDelControl (ControlSource) para el cuadro de texto a "=1" y establezca la propiedad SumaContinua
(RunningSum) a Sobre grupo.
Coloque el cuadro de texto en un encabezado de grupo o pie de pgina del grupo para calcular un total grupo a
grupo. Es posible tener hasta 10 niveles de grupos anidados en un informe.
Calcular porcentajes en un informe
1 Abra el informe en la vista Diseo.
2 Agregue los cuadros de texto que calculan el total de registro, el total del grupo y el total general.
3 En la seccin apropiada, agregue el cuadro de texto que calcula el porcentaje.
Para calcular qu porcentaje supone cada elemento en un total de grupo o de total general, coloque el
control en la seccin de detalle.
Para calcular qu porcentaje supone cada grupo de elementos en el total general, coloque el cuadro de
texto en el encabezado del grupo o el pie de pgina del grupo.
Si su informe incluye niveles de grupo mltiples, coloque el cuadro de texto en el encabezado o pie de pgina del
nivel para el que desea que Access le calcule un porcentaje.
4 Para presentar la hoja de propiedades, asegrese de que el cuadro de texto est seleccionado, y luego
haga clic en el botn Propiedades de la barra de herramientas.
5 Haga una de las siguientes cosas:
En el cuadro de la propiedad OrigenDelControl (ControlSource), escriba una expresin que divida el
total ms pequeo por el total mayor del cual el total menor es una parte. Por ejemplo, divida el valor del control
TotalDiario por el valor del control TotalGeneral.
Haga clic en el botn Generar para utilizar el Generador de expresiones para crear una expresin.
6 Establezca la propiedad Formato (Format) del cuadro de texto al valor Porcentaje.
Nota: El informe Resumen de ventas por ao de la base de datos de ejemplo Neptuno tiene un ejemplo de por-
centajes.
Comenzar cada grupo de un informe en una nueva fila o columna
1 Cree un informe de mltiples columnas que tenga al menos un nivel de agrupamiento.
2 En la vista Diseo de informe, haga clic en Configurar pgina en el men Archivo.

3 Haga clic en la ficha Columnas. En Opciones de la cuadrcula, asegrese que Nmero de columnas est
establecido a un valor mayor que 1.
4 En Diseo de columna, realice una de estas acciones:
Para comenzar cada grupo en una nueva columna, haga clic en la opcin Hacia abajo y despus a lo
ancho.
Para comenzar cada grupo en una nueva fila, haga clic en la opcin A lo ancho y despus hacia abajo.
5 Haga clic en Aceptar.
6 Haga doble clic en el selector de seccin para el encabezado o el pie de grupo para mostrar su hoja de
propiedades.
7 Establezca la propiedad NuevaFilaOColumna (NewRowOrCol) a uno de los siguientes valores.
Ninguno (Predeterminado): Los saltos de fila o columna estn determinados por el valor del cuadro de dilogo
Configurar pgina y por el espacio disponible en la pgina.
Antes de la seccin: Access comienza a imprimir la seccin actual (la seccin para la que establece la
propiedad, como el encabezado de grupo) en una nueva fila o columna. Comienza a imprimir la seccin siguien-
te, por ejemplo, la seccin de detalles, en la misma fila o columna.
Despus de la seccin: Access comienza a imprimir la seccin actual, como el encabezado de grupo, en la
fila o la columna actual. Comienza a imprimir la seccin siguiente, por ejemplo una seccin de detalle, en la fila
o la columna siguiente.
82 INFORMES - MENUS EN VISTA DISEO. Pgs. 155
Antes y despus: Access comienza a imprimir la seccin actual, por ejemplo el encabezado de grupo, en una
nueva fila o columna. Comienza a imprimir la seccin siguiente, como la seccin de detalles, en la siguiente fila
o columna.
Nota: El informe Productos por categora de la base de datos de ejemplo Neptuno comienza cada grupo en una
nueva columna.
Ver Pg 98, Ejemplos de macros.
Restablecer nmeros de pgina para cada grupo de un informe
Crear una macro que restablezca nmeros de pgina
1 Cree una macro que utilice la accin EstablecerValor para cambiar la propiedad Pgina a 1.
Decida si el nmero de pgina aparecer en el encabezado o en el pie de pgina y, a continuacin, utilice los
valores siguientes para los argumentos de la accin EstablecerValor.
Ubicacin del nmero de pgina Argumentos de EstablecerValor
Encabezado de pgina Elemento: [Pgina]
Expresin: 0
Pie de pgina Elemento: [Pgina]
Expresin: 1
Guarde y cierre la macro.
Ver Pg 98, Ejemplos de macros.

GUIA ACCESS 83

Gua alfabtica de Macros y Mdulos.
Para Tablas, Consultas, Formularios e Informes, ir al principio con CTRL+INICIO.

Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll Mm Nn
Oo Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz

Macros Mdulos
Para volver a este ndice: ALT+F12

A
Abrir Base de datos con una serie de acciones automticas (Macro Autoexec) Ver Pg 93
Abrir ventana Macro o Mdulo desde formulario o informe Ver Pag 91
Accin de macro, agregar Ver Pag 91 Ver Argumentos de accin.
Accin o una serie de acciones, asignar a una tecla Ver Pg 93
Acciones de macros agrupadas por tarea Ver Pg 92
Acciones de macros, secuencia Ver Pg 91
Actualizacin (modificacin) de registros con QueryDef Ver Pg 144
Agregar inspeccin ALT+D, A
Alternar interrupcin y no interrupcin en errores no tratados y pasar a siguiente instruccin ALT+F5
Alternar interrupcin y no interrupcin en mdulo clase y seguir la ejecucin ALT+F8
Alternar punto de interrupcin (F9) ALT+D, L
Aadir registros Ver Pag 139
Archivo, insertar ALT+I, A
Argumento de accin de macro, introducir una expresin Ver Pg 93
Argumentos de accin en macro, establecer Ver Pg 92
Argumentos Ver Pg 110.
Asistentes (Generadores de macros, cdigo y expresiones) Ver Pg 98
Ayuda contextual en el punto de insercin F1
B
Base de datos, listar tablas, consultas, campos Ver Pg 143
Bloquear datos Ver Pg 143
Borrar todos los puntos de interrupcin (CTRL+MAY+F9) ALT+D, B
Buscar la siguiente aparicin de texto seleccionado CTRL+F3
Buscar o Reemplazar, repetir con cuadro de dilogo cerrado, hacia atrs MAY+F3
Buscar o Reemplazar, repetir con cuadro de dilogo cerrado F3
Buscar registro desde Cuadro combinado/lista con macro Ver Pg 99
Buscar registros en Dynasets y Snapshots (Find) Ver. Pg 139
Buscar registros en Tablas (Seek) Ver Pg 140
Buscar (CTRL+B) ALT+E, B. Buscar siguiente (F3) ALT+E, U
C
Cambiar entre los paneles superior e inferior F6
Campo, establecer valor con macro Ver Pg 99
Campos grandes, manipular Ver Pg 141
Clone, clonar (Copia de Dynaset) Ver Pg 141
Cdigo de procedimiento, presentar (MAY+F2) ALT+V, F
Cdigo o macro, continuar ejecucin F5
Cdigo o macro, restablecer ejecucin MAY+F5
Cdigo o macro, detener la ejecucin CTRL+INTERRUMPIR
Cdigo visible, seleccionar todo en la ventana Mdulo CTRL+A
Cdigo, ejecucin paso a paso Ver Pg 118
Cdigo, ejecucin Ver Pg 109
Cdigo, ejecutar hasta punto de insercin y detener la ejecucin CTRL+F8
Cdigo, restablecer, reiniciar ALT+C, R
Cdigo, solucin de errores Ver Pg 117
Cdigo, suspender ejecucin Ver Pg 117
Cdigo, ver mdulo general de Formulario o Informe Sealar o activar Formulario o Informe y ALT+V, G.
(Informe con ratn). Abrir primera lista (Objeto) para ver sus objetos y la segunda (procedimientos) para
ver los eventos de cada objeto.
Cdigos con Formularios e Informes Ver Pg 131
Compilar mdulos cargados ALT+D, D
Compilar todos los mdulos ALT+D, O
Compilar y guardar todos los mdulos ALT+D, U
Completar palabra (CTRL+BARRA) ALT+E, O
Condiciones de macro Ver Pg 91
84 INFORMES - MENUS EN VISTA DISEO. Pgs. 155
Condiciones de macro, abrir columna ALT+V, C
Constantes Definicin: Ver Pg 109. Ejemplos: Ver Pg 128
Constantes, lista (CTRL+MAY+J) ALT+E, S
Consultas de accin, crear, modificar (variables QueryDef) Ver Pg 144
Consultas de parmetros Ver Pg 147
Consultas de seleccin (dynaset) Ver Pg 136
Continuar la ejecucin de cdigo o de macro F5
Control de errores durante ejecucin Ver Pg 130
Control, hacer visible o no Ver Pg 100
Control, ir para comenzar edicin Ver Pg 99
Control, tipos Ver Pg 135
Controles ActiveX ALT+H, C
Cortar la lnea actual y copiarla al Portapapeles CTRL+Y
Crear macro Ver Pg 89
Cuadro de dilogo emergente modal, abrir con botn para solicitar informacin del usuario Ver Pg 101
Cuadro de dilogo Llamadas CTRL+L
Cuadro de Lista, crear lista con cdigo Ver Pg 132
Cuadro Objeto, enfoque CTRL+F2
Cuadro Procedimiento, enfoque CTRL+F2, TAB
D
DAO (Data Access Object) Ver Pg 110
Datos, bloquear Ver Pg 143
Datos, tratamiento, manipulacin Ver Pg 136
Definicin de macro Ver Macros, Pg 88.
Definicin, presentar cdigo de procedimiento (MAY+F2) ALT+V, F
Depuracin, generalidades Ver Pg 125
Depuracin, panel Inmediato Ver Pg 117
Depuracin, panel Inspeccin Ver Pg 117
Depuracin, panel Locales Ver Pg 117
Depuracin, ventana (CTRL+S) ALT+V, V. Ver Utilizacin, Pg 116.
Depuracin, ventana CTRL+G
Desaparecer la lista ESC
Deshacer CTRL+Z
Detener la ejecucin de cdigo o de macro CTRL+INTERRUMPIR
Do...Loop, instruccin Ver Pg 113
DoCmd, instruccin, ejecutar acciones y macros por cdigo Ver Pg 125
Dynaset, variable Recorset Ver Pg 136
E
Ejecucin de cdigo o de macro, continuar F5
Ejecucin de cdigo o de macro, restablecer MAY+F5
Ejecucin de cdigo Ver Pg 109
Ejecucin de cdigo, suspender Ver Pg 117
Ejecucin, iniciar o continuar (F5) ALT+C, C
Ejecucin, terminar ALT+C, T
Ejecutar acciones y macros por cdigo, DoCmd Ver Pg 125
Ejecutar cdigo hasta cursor (CTRL+F8) ALT+D, E
Ejecutar directamente una macro Ver Pg 90
Ejecutar macro desde otra macro o desde procedimiento Ver
Ejecutar macro o procedimiento de evento para un evento en formulario, informe o control Ver
Ejecutar macro que pertenece a grupo de macros Ver
Ejecutar un subprocedimiento sin parmetros en punto de insercin, desde la ventana Mdulo F5
Ejemplo funcin Buscar archivo Ver
Ejemplo funcin con argumento Ver
Ejemplo funcin Invertir orden letras Ver
Ejemplo funcin Primer da del mes siguiente Ver
Ejemplo funcin Siglo Ver
Ejemplos de macros Ver Ejemplos de Macros, Pg 98.
Ejemplos y generalidades de Visual Basic Ver
Elemento seleccionado, introducir en una lista CTRL+INTRO o TAB
Elemento seleccionado, introducir y mover el cursor a la lnea siguiente INTRO
Eliminar registros Ver
Eliminar todos los puntos de interrupcin CTRL+MAY+F9
Enfoque en el cuadro Objeto CTRL+F2
Enfoque en el cuadro Procedimiento CTRL+F2, TAB
Enumerar las constantes CTRL+MAYS+J
Enumerar las propiedades y los mtodos CTRL+J
Errores de cdigo, solucionar Ver
Errores durante ejecucin, controlar Ver
Establecer la instruccin siguiente (CTRL+F9) ALT+D, N
GUIA ACCESS 85
Estructuras de decisin y control Ver
Evento en formulario, informe o control, ejecutar macro o procedimiento de evento Ver
Evento, determinar cundo ocurre Ver
Eventos de controles Ver
Eventos de datos Ver
Eventos de enfoque Ver
Eventos de error y sincronizacin Ver
Eventos de filtro Ver
Eventos de formularios Ver
Eventos de impresin Ver
Eventos de informes y secciones de informes Ver
Eventos de teclado Ver
Eventos de ventana Ver
Eventos del ratn Ver
Eventos, definicin Ver Ver Procedimiento de evento.
Eventos, propiedades Ver
Examinador de objetos (F2) ALT+V, E. Ver Definicin.
Expresin de inspeccin, agregar Ver
Expresin o variable, ver valor con cdigo suspendido Ver
Expresin seleccionada, crear Inspeccin instantnea MAY+F9
Expresin, definicin Ver Pg 41 Expresiones.
F
Fila actual, eliminar en macro ALT+E, M o seleccionar y Supr para varias.
Fila de macro, insertar ALT+I, F
Filas, mover Seleccionarlas y Clic y arrastrar desde selecctor o Seleccionar y Cortar y Pegar.
Filas, seleccionar varias seguidas Clic en selector (primera columna izquierda() en primera (o desde
actual) y MAY+Clic en ltima. (Para Suprimir o Mover).
Filtrar registros con macro Ver
Filtrar registros Ver
For each...Next, instruccin Ver
For...Next, instruccin Ver
Formulario, abrir con botn desde otro formulario Ver
Formulario, ir al registro que se quiera al abrirlo Ver
Formulario, mantener los registros coordinados con el formulario principal Ver
Formulario, ver si est abierto Ver
Funciones e Instrucciones, por tarea de programacin Ver
Funciones, referencia Ver
G
Generadores (asistentes de macros, cdigo y expresiones) Ver
Generalidades y Ejemplos de Visual Basic Ver
Grupo de informe, comenzar por pgina 1 Ver
H
I
If TypoOf, instruccin Ver
If..Then...Else, instruccin Ver
Imprimir informe con botn Ver
Imprimir registro actual con botn Ver
Imprimir uno (pas, etc.) o todos con Cuadro de lista y macro Ver
Informacin de la Base de datos (tablas, consultas, campos) Ver
Informacin de parmetros (CTRL+MAY+I) ALT+E, A
Informacin rpida (CTRL+I) ALT+E, I
Informacin, solicitar al usuario con cuadro de dilogo Ver
Informe a imprimir, seleccionar mediante cuadro de dilogo Ver
Informe, comenzar cada grupo por pgina 1 Ver
Informe, ocultar seccin Ver
Informe, registros a imprimir por pgina Ver
Informe, totalizar por pgina Ver
Inmediato, panel de depuracin Ver
Insertar archivo ALT+I, A
Insertar mdulo de clase ALT+I, M
Insertar mdulo ALT+I, D
Insertar procedimiento ALT+I, P
Inspeccin rpida (MAY+F9) ALT+D, C
Inspeccin, agregar ALT+D, A Ver Pg 119.
Inspeccin, modificar ALT+D, M
Instancia, definicin Ver
Instruccin siguiente, establecer (CTRL+F9) ALT+D, N
86 INFORMES - MENUS EN VISTA DISEO. Pgs. 155
Instruccin siguiente, mostrar CTRL+D, S
Instruccin, definicin Ver
Instrucciones condicionales y de bucle Ver
Instrucciones y Funciones, por tarea de programacin Ver
Instrucciones, paso a paso (F8) ALT+D, R
Instrucciones, referencia Ver
Interrumpir ejecucin de cdigo o macro CTRL+INTERRUMPIR
Interrupcin y no interrupcin, alternar en errores no tratados y pasar a siguiente instruccin ALT+F5
Interrupcin y no interrupcin, alternar en mdulo clase y seguir la ejecucin ALT+F8
Introducir el elemento seleccionado en una lista CTRL+INTRO o TAB
Ir con macro a control, registro, pgina Ver
Ir paso a paso Ver Paso a paso
J
K
L
Lnea, ltima visualizada anteriormente CTRL+MAY+F2
Lista de Cuadro de Lista, crear con cdigo Ver
Listar Formularios, controles, Propiedad Count Ver
Llamadas, Cuadro de dilogo CTRL+L
Llamadas, pila (CTRL+H) ALT+V, P Ver Pg 119.
M
Macro Autoexec, se ejecuta automticamente al abrir la Base de datos Ver
Macro dentro de un grupo, ejecutar Ver
Macro o procedimiento de evento, ejecutar para un evento en formulario, informe o control Ver
Macro, agregar accin Ver
Macro, convertir en Visual Basic ALT+H, M, V.
Macro, crear Ver
Macro, ejecutar Activa, en hoja macros ALT+C. En Diseo: ALT+E, C Ejecutar otra: ALT+H, M, M.
Desde Evento: Ficha Eventos desde Propiedades del Control y asociar al evento. Siempre ejecuta slo la
primera Macro del grupo. Para una en particular: Nombte del grupo, punto, Nombre de la Macro. Ej: Ma-
cro1.VerSeccin. Ver Ejecutar Macro.
Macro, ejecutar al abrir Base de datos Ver Macro Autoxec.
Macro, ejecutar desde otra macro o desde procedimiento Ver
Macro, ejecutar directamente Ver
Macro, mover en misma hoja Ver Filas, mover.
Macros de mens Crear Men a partir de Macro: ALT+ H, M, C. Crear Barra a partir de Macro: ALT+ H,
M, B. Crear Men Contextual a partir de Macro: ALT+ H, M, A. Los Mens con Macro se mantienen por
compatibilidad con versiones anteriores. Para nuevos Mens: Ver Mens, personalizar ALT+V, B.
Macros Ver Pg 88.
Macros, condiciones Ver
Macros, definicin, cundo utilizar Ver Macros, Pg 88.
Macros, ejemplos Ver Ejemplos de Macros, Pg 98,
Macros, ventana, saltar entre paneles F6
Marcadores ALT+E, M Ver Ejemplos.
Matrices Ver
Me, palabra clave Ver
Mens con macros Ver Macros de mens.
Mtodo, definicin Ver
Mtodos y Propiedades, lista (CTRL+J) ALT+E, M
Mtodos, por tarea de programacin Ver
Mtodos, referencia Ver
Modificacin (actualizacin) de registros con QueryDef Ver
Modificar inspeccin ALT+D, M
Modificar registros Ver
Mdulo de clase, insertar ALT+I, M
Mdulo, insertar ALT+I, D
Mdulo, ventana Ver
Mdulos de clases Ver
Mdulos estndar Ver
Mdulos Ver Pg 101.
Mdulos, compilar Ver Compilar
Mdulos, definicin, cundo utilizar Ver
Mostrar Instruccin siguiente CTRL+D, S
N
Nombres de macro, abrir ALT+V, M
O
GUIA ACCESS 87
Objeto, coleccin, definicin Ver
Objetos activos (Prop. Screen) Ver
Objetos como argumentos Ver
Objetos como variables Ver
Objetos predefinidos Forms, Reports Ver. Screen, Parent, Form, Report, Dynaset, Bookmark: Ver
Objetos, examinador (F2) ALT+V, E
Objetos, mtodos Ver
Ocultar o hacer visible un control Ver
Ocultar seccin de informe Ver
Ordenar, clasificar registros Ver
P
Palabra clave de Visual Basic, completar CTRL+BARRA
Palabra clave Me Ver
Palabra clave, procedimiento, variable, definicin MAY+F2
Palabra completa (CTRL+BARRA) ALT+E, O
Paneles de depuracin Ver Depuracin, panel
Paneles, cambiar entre superior e inferior F6
Parmetros, consulta Ver
Parmetros, Informacin (CTRL+MAY+I) ALT+E, A
Parmetros, solicitar con macro Ver
Paso a paso para salir (CTRL+MAY+F8) ALT+D, S
Paso a paso por instrucciones (F8) ALT+D, R
Paso a paso por procedimientos (MAY+F8) ALT+D, P
Paso a paso, ejecucin de cdigo Ver
Paso a paso, ejecutar macro ALT+C, P
Pila de llamadas (CTRL+H) ALT+V, P
Posicin ltima, volver (CTRL+MAY+F2) ALT+V, M
Procedimiento anterior CTRL +
Procedimiento de evento o macro, ejecutar para un evento en formulario, informe o control Ver
Procedimiento de evento, crear Ver
Procedimiento personalizado, crear Ver
Procedimiento siguiente CTRL +
Procedimiento, insertar ALT+I, P
Procedimiento, ir Paso a paso (un solo paso) F8
Procedimiento, presentar cdigo (MAY+F2) ALT+V, F
Procedimiento, salir CTRL+MAY+F8
Procedimiento, saltar MAY+F8
Procedimiento, variable o palabra clave, definicin MAY+F2
Procedimientos Function Ver
Procedimientos Sub Ver Generalidades: Ver
Procedimientos, definicin, clases Ver
Procedimientos, paso a paso (MAY+F8) ALT+D, P
Propiedad Count (Formularios e Informes) Ver
Propiedad, definicin Ver
Propiedades de eventos Ver
Propiedades y Mtodos, lista (CTRL+J) ALT+E, M
Punto de insercin, Ayuda contextual F1
Punto de insercin, ejecutar cdigo hasta l y detener la ejecucin CTRL+F8
Punto de interrupcin para suspender ejecucin Ver
Punto de interrupcin, alternar (F9) ALT+D, L
Puntos de interrupcin, eliminar todos (CTRL+MAY+F9) ALT+D, B
Q
QueryDef, variables (crear, modificar consultas de accin) Ver
R
Recorset, variables (Tabla, Dynaset, Snapshot) Ver
Reemplazar texto (CTRL+L) ALT+E, Z
Referencias, lista ALT+H, R
Registro actual, imprimir con botn Ver
Registros a imprimir, seleccionar mediante cuadro de dilogo Ver
Registros a imprimir, seleccionar mediante parmetros Ver
Registros, aadir Ver
Registros, buscar en Dynasets y Snapshots (Find) Ver
Registros, buscar en Tablas (Seek) Ver
Registros, eliminar Ver
Registros, filtrar Ver
Registros, modificar Ver
Registros, ordenar Ver
Repetir Buscar o Reemplazar con cuadro de dilogo cerrado F3
88 INFORMES - MENUS EN VISTA DISEO. Pgs. 155
Repetir Buscar o Reemplazar con cuadro de dilogo cerrado, hacia atrs MAY+F3
Requerir entrada en formulario Ver
Restablecer la ejecucin de cdigo o de macro MAY+F5
Restablecer, reiniciar cdigo ALT+C, R
S
Salir de un procedimiento CTRL+MAY+F8
Saltar un procedimiento MAY+F8
Sangra, aplicar (TAB). Anular (RETROCESO). ALT+E, A
Secciones de ventana, cambiar entre superior e inferior F6
Secuencia de acciones en macros Ver
Seleccin, buscar la siguiente aparicin CTRL+F3
Seleccin, consultas (dynaset) Ver
Seleccionar informe a imprimir mediante cuadro de dilogo Ver
Seleccionar registros a imprimir mediante cuadro de dilogo Ver
Seleccionar registros a imprimir mediante parmetros Ver
Seleccionar todo el cdigo visible en la ventana Mdulo CTRL+A
Select case, instruccin Ver
Snapshot, variable Recorset Ver
Solicitar informacin al usuario con cuadro de dilogo Ver
Solucin de errores de cdigo Ver
Suspender ejecucin de cdigo Ver
T
Tabla, variable Recorset Ver
Tecla, asignar accin o una serie de acciones Ver
Terminar ejecucin ALT+C, T
Tipo de control Ver
Transacciones Ver
Tratamiento de datos, manipulacin Ver
U
Ultima posicin, volver (CTRL+MAY+F2) ALT+V, M
V
Validar con macro Ver
Variable o expresin, ver valor con cdigo suspendido Ver
Variable, definicin Ver
Variable, procedimiento o palabra clave, definicin MAY+F2
Variables de controles Ver
Variables de Formularios e Informes Ver
Variables de objetos Ver
Variables QueryDef (crear, modificar consultas de accin) Ver
Variables Recorset (Tabla, Dynaset, Snapshot) Ver
Variables, presentacin en panel Locales Ver
Variables, resumen, declaracin, tipos de datos, ByVal Ver
Ventana Depuracin (CTRL+S) ALT+V, V
Ventana Macro o Mdulo, abrir desde formulario o informe Ver
Ventana macros, saltar entre paneles F6
Ventana mdulo Ver
Visualizar o no un control Ver
Volver ltima posicin (CTRL+MAY+F2) ALT+V, M
W
With, instruccin Ver
X
Y
Z



MACROS
Una macro es un conjunto de una o ms acciones que cada una realiza una operacin determinada, tal 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 botn de comando.
Una macro puede ser una macro compuesta de una secuencia de acciones, o puede ser un grupo de macros.
Tambin se puede usar una expresin condicional para determinar si se llevar a cabo una accin en algunos
casos cuando se ejecute la macro.
GUIA ACCESS 89
Una secuencia de acciones.
Una macro puede estar compuesta de una serie de acciones. Access lleva a cabo estas acciones cada vez que se
ejecuta la macro.
Un grupo de macros:
Si tiene numerosas macros, agrupar las macros relacionadas en grupos de macros puede ayudar a administrar la
base de datos ms fcilmente. Para mostrar los nombres de las macros de un grupo de macros, haga clic en
Nombres de macros en el men Ver en la ventana Macro.
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 accin de la columna accin y cualquier otra accin que siga inmediatamente,
cuya columna Nombre de macro est en blanco.
Para ejecutar una macro en un grupo de macros, utilice el nombre del grupo de macros seguido de un punto y a
continuacin el nombre de macro. En el ejemplo anterior, para hacer referencia a la macro Empleados en el gru-
po de macros Botones, escribira Botones.Empleados.
Acciones condicionales.
Para mostrar la columna Condicin, haga clic en Condiciones en el men Ver en la ventana Macro.
F6 para saltar entre paneles de ventana Macro.
Para crear Macro que abra un objeto, arrastrarlo desde la ventana Database a la de Macro, las dos en Mosaico.
Macro Group: Invoice. Una Macro de Invoice: Tax. Para llamar slo a Tax: Invoice.Tax
Ver columnas de Nombres y Condiciones en Men Ver, o con sus botones.
Cundo utilizar una macro
Las macros son un mtodo sencillo para llevar a cabo tareas sencillas como abrir y cerrar formularios, mostrar u
ocultar barras de herramientas y ejecutar informes. Permiten vincular fcil y rpidamente los objetos de la base
de datos creados, ya que no es necesario recordar mucha sintaxis; los argumentos de cada accin se muestran en
la parte inferior de la ventana Macro.
Adems de la facilidad de uso, deber utilizar macros para:
Realizar asignaciones globales de teclas.
Ejecutar una accin o una serie de acciones cuando se abre por primera vez una base de datos. Adems,
puede usar el cuadro de dilogo Inicio para que se realicen determinadas operaciones cuando se abra una base de
datos, como, por ejemplo, que se abra un formulario.
MACROS - MENUS.
MENU EDI CI ON
Eliminar filas: Elimina la fila o filas seleccionadas. Para seleccionar una fila, haga clic en el selector de fila .
MENU VER
Nombres de macro: Alterna entre presentar y ocultar la columna Nombres de macro en la ventana Macro. Pre-
sente la columna Nombre de macro cuando defina un grupo de macros.
Condiciones: Alterna entre presentar y ocultar la columna Condiciones en la ventana Macro. Presente la colum-
na Condiciones cuando quiera establecer condiciones para una accin.
MENU I NSERTAR
Filas: Crea una fila en blanco antes de la fila seleccionada. Para seleccionar una fila, haga clic en el selector de
fila.
MENU EJ ECUTAR
Ejecutar: Ejecuta la macro activa en la ventana Macro. Si la macro es un grupo de macros, Microsoft Access
ejecuta la primera macro del grupo. Si la primera lnea est en blanco o contiene un comentario, la macro no se
ejecutar. Tambin se accede a este comando por botn en Ficha Macro de la ventana Base de Datos, ejecutan-
do la macro seleccionada..
Paso a paso: Activa y desactiva el modo paso a paso. Cuando est activado el modo paso a paso, las acciones se
ejecutan una a una.
Crear una macro
1 En la ventana Base de datos, haga clic en la ficha Macros.
2 Haga clic en Nuevo.
3 En la columna Accin, haga clic en la flecha para presentar la lista de acciones.
4 Haga clic en la accin que desee utilizar.
5 Introduzca un comentario para la accin. Los comentarios son opcionales pero harn la macro ms fcil
de entender y mantener.
6 En la parte inferior de la ventana, especifique los argumentos de la accin, si es que se requiere alguno.
7 Para agregar ms acciones a la macro, muvase a otra fila de accin y repita los pasos 3 a 6. Access
lleva a cabo las acciones en el orden en el que se enumeren.
Sugerencia: Para crear rpidamente una macro que lleva a cabo una accin sobre un objeto de base de datos
especfico, arrastre el objeto desde la ventana Base de datos hasta una fila de accin en la ventana Macros. Por
ejemplo, puede crear una macro que abra un formulario arrastrando el formulario a una fila de accin. Para hacer
esto, haga clic en Mosaico vertical en el men Ventana para posicionar la ventana Macros y la ventana Base de
datos de forma que ambas sean visibles en su pantalla; a continuacin haga clic en la ficha de la ventana Base de
90 MACROS - MENUS. Pgs. 155
datos correspondiente al tipo de objeto que desee arrastrar, y despus haga clic en el objeto y arrstrelo hasta una
fila de accin. Arrastrar una macro agrega una accin que ejecuta la macro, mientras que arrastrar cualquier otro
objeto (tablas, consultas, formularios, informes o mdulos) agrega una accin que abre el objeto.
Ejecutar una macro
Cuando ejecuta una macro, Access comienza desde el principio de la macro y lleva a cabo todas las acciones en
la macro hasta que alcanza o bien otra macro (si la macro se encuentra en un grupo de macros) o el fin de la
macro.
Una macro puede ser ejecutada directamente, desde otra macro o un procedimiento de evento, o como respuesta
a un evento que se produce en un formulario, informe o control. Por ejemplo, puede agregar una macro a un
botn de comando de forma que la macro se ejecute cuando el usuario presiona el botn. Tambin puede crear
un comando de men personalizado o un botn de la barra de herramientas que ejecute una macro, asignar una
macro a una combinacin de teclas, o ejecutar automticamente una macro al abrir una base de datos.
Ejecutar directamente una macro
Para ejecutar directamente una macro desde la ventana Macro, haga clic en Ejecutar en la barra de
herramientas.
Para ejecutar una macro desde la ventana Base de datos, haga clic en la ficha Macros y despus haga
doble clic en el nombre de la macro.
Para ejecutar una macro desde la vista Diseo del formulario o desde la vista Diseo del informe, en el
men Herramientas site el puntero sobre Macro y haga clic en Ejecutar macro.
Para ejecutar una macro desde cualquier parte de Access, en el men Herramientas, haga clic en Ejecu-
tar macro. A continuacin haga clic sobre una macro en el cuadro desplegable Nombre de la macro.
Nota: Por lo general, slo se ejecuta una macro directamente cuando desea probarla. Puede entonces agregar la
macro a un formulario, informe o control, de forma que se ejecute como respuesta a un evento, o puede crear un
comando de men personalizado que ejecute la macro.
Ejecutar una macro o un procedimiento de evento para un evento en un formulario, un informe o un control
Microsoft Access responde a muchos tipos de eventos en formularios, informes y controles, incluyendo clics del
mouse, cambios en los datos, as como aperturas o cierres de formularios o informes.
1 Abra el formulario o informe en la vista Diseo.
2 Cree una macro o un procedimiento de evento. (Un procedimiento de evento es un procedimiento que se
ejecuta automticamente como respuesta a un evento iniciado por el usuario o por el cdigo de programa o bien
activado por el sistema.). As, por ejemplo, puede crear una macro o un procedimiento de evento que muestre un
mensaje cuando se haga clic en un botn de comando.
3 Establezca la propiedad de evento del formulario, informe o control apropiada al nombre de la macro o
a [Procedimiento de evento] si est utilizando un procedimiento de evento.
Por ejemplo, para utilizar una macro que muestre un mensaje cuando se hace clic en un botn de comando, esta-
blezca la propiedad AlHacerClic (OnClick) del botn de comando al nombre de la macro que muestra el mensa-
je. Para utilizar un procedimiento de evento, cree un procedimiento de evento Click para el botn de comando, y
establezca AlHacerClic (OnClick) a [Procedimiento de evento]
Ver Pg 94, Eventos.
Ejecutar una macro que pertenece a un grupo de macros.
Especifique la macro como valor propiedad de evento en un formulario o informe o como argumento de
Nombre de macro de la accin EjecutarMacro. Refirase a la macro utilizando esta sintaxis.
nombregrupomacros.nombremacro
Por ejemplo, el valor de propiedades de evento siguiente ejecuta una macro llamada Categoras en un grupo de
macros llamado Botones del Panel de control del formulario:
Botones del Panel de control del formulario.Categoras
En el men Herramientas, site el puntero sobre Macro, haga clic en Ejecutar macro y seleccione la
macro de la lista Nombre de macro. Cuando los nombres de las macros aparecen en la lista, Access incluye una
entrada por cada macro en cada grupo de macros.
Ejecute una macro que est en un grupo de macros desde un procedimiento de Visual Basic para aplica-
ciones utilizando el mtodo RunMacro del objeto DoCmd, con la sintaxis mostrada previamente para referirse a
la macro.
Ejecutar una macro desde otra macro o desde un procedimiento Visual Basic
Para ejecutar una macro desde otra macro o desde un procedimiento de Visual Basic, agregue la accin Ejecu-
tarMacro a su macro o procedimiento.
Para agregar la accin EjecutarMacro a una macro, haga clic en EjecutarMacro en la lista de acciones en
una fila de accin que est libre, y coloque en el argumento de Nombre de la macro el nombre de la macro que
desea ejecutar.
Para agregar la accin EjecutarMacro a un procedimiento Visual Basic, agregue el mtodo RunMacro
del objeto DoCmd a su procedimiento, y especifique el nombre de la macro que desea ejecutar; por ejemplo, el
siguiente mtodo RunMacro ejecuta la macro Mi Macro:
DoCmd.RunMacro "Mi Macro"
GUIA ACCESS 91
Abrir la ventana Macro o Mdulo desde un formulario o informe
1 En la vista Diseo del formulario o en la vista Diseo del informe, lleve a cabo una de estas acciones:
Haga doble clic en el selector de formulario o selector de informe para abrir la hoja de propiedades del
formulario o informe.

Haga doble clic en el selector de seccin para abrir la hoja de propiedades de la seccin.
Asegrese de que un control est seleccionado, y haga clic en Propiedades en la barra de herramientas.
2 Haga clic en el botn Generar al lado de la propiedad de evento adecuada. Por ejemplo, si desea crear
una macro o procedimiento de evento que se ejecute al hacer clic en un botn de comando, haga clic en el botn
Generar al lado de la propiedad AlHacerClic (OnClick) del botn de comando.
3 Elija el Generador de macros para abrir la ventana Macro o haga clic en el Generador de cdigo para
abrir la ventana Mdulo.
Nota: Si desea ver todo el cdigo detrs de un formulario o informe, elija Cdigo del men Ver.
Condiciones en una macro.
En algunos casos, puede desear llevar a cabo una accin o serie de acciones en una macro solamente si se cum-
ple una condicin en particular. Por ejemplo, si est utilizando una macro para validar los datos de un formula-
rio, puede desear presentar un mensaje en respuesta a un conjunto de valores introducidos en un registro y otro
mensaje en respuesta a otro conjunto diferente de valores. En casos como stos, puede utilizar las condiciones
para controlar el flujo de la macro.
Una condicin es una expresin lgica. La macro sigue las distintas rutas dependiendo de si la condicin es
verdadera o falsa.
Introduzca condiciones en la columna Condicin de la ventana Macros. Si se cumple una condicin, Access
lleva a cabo la accin en esa fila. Puede hacer que Access lleve a cabo una serie de acciones si la condicin es
verdadera introduciendo puntos suspensivos (...) en la columna Condicin de las acciones que siguen inmedia-
tamente a la condicin. Las acciones que sigan a condiciones en blanco se realizarn independientemente de la
expresin condicional.
Por ejemplo, la siguiente macro lleva a cabo la acciones MsgBox y DetenerMacro cuando no haya valor en el
campo Pas (cuando el valor es Nulo). Si no fuera porque la segunda accin detiene la Macro, tambin realizara
la tercera y cuarta. Si hubiera valor (falso) slo efectuara las tercera y cuarta.
Condicin Accin
IsNull([Pas]) MsgBox
... StopMacro
OpenForm
MoveSize.
Ver Ej. Validar.
Ejemplos de condiciones de macro
Utilice esta expresin Para llevar a cabo la accin si
[Ciudad]=Paris Paris es el valor de Ciudad en el campo en el formulario desde el cual se ejecut la macro.
DCont([IdPedido], Pedidos)>35 Hay ms de 35 entradas en el campo IdPedido de la tabla Pedidos.
DCont(*, Detalles de pedidos, [IdPedido]=Forms![Pedidos]![IdPedido]")>3 Hay ms de tres entra-
das en la tabla Detalles de pedidos para los cuales el campo IdPedido de la tabla coincide con el campo IdPedido
del formulario Pedidos.
[FechaEnvo] Entre #2-Feb-1995# y #2-Mar-1995# El valor del campo FechaEnvo del formulario desde el cual
se ejecuta la macro no es anterior al 2-Feb-1995 y no es posterior al 2-Mar-1995.
Forms![Productos]![UnidadesEnStock]<5 El valor del campo UnidadesEnStock del formulario Productos es
menor que cinco.
EsNulo([Nombre]) El valor Nombre del formulario desde el que se ejecuta la macro es Nulo(no tiene
valor). Esta expresin es equivalente a [Nombre] Es Nulo.
[Pas]=UK Y Forms![Ventas Totales]![TotalPedidos]>100 El valor en el campo Pas del formulario desde el
que se ejecuta la macro es UK, y el valor del campo TotalPedidos del formulario Ventas Totales es mayor que
100.
[Pas] En (Francia, Italia, Espaa) y Len([CdigoPostal])<>5 El valor en el campo Pas del formulario
desde el cual se ejecuta la macro es Francia, Italia, o Espaa, y el cdigo postal no es de 5 caracteres de longitud.
CuadroMsj(Confirmar cambios?,1)=1 Haga clic en Aceptar en el cuadro de dilogo que presenta la funcin
CuadroMsj. Si hace clic en Cancelar en el cuadro de dilogo, Access ignora la accin.
Sugerencia: Para hacer que Access ignore temporalmente una accin, introduzca Falso como condicin. Ignorar
temporalmente una accin puede ser de utilidad cuando est tratando de encontrar problemas en una macro.
Ver Pg 98, Ejemplos de macros.
Agregar una accin a una macro
1 En la ventana Macros, haga clic en la primera fila en blanco de la columna Accin. Si desea insertar una
accin entre dos filas de acciones, haga clic en el selector de la fila de accin que est justo debajo de la fila
donde desea insertar la nueva accin, y haga clic en Insertar filas en la barra de herramientas.
92 MACROS - MENUS. Pgs. 155
2 En la columna Accin, haga clic en la flecha para presentar la lista de acciones.
3 Haga clic en la accin que desee utilizar.
4 Escriba un comentario para la accin. Los comentarios son opcionales.
5 En la parte inferior de la ventana, especifique los argumentos de la accin, si se requiere alguno.
Sugerencia: En el caso de muchos argumentos de accin cuyos valores establecidos son el nombre del objeto de
la base de datos, puede establecer el argumento arrastrando el objeto desde la ventana Base de datos al cuadro
del argumento NombreObjeto de la accin. Por ejemplo, puede establecer el argumento Nombre Objeto de la
accin SeleccionarObjeto al nombre de un formulario arrastrando el formulario al cuadro del argumento. Para
hacer esto, haga clic en Mosaico vertical del men Ventana para posicionar la ventana Macros y la ventana Base
de datos de forma que ambas sean visibles en su pantalla; entonces, haga clic en la ficha de la ventana Base de
datos en el tipo de objeto que desee arrastrar, haga clic en el objeto y arrstrelo al cuadro del argumento. Al
arrastrar el objeto tambin se establece el argumento Tipo de objeto.
Acciones agrupadas por tarea
Categora Tarea Accin
Datos de formularios e informes
Restringe datos AplicarFiltro
Se mueve por los datos BuscarRegistro, BuscarSiguiente, IrAControl, IrAPgina, IrARegistro,
Ejecucin
Ejecuta un comando EjecutarComando
Sale de Access Salir
Ejecuta una macro, procedimiento o consulta AbrirConsulta, EjecutarCdigo, EjecutarMacro,
EjecutarSQL
Ejecuta otra aplicacin EjecutarAplicacin
Detiene la ejecucin CancelarEvento, DetenerTodasMacros, DetenerMacro, Salir
I mportar/exportar
Enva objetos Access a otras aplicaciones EnviarObjeto, SalidaHacia
Transfiere datos entre formatos de datos de Access y otros TransferirBaseDatos,
TransferirHojaClculo, TransferirTexto
Manipulacin deobjetos
Copia, guarda o cambia el nombre de un objeto CambiarNombre, CopiarObjeto, Guardar
Elimina un objeto EliminarObjeto
Mueve o cambia el tamao de una ventana DesplazarTamao, Maximizar, Minimizar, Restaurar
Abre o cierra un objeto AbrirConsulta, AbrirFormulario, AbrirInforme, AbrirMdulo,
AbrirTabla, Cerrar
Imprime un objeto AbrirConsulta, AbrirFormulario, AbrirInforme, Imprimir
Selecciona un objeto SeleccionarObjeto
Establece el valor de un campo, control o propiedad EstablecerValor
Actualiza datos o la pantalla MostrarTodosRegistros, NuevaConsulta, RepintarObjeto
Diversos
Crea una barra de mens personalizada, un men contextual personalizado, una barra de mens glo-
bal, o men contextual global AgregarMen
Establece el estado de los elementos de men en una barra de mens personalizada o en una barra de
mens global EstablecerElementoDelMen
Muestra informacin por la pantalla CuadroMsj, Eco, EstablecerAdvertencias, RelojDeAre-
na
Genera pulsaciones de teclas EnviarTeclas
Muestra u oculta la barra de comandos incorporada o personalizada MostrarBarraDeHerramientas
Produce un aviso sonoro Bip
Establecer argumentos de accin en una macro
Despus de agregar una accin a una macro, establezca los argumentos de la accin en la parte inferior de la
ventana Macro. Estos argumentos dan a Access informacin adicional sobre cmo llevar a cabo la accin.
Estas son algunas sugerencias para el establecimiento de los argumentos de la accin:
Puede introducir un valor en un cuadro de argumento o, en muchos casos, puede seleccionar un valor
establecido de una lista.
En general, es una buena idea establecer los argumentos de la accin en el orden en el que estn lista-
dos, porque las opciones de un argumento pueden determinar las opciones de los argumentos que le siguen.
Si agrega una accin a su macro arrastrando un objeto de base de datos desde la ventana Base de datos,
Access establece de forma automtica los argumentos apropiados para esa accin.
Si una accin tiene un argumento que requiere el nombre de un objeto de la base de datos, puede esta-
blecer de forma automtica el argumento y el tipo de objeto correspondiente arrastrando el objeto desde la ven-
tana Base de datos al cuadro del argumento.
GUIA ACCESS 93
Puede utilizar una expresin precedida de un signo de igual (=) para establecer los argumentos de cual-
quier accin. Puede utilizar una expresin para los siguientes argumentos.
Argumento Accin
Tipo de objeto Cerrar, EliminarObjeto, IrARegistro, SalidaHacia, CambiarNombre, RepintarObjeto,
Guardar; SeleccionarObjeto, EnviarObjeto, TransferirBaseDatos
Tipo del objeto de origen CopiarObjeto
Tipo de base de datos TransferirBaseDatos
Tipo de hoja de clculo TransferirHojaClculo
Nombre de especificacin TransferirTexto
Nombre de la barra de herramientas MostrarBarraDeHerramientas
Formato de salida SalidaHacia, EnviarObjeto
Todos los argumentos EjecutarComando
I ntroducir una expresin en el argumento de una accin de macro
Escriba un signo de igual (=) seguido de la expresin. Por ejemplo, la siguiente expresin establece el
argumento de la accin al valor del control ListaDeSeleccinDeCompaas:
=[ListaDeSeleccinDeCompaas]
Existen dos excepciones: el argumento Expresin de la accin EstablecerValor, y el argumento Repetir Expre-
sin de la accin EjecutarMacro. Si precede una expresin en estos argumentos con el signo de igual, Access
evala la expresin dos veces, lo que puede producir resultados inesperados.
Sugerencia: Tambin puede hacer clic en el botn Generar junto al cuadro de argumento para usar el Generador
de expresiones, el cual le gua por el proceso de creacin de una expresin..
Asignar una accin o una serie de acciones a una tecla
Puede asignar una accin o un conjunto de acciones a una tecla o una combinacin de teclas especfica creando
un grupo de macros denominado AsignarTeclas. Cuando presione la tecla o la combinacin de teclas, Access
ejecutar la accin.
1 En la ventana de la base de datos, haga clic en la ficha Macros.
2 Haga clic en Nuevo.
3 Haga clic en Nombres de macro en la barra de herramientas.
4 En la columna Nombre de macro, escriba la tecla o la combinacin de teclas a la que desea asignar la
accin o el conjunto de acciones.
5 Agregue la accin o el conjunto de acciones que desea que lleve a cabo la tecla o la combinacin de
teclas. Por ejemplo, podra agregar una accin EjecutarMacro que ejecute la macro ImprimirRegistroActual al
presionar CTRL+R.
6 Repita los pasos 4 y 5 para cualquier otra asignacin de teclas que desee realizar.
7 Guarde el grupo de macros con el nombre AsignarTeclas.
Las nuevas asignaciones de teclas tendrn efecto en cuanto guarde el grupo de macros y cada vez que abra la
base de datos.
Nota: Si asigna un conjunto de acciones a una combinacin de teclas que utiliza Access (por ejemplo,
CTRL+C es la combinacin de teclas para Copiar), las acciones que asigne a esa combinacin de teclas susti-
tuirn a la asignacin de Access.
Llevar a cabo una accin la primera vez que se abre la base de datos
Puede utilizar una macro especial llamada AutoExec para ejecutar una accin o una serie de acciones cuando se
abre la base de datos por primera vez. Cuando se abre la base de datos, Access busca una macro con este nom-
bre y, si la encuentra, la ejecuta automticamente.
1 Cree una macro que contenga las acciones que desea ejecutar cuando abra la base de datos.
2 Guarde la macro con el nombre AutoExec.
La prxima vez que abra la base de datos, Access ejecutar automticamente esta macro.
Nota: Si no desea ejecutar la macro AutoExec cuando abre la base de datos, mantenga presionada la tecla
MAY cuando se abra la base de datos.
Tambin puede controlar cmo se inicia una base de datos o una aplicacin estableciendo opciones en el
cuadro de dilogo Inicio (men Herramientas).
Ejemplo:
Nombre de macro: Autoexec. (Se ejecuta automticamente al abrir la Base de datos.
Action Comments
Echo Freeze screen (Echo off)
Hourglass Display an hourglass while macro is running
OpenForm Abre Formulario Principal (Botones: View Forms, Print Repts, View Daily Order Totals, Da-
tabase Window, Exit.)

A cada Botn de formulario principal en OnPush:
Macro grupo Principal:
Name Action
94 Eventos Pgs. 155
View Form OpenForm (Formularios)
Print Reports OpenForm (Informes)
Orders Totals OpenForm (Formulario dilogo para ver totales pedidos diarios).
Database Window SelectObject (Ventana de Base de datos)
Exit Quit (Salir de Access)

Ej.: Botn Print Repts.: prop. Auto Repeat: no, OnPush: Principal.Print Reports.
Eventos
Un evento es una accin determinada que se produce en, o con, un objeto particular. Access puede responder a
una variedad de eventos: clics del ratn, cambios en los datos, formularios que se abren o se cierran, y muchos
otros. Los eventos son normalmente el resultado de una accin del usuario.
Usando un procedimiento de evento o una macro, se pueden agregar respuestas personalizadas a un evento que
se produzca en un formulario, informe, o control.
Suponga que desea que un formulario Detalles de producto se abra cuando haga clic en un botn de comando
Detalles de producto en un formulario Pedidos. Los siguientes ejemplos muestran cmo hacer sto usando un
procedimiento de evento o usando una macro.
Responder al evento Al hacer clic usando un procedimiento de evento
Ver Pg 90. Ver Pg 105.
Cuando se crea un procedimiento de evento para un objeto, Access agrega una plantilla de procedimiento de
evento nombrada para el evento y el objeto al mdulo de formulario o mdulo de informe. Todo lo que necesita
hacer es agregar cdigo que responda de la forma que desee cuando se produzca el evento en el formulario o
informe.
Responder al evento Al hacer clic usando una macro
Ver Pg 90
Para hacer que se ejecute una macro en respuesta a un evento, abra la hoja de propiedades para el formulario,
informe, o control. Busque la propiedad que corresponda al evento, y establzcala a la macro que desee ejecutar.
Determinar cundo ocurre un evento
Una sola accin, como puede ser pasar de un control a otro puede desencadenar varios eventos diferentes que
suceden en una determinada secuencia. El saber cundo ocurren los eventos y en qu orden lo hacen es impor-
tante, porque esto afecta a cmo y cundo se ejecutan sus macros o procedimientos de evento. Por ejemplo, si
tiene dos procedimientos de evento que deben ejecutarse en un orden determinado, querr estar seguro de que los
eventos con los que estn asociados suceden en ese orden.
Nota: Puede ver el orden en que ocurren los eventos en un formulario, abriendo el formulario MostrarEventos
en la aplicacin de ejemplo Pedidos. Cuando ocurre un evento en el formulario MostrarEventos, por ejemplo,
cuando abre el formulario o mueve un registro, el formulario HistorialDeEventos relaciona los eventos en el
orden en el cual se producen.
Eventos de formularios:
OnOpen (opening a Form)
OnCurrent (making a record the current (al cambiar))
OnInsert (inserting a new record)
BeforeUpdate and AfterUpdate (changing data in a Record)
OnDelete (deleting a record)
OnClose (closing a Form)
Eventos de controles:
OnEnter (selecting a Control)
OnPush (pressing a Command Button)
BeforeUpdate and AfterUpdate (changing data in a Control)
OnDoubleClick (double-clicking a Control)
OnExit (leaving a Control)
Eventos de I nformes:
OnOpen (antes de empezar a imprimir, seleccionar registros con macro)
OnClose (cuando se cierra, por ejemplo preguntar por el usuario)
Eventos de Secciones de I nformes:
OnFormat (prior to layout for Print. Ej.: display or hide a control based on another control. Has access
to current record.
OnPrint (before the section is printed. Ej.: update page totals for the page on the page footer).
EVENTOS DE DATOS
Los eventos de datos ocurren cuando se introducen, eliminan o cambian datos en un formulario o control, o
cuando el enfoque se mueve desde un registro a otro.
Evento Propiedad del evento Ocurrencia
GUIA ACCESS 95
AfterDelConfirm
DespusDeConfirmarEliminacin (AfterDelConfirm) (formularios) Despus de confirmar la eliminacin de
los registros y los registros sean realmente eliminados o despus de que la eliminacin sea cancelada.
AfterInsert DespusDeInsertar (AfterInsert) (formularios) Despus de que se haya agregado un nue-
vo registro a la base de datos.
AfterUpdate
DespusDeActualizar (AfterUpdate) (formularios, controles) Despus de que un control o registro sea actualiza-
do con el dato cambiado. Este evento ocurre cuando el control o el registro pierde el enfoque, o se hace clic en
Guardar registro en el men Registros. Este evento ocurre para los registros nuevos y los existentes.
BeforeDelConfirm
AntesDeConfirmarEliminacin (BeforeDelConfirm) (formularios) Despus de que uno o ms registros hayan
sido eliminados, pero antes de que Access muestre un cuadro de dilogo pidindole que confirme o cancele la
eliminacin. Este evento ocurre despus del evento Delete.
BeforeI nsert
AntesDeInsertar (BeforeInsert) (formularios) Cuando se escribe el primer carcter de un nuevo registro,
pero antes de que se haya agregado el registro a la base de datos.
BeforeUpdate
AntesDeActualizar (BeforeUpdate) (formularios, controles) Antes de que un control o registro sea actualizado
con el dato modificado. Este evento ocurre cuando el control o registro pierde el enfoque o se haga clic en Guar-
dar registro en el men Registros. Este evento ocurre para los registros nuevos y los existentes.
Change
AlCambiar (OnChange) (controles) Cuando cambia el contenido de un cuadro de texto o la parte de
cuadro de texto de un cuadro combinado; por ejemplo, cuando se escribe un carcter en el control o se cambia la
propiedad Texto del control usando una macro o Visual Basic.
Current
AlActivarRegistro (OnCurrent) (formularios) Cuando el enfoque se mueve a un registro, hacindolo el
registro activo o cuando se hace una NuevaConsulta al origen de datos de un formulario. Este evento ocurre
cuando se abre por primera vez un formulario, y en el momento en el que el enfoque abandona a un registro y se
mueve a otro. Tambin ocurre cuando se realiza de nuevo una consulta al origen de datos de un formulario; por
ejemplo, cuando se hace clic en Quitar filtro u ordenar en el men Registros o se utiliza la accin MostrarTo-
dosRegistros o la accin NuevaConsulta.
Delete
AlEliminar (OnDelete) (formularios) Cuando se elimina un registro, pero antes de confirmar la elimina-
cin y de que sea realizada realmente.
NotI nList
AlNoEnLaLista (OnNotInList) (controles) Cuando se introduce un valor en un cuadro combinado que no est
en la lista del cuadro combinado.
Updated
AlActualizar (OnUpdated) (controles) Cuando ha sido modificado el dato de un objeto OLE.
EVENTOS DE ENFOQUE
Los eventos de enfoque ocurren cuando un formulario o control pierde o recibe el enfoque, o un formulario o
informe se convierte en activo o inactivo.
Evento Propiedad del evento Ocurrrencia
Activate
AlActivar (OnActivate) (formularios, informes) Cuando un formulario o informe se convierte en la ventana
activa.
Deactivate
AlDesactivar (OnDeactivate) (formularios, informes) Cuando una ventana diferente de Access se con-
vierte en la ventana activa, pero antes de que lo haga. El evento Deactivate no ocurre cuando el enfoque se mue-
ve a la ventana de otra aplicacin, a un cuadro de dilogo o un formulario emergente.
Enter
AlEntrar (OnEnter) (controles) Antes de que un control reciba el enfoque, bien desde un control en el mismo
formulario o cuando se abre el formulario. Este evento ocurre antes que el evento GotFocus.
Exit
AlSalir (OnExit) (controles) Justamente antes de que un control pierda el enfoque hacia otro control en el
mismo formulario. Este evento ocurre antes del evento LostFocus.
GotFocus
AlRecibirEnfoque (OnGotFocus) (formularios, controles) Cuando un control o un formulario con controles
no activos recibe el enfoque. Un formulario slo puede recibir el enfoque si todos los controles visibles de un
formulario estn desactivados o no hay controles en el formulario.
96 Eventos Pgs. 155
LostFocus
AlPerderEnfoque (OnLostFocus) (formularios, controles) Cuando un formulario o control pierde el enfoque.
Un formulario slo puede tener el enfoque si todos los controles visibles en un formulario estn desactivados o
no hay controles en el formulario.
EVENTOS DE ERROR Y DE SI NCRONI ZACIN
Los siguientes eventos se utilizan para el tratamiento de los errores y la sincronizacin de los datos en los formu-
larios o informes.
Evento Propiedad del evento Ocurrencia
Error
AlOcurrirError (OnError) (formularios, informes) Cuando se produce un error en tiempo de ejecucin en
Access mientras se est en el formulario o informe. Esto incluye a los errores del motor de base de datos Jet,
aunque no los errores en tiempo de ejecucin de Visual Basic. (Puesto que las macros no pueden determinar qu
error ha ocurrido, con este evento se utilizan normalmente procedimientos de evento de Visual Basic.)
Timer
AlCronmetro (OnTimer) (formularios) Cuando pasa un intervalo especificado de tiempo, segn se especifi-
que en la propiedad IntervaloDeCronmetro (TimerInterval) del formulario. Se puede utilizar el evento Timer
para mantener los datos sincronizados en un entorno multiusuario haciendo una nueva consulta o actualizando
los datos a intervalos especificados.
EVENTOS DE FI LTRO
Los eventos de filtro ocurren cuando se aplica o se crea un filtro en un formulario.
Evento Propiedad del evento Ocurrencia
ApplyFilter
AlAplicarFiltro (OnApplyFilter) (formularios) Cuando se hace clic en Aplicar filtro u ordenar en el men
Registros o se hace clic en el botn Aplicar filtro en la barra de herramientas. Esto se aplica al filtro que se haya
creado ms recientemente (creado usando la caracterstica Filtro por formulario o la ventana Filtro u orden avan-
zado).Cuando se hace clic en Filtro por seleccin despus de haber apuntado a Filtro en el men Registros o
haciendo clic en el botn Filtro por seleccin en la barra de comandos. Esto se aplica al filtro basado en la selec-
cin actual del formulario.Cuando se hace clic en Quitar filtro u ordenar en el men Registros o se hace clic en el
botn Quitar filtro en la barra de comando. Esto elimina cualquier filtro (u ordenacin) que se est aplicando en
la actualidad al formulario.Cuando se cierra la ventana Filtro u orden avanzado o la ventana Filtro por formula-
rio.
Filter
AlFiltrar (OnFilter) (formularios) Cuando se hace clic en Filtro por formulario despus de apuntar a Filtro en el
men Registros o se hace clic en el botn Filtro por formulario en la barra de comando. Esto abre la ventana
Filtro por Formulario, donde se puede crear rpidamente un filtro basado en los campos del formulario.Cuando
se hace clic en Filtro u orden avanzado despus de apuntar a Filtro en el men Registros. Esto abre la ventana
Filtro u orden avanzado, donde se pueden crear filtros complejos para el formulario.
EVENTOS DE I MPRESI N
Los eventos de impresin ocurren cuando se imprime un informe o se le da formato para que se imprima.
Evento Propiedad del evento Ocurrencia
Format
AlDarFormato (OnFormat) (informes) Cuando Access determina qu datos van en la seccin de un infor-
me, pero antes de que Access d formato a la seccin para vista preliminar o impresin. Su macro o procedi-
miento de evento puede utilizar los datos del registro activo para hacerle cambios al diseo de la pgina..
NoData
AlNoDatos (OnNoData) (informes) Despus de que Access d formato a un informe que no tiene datos
para que se imprima (el informe es dependiente de un recordset en blanco), pero antes de que se imprima el in-
forme. Este evento se puede utilizar para cancelar la impresin de un informe en blanco.
Page
AlPaginar (OnPage) (informes) Despus de que Access d formato a una pgina para que se imprima, pero
antes de que se imprima.
Print
AlImprimir (OnPrint) (informes) Despus de que Access d formato a los datos de una seccin del informe,
pero antes de que se imprima la seccin.
Retreat
AlRetirarse (OnRetreat) (informes) Cuando Access debe "retroceder" a un punto pasado una o ms secciones del
informe para realizar mltiples pases para dar formato. Esto ocurre despus del evento Format de la seccin,
aunque antes del evento Print. El evento Retreat de cada seccin ocurre mientras que Access retrocede pasada la
seccin. Esto le permite deshacer cualquier cambio que haya hecho durante el evento Format para la seccin.
EVENTOS DEL RATN
Los eventos del ratn ocurren cuando ocurre una accin del ratn, como por ejemplo presionar o hacer clic en un
botn del ratn.
GUIA ACCESS 97
Evento Propiedad del evento Ocurrencia
Click
AlHacerClic (OnClick) (formularios, controles) Para un control, este evento ocurre cuando se presiona y
luego se suelta (se hace clic) en el el botn primario del ratn sobre un control.Para un formulario, este evento
ocurre cuando se hace clic en un selector de registro o en un rea fuera de una seccin o control.
DblClick
AlHacerDobleClic (OnDblClick) (formularios, controles) Cuando se presiona y suelta (se hace clic) dos
veces con el botn primario del ratn en un control o su etiqueta.Para un formulario, este evento ocurre cuando
se hace doble clic en un rea en blanco o selector de registro en el formulario.
MouseDown
AlBajarRatn (OnMouseDown) (formularios, controles) Cuando se presiona un botn del ratn mientras
que el puntero est en un un formulario o control.La cancelacin del evento RatnDown usando la accin Cance-
larEvento en un macro evita que se muestre el men contextual cuando se presione el botn secundario del ratn.
MouseMove
AlMoverRatn (OnMouseMove) (formularios, controles) Cuando se libera un botn presionado del mous7e
mientras el puntero est en un formulario, seccin de formulario, o control.
MouseUp
AlSubirRatn (OnMouseUp) (formularios, controles) Cuando se mueve el puntero del ratn sobre un
formulario o control.
EVENTOS DE TECLADO
Los eventos de teclado ocurren cuando se escribe en un teclado o cuando se envan pulsaciones usando la accin
EnviarTeclas o la instruccin SendKeys.
Evento Propiedad del evento Ocurre
KeyDown
AlBajarTecla (OnKeyDown) (formularios, controles) Cuando se presiona cualquier tecla en el teclado
mientras un control o formulario tiene el enfoque. Un formulario slo puede tener el enfoque si estn desactiva-
dos todos los controles visibles en el formulario o no hay controles en el formulario.El evento KeyDown ocurre
tambin si se enva una pulsacin a un formulario o control usando la accin EnviarTeclas en una macro o la
instruccin SendKeys en Visual Basic.Un formulario recibe tambin todos los eventos KeyDown (incluso los de
los controles) antes de que ocurran para los controles si se establece la propiedad TeclaDePresentacinPreliminar
(KeyPreview) del formulario a S.Si se mantiene presionada una tecla, el evento KeyDown ocurrir repetidamen-
te.
KeyPress
AlPresionarTecla (OnKeyPress) (formularios, controles) Cuando se presiona o suelta una tecla o combina-
cin de teclas que produce un carcter ANSI estndar mientras un control o formulario tiene el enfoque. Un
formulario slo puede tener el enfoque si todos los controles visibles en el formulario estn desactivados o no
hay controles en el formulario.Por ejemplo, el evento KeyPress se puede utilizar para responder a pulsaciones de
teclas introducidas en un cuadro de texto o cuadro combinado. Para las pulsaciones no reconocidas por Key-
Press, como las teclas de funcin o de desplazamiento, utilice los eventos KeyDown y KeyUp.El evento Key-
Press tambin ocurre si se enva una pulsacin que produzca un carcter ANSI estndar en un formulario o con-
trol usando la accin EnviarTeclas en una macro o la instruccin SendKeys en Visual Basic.Un formulario reci-
be tambin todos los eventos KeyPress (incluso los de los controles) antes de que ocurran para los controles si se
establece la propiedad TeclaDePresentacinPreliminar (KeyPreview) del formulario a S.Si se mantiene presio-
nada una tecla, el evento KeyPress ocurrir repetidamente.
KeyUp
AlSubirTecla (OnKeyUp) (formularios, controles) Cuando suelta una tecla presionada mientras un control o
formulario tiene el enfoque. El objeto con el enfoque recibe todas las pulsaciones. Un formulario slo puede
tener el enfoque si todos los controles visibles en el formulario estn desactivados o no hay controles en el for-
mulario.El evento KeyUp tambin ocurre si se enva una pulsacin a un formulario o control usando la accin
EnviarTeclas en una macro o la instruccin SendKeys en Visual Basic.Un formulario recibe tambin todos los
eventos KeyUp (incluso los de los controles) antes de que ocurran para los controles si se establece la propiedad
TeclaDePresentacinPreliminar (KeyPreview) del formulario a S.Si se mantiene presionada una tecla, el evento
KeyUp ocurre despus de que hayan ocurrido todos los eventos KeyDown y KeyPress.
EVENTOS DE VENTANA
Los eventos de ventana ocurren cuando se abre, se ajusta el tamao o cierra un formulario o informe.
Evento Propiedad del evento Ocurrencia
Close
AlCerrar (OnClose) (formularios, informes) Cuando se cierra un formulario o informe y se elimina de la pantalla.
Load
AlCargar (OnLoad) (formularios) Cuando se abre un formulario y se muestran sus registros. Este evento ocurre
antes del evento Current, aunque despus que el evento Open.
98 Generadores Pgs. 155
Open
AlAbrir (OnOpen) (formularios, informes) Cuando se abre un formulario pero antes de que se muestre el primer
registro.Cuando se abre un informe pero antes de que se imprima.
Resize
AlCambiarTamao (OnResize) (formularios) Cuando cambia el tamao de un formulario. Este evento
tambin ocurre cuando se muestra un formulario por primera vez.
Unload
AlDescargar (OnUnload) (formularios) Cuando se cierra un formulario y sus registros son transferidos, pero
antes de que sea eliminado de la pantalla. Este evento ocurre antes que el evento Close.
Propiedades de evento
Las propiedades de evento hacen que una macro o el procedimiento de evento asociado de Visual Basic se ejecu-
ten cuando tiene lugar un evento determinado. Por ejemplo, si escribe el nombre de una macro en la propiedad
AlHacerClic (OnClick) de un botn de comando, esa macro se ejecuta cuando se hace clic en el botn de co-
mando.
Valores
Para ejecutar una macro, escriba el nombre de la macro. Puede seleccionar una macro existente en la lista. Si la
macro se encuentra en un grupo de macros, aparecer en la lista bajo el nombre del grupo de macros, como
nombreGrupoMacro.nombreMacro.
Para ejecutar el procedimiento de evento asociado al evento, seleccione [Procedimiento de evento] en la lista.
Nota: Aunque el uso de un procedimiento de evento es el mtodo recomendado para ejecutar cdigo de Visual
Basic en respuesta a un evento, tambin es posible ejecutar una funcin definida por el usuario cuando tiene
lugar un evento. Para ejecutar una funcin definida por el usuario, incluya un signo igual (=) antes del nombre de
la funcin y parntesis despus de ella, como por ejemplo =nombreFuncin( ).
Puede establecer las propiedades de evento en la hoja de propiedades de un objeto, en una macro, o utilizando
Visual Basic. Observe que no puede establecer ninguna propiedad de evento mientras da formato o imprime un
formulario o un informe.
Ejemplos
Para ejecutar Use la sintaxis Ejemplo:
Macro "nombreMacro" Button1.OnClick = "miMacro"
Procedimiento de evento "[Procedimiento de evento]" Button1.OnClick = "[Procedimiento de evento]"
Funcin definida por el usuario "=nombreFuncin( )" Button1.OnClick = "=miFuncin ()"
Generadores
Puede usar generadores para ayudarle a establecer una propiedad de evento. Para utilizarlos, haga clic en el
botn Generar situado a la derecha del cuadro de propiedades o haga clic con el botn secundario del ratn sobre
el cuadro de propiedades y a continuacin haga clic en Generar del men contextual. En el cuadro de dilogo
Elegir generador, seleccione:
El Generador de macros para crear y especificar una macro para esta propiedad de evento. Tambin
puede usar el Generador de macros para editar una macro ya especificada por la propiedad.
El Generador de cdigo para crear y especificar un procedimiento de evento para esta propiedad de
evento. Tambin puede usar el Generador de cdigo para editar un procedimiento de evento ya especificado por
la propiedad.
El Generador de expresiones para seleccionar y especificar una funcin definida por el usuario para
esta propiedad de evento.
En Visual Basic, establezca la propiedad a una expresin de cadena.
EJ EMPLOS DE MACROS.
Ver Ejemplo, Pg. 72.
Abrir un Formulario con un botn desde otro Formulario
Arrastrar el Formulario a abrir (subformulario) a ventana accin de Macro. Guardar macro. Arrastrar Macro
desde ventana Base de datos a Formulario en diseo desde la que se quiere abrir el subformulario. Crea botn.
Al abrir formulario ir al registro que se quiera
Utilizar 'Where condition' en los argumentos de OpenForm: Ej.: [Supplier ID]=Forms![Suppliers]![Supplier ID]
(va al mismo Supplier ID de Formulario principal).
Para mantener los reg. correspondientes en Subformulario al mover reg. de Formulario:
En OnCurrent (prop. de Formulario principal) nombre de macro que tendr:
Condicin Accin
IsLoaded("Product List") OpenForm (con'Where')
'Where' es el del ejemplo de arriba. IsLoaded es el subformulario slo si ya esta abierto. Ver ej. de form: Suppli-
ers. Review Products. Para funcin IsLoaded() Ver Pg 115.
Otro Ej.: Ejecute una accin AbrirFormulario en una macro que se ejecuta en respuesta al evento OnCurrent del
formulario Proveedor. Puede hacer que el formulario Lista de productos muestre los registros cuyo valor en el
campo IdProveedor en la tabla base coincida con el valor del campo IdProveedor del formulario. Establezca el
argumento de la Condicin WHERE de la accin como se indica: [IdProvee-
GUIA ACCESS 99
dor]=Forms![Proveedores]![IdProveedor]. Despus de crear la macro, establezca la propiedad AlActivarRegistro
(OnCurrent) del formulario Proveedores al nombre de la macro.
Utilizar accin EstablecerValor (SetValue) para dar valor a campo
Ej.: Poner Supplier ID a Subformulario con valor ID de formulario principal al crear producto. Macro Attached
to Add Products button of Suppliers Form. Actions: Echo, OpenForm, SetValue. Properties of SetValue: Item:
Forms![Add Products]![Supplier ID]. Expression: [Supplier ID]
Acciones de navegacin
GoToControl (enter only the control name), GoToPage (move to page and to its first control) ,GoToRecord (to a
record or a new one, to the same control as in the previous record). Ej.: Enfocar en un Control para comenzar
edicin.
Para imprimir reg. actual
Para cualquier tabla: macro asociada a botn de formulario con:
Accin: DoMenuItem. Arguments: Menu Bar: Form. Menu Name: Edit. Command: Select Record (current).
Siguiente accin: Print.
En Access 97, la accin EjecutarComando reemplaza a la accin EjecutarElementoMen (DoMenuItem).

Para filtrar:
Adjuntar macro a OnPush de botn para buscar pas con ApplyFilter action. Argumento Filter Name para apli-
car un filtro guardado como consulta o condicin Where para, por ej.: [Ship Country]=France.
Ej. para Telfonos: Crear botones para cada letra, y en OnPush de cada uno nombre de macro segn letra (Gru-
poTelfono.A). Crear Grupo Macros (GrupoTelfono) con cada Nombre Macro igual a letra: A . Accin: Apply
filter. En 'Where cond.': [Company Name] Like "A*" (asociado a botn 'A')
Buscar reg. desde Cuadro Combinado:
Ej: Cuadro comb. Buscar Otro Proveedor. Macro: Poner nombre macro en AfterUpdate prop. del control Cuadro
comb.: Accin: GoToControl. Arg. Control Name: [Company Name] (Nombre con el Campo a buscar del
Formulario). Accin: FindRecord. Arg. FindWhat: =['Nombre de Control Comb.'], que ya tendr el Proveedor a
buscar por accin anterior. Arg. Seach In: Current Field , que es [Company Name] que qued enfocado en
GoToControl.
Validar:
Macro en BeforeUpdate de Propiedades del Formulario:
Para condiciones en mismo campo:
Condition Action
[Country] In ("France","Italy","Spain") and Len([Postal Code])<> 5 MsgBox (deben ser 5 caracteres)
... CancelEvent (no guarda)
[Country]In ("Australia", "Singapore") and Len([Postal Code])<>4 MsgBox
... CancelEvent
(siempre realizar esta accin) GoToControl (vuelve)
Requerir entrada:
Macro en BeforeUpdate de Formulario:
Para diferentes campos:
[First Name] Is Null MsgBox
... CancelEvent
... GoToControl
... StopMacro (ya no sigue)
[Last Name]Is Null MsgBox
... CancelEvent
... GoToControl
I mprimir informe mediante botn:
Crear macro arrastrando Report (Invoice, un registro) a Macro. Action: OpenReport. En Prop: 'Where cond.':
[Order ID]=Forms![Order Review]![Order ID]. Prop. View: Print Preview ( Print: inmediato). Adjuntar a
OnPush de botn para imprimir.
I mprimir slo uno (pas, etc) o todos mediante Control Cuadro Lista:
Crear control cuadro lista (Select Country) con RowSource a Consulta Country List (pases por orden alfabti-
co) y AfterUpdate a macro con accin OpenReport y en prop. Where Cond.: =IIf(Forms![Print Reports Dia-
log]![Select Country] IsNull, "","[Country Name]=Forms![Print Reports Dialog]![Select Country]" (si nada,
imprime todos, las dos comillas juntas)
Para seleccionar con parmetros registros a imprimir
(Start Date y End Date): en 'Where': [Order Date] Between Forms![Print Reports Dialog]![Start Date] And
Forms![Print Reports Dialog]![End Date] o en Filter Name poner el nombre de consulta con parmetros.
Escoger I nforme a imprimir mediante cuadro de dilogo
Por medio de grupo de opciones control [Report to Print] dentro de Formulario dilogo modal (Pop-Up) Print
Reports Dialog.: (Modal: se puede mover, pero no cambiar tamao. Queda al frente de cualquier otra ventana y
no se puede acceder a otra mientras est abierto. Se utiliza para pedir informacin)
100 Generadores Pgs. 155

Report to Print: (Grupo) (Botones)

Dos macros iguales a adjuntar cada una a cada OnPush de cada botn. (la primera con Print Preview en argu-
mento de OpenReport y la 2da con el argumento Print.):
Condition Action
SetValue (para esconder el Pop-Up Form)
[Report to Print]=1 OpenReport (basado en parmetros Fecha)
[Report to Print]=2 OpenReport (basado en Lista de Categorias)
[Report to Print]=3 OpenReport (pide criterios- Mailing labels)
Close (el Pop-Up Form)
Despus de escoger el grupo de opciones, se escoge entre botones.
En OpenReport de 1 se basa en Consulta de Parmetros. Pregunta automticamente los parmetros de la consulta
al ejecutarse OpenReport basado en la consulta.
En OpenReport de 2 se basa en el valor de una Lista. Ver Imprimir slo uno o todos arriba. El cuadro de
Category to Print se hace visible por macro adjunta a OnOpen y AfterUpdate del grupo si est seleccionada la
opcin 2, y oculta si no (propiedad Visible a si/no).
En OpenReport de 3 abre otro Form. Emergente preguntando qu pas a imprimir y despus la accin ApplyFil-
ter. Estas accionaes se ejecutan antes por macro adjunta a OnOpen del Informe. Ver ms adelante Seleccionar
registros al abrir Informe.
Ocultar seccin de informe.
Una seccin se puede ocultar con macro adjunta a su OnFormat con Set Value a la propiedad PrintSection.
Hacer visible o no un control.
Ej.: Exceeded Goal! (Control texto):
[Total for Salesperson]>5000 SetValue Prop. Item: [Exceeded Goal].Visible. Prop. Expression: Yes
Not [Total for Salesperson]>5000 SetValue " No
Poner macro en propiedad OnFormat de su seccin.
Comenzar un grupo de informe (pas) por pg. 1:
Crear Text Control en Page Footer con ControlSource: =[Country]&" - "& Page.
Crear macro con SetValue, Item: Page, Expr.: 1. En seccin grupo Country Footer, prop. Force New Page:
After Section. En seccin grupo Country Header, prop. OnFormat: nombre macro.
Para cortar una pgina (Slo las 10 primeras lneas en la primera).
Text Box "Counter"(Prop.: Visible: No, Control Source: =1, Running Sum : Over All (suma 1 cada vez).) en
Detail Section. Colocar un Break Control al fin de Detail. Hacer 2 macros en un grupo de macro. 1ra. (hide):
SetValue of Page Break Visible: No and attached to OnFormat prop. of Page Header section. 2da. (show): Con-
dition to check value of hidden control: [Counter]=10 Action Set Value: Item: [Hidden Page Break].Visible.
Expression: Yes). Attach to OnFormat prop of Detail Section. Mejor en condicin: [Counter]=10 And Format-
Count=1. Con FormatCount=1 evita vuelva a repetir nueva pagina si qued un espacio despus del Page Break.
Para que rompa nueva pgina en todas despus de cada 10 lneas: [Counter]Mod 10 = 0 en condicin.
Totalizar por pgina:
[Page Total] de una columna [Sale Amount]. 2 macros en una macro grupo. 1ra: SetValue. Item: [Page Total],
Expr.: [Page Total]+[Sale Amount]. Attached to OnPrint prop. (mejor para totales que OnFormat) of Detail
section. 2da.: SetValue. Item: [Page Total], Expr.: =0. Attached to OnPrint (mejor que OnFormat) prop of Page
Header. El [Page Total] estara en Page Footer section.
Seleccionar registros con cuadro de dilogo al abrir I nforme
Para abrir formulario de dilogo modal para requerir criterios utilizar prop. OnOpen (AlAbrir) del Informe. Para
definir formulario como modal poner arg. Window Mode a Dialog de accin OpenForm . Queda al frente de
Sales by Date

Sales by Category
Customer Mailing Labels
Print Preview
Print
Category to print:
Beverages
Condiments
GUIA ACCESS 101
cualquier otra ventana y no se puede acceder a otra mientras est abierto. Se puede esconder (Visible No) pero
no cerrar para tener acceso a sus datos. Si no se utiliza Modal, la macro no se suspende.

Print labels for:












Macro grupo (Country Filter) en OnOpen de Report. Nombre primera macro: Open, Accin: OpenForm,
Prop.:View: Form, Data Mode: Edit, Window mode: Dialog. Suspende la ejecucin.
Siguiente lnea: Condicin (Not IsLoaded(Country Filter Dialog). (Para funcin IsLoaded() Ver Pg 115).
Accin: CancelEvent (se seleccion Botn Cancel).
Siguiente lnea: Condicin: : ... Accin: Stop Macro. Siguiente lnea: Condicin: IsLoaded(Country Filter
Dialog) and Forms![Country Filter Dialog]![Print Labels]=2. Accin: Select Object. (OK, seleccionar Informe
por pas).
Siguiente lnea: Condicin: ... Accin: Apply Filter, Prop. Where: [Country]=Forms![Country Filter Dia-
log]![Country].
Siguiente lnea: Nombre macro: OK (attached to OnPush of OK button en formulario). Accin: SetValue. (Visi
ble no)Oculta formulario y devuelve ejecucin a macro Open.
Siguiente lnea: Nombre macro: Cancel (attached to OnPush of Cancel button en formulario). Accin: Close.
Cierra formulario y devuelve ejecucin a macro Open.
Siguiente lnea. Nombre macro: Close. Accin: Close (Formulario).
Propiedad OnClose del Informe a macro Close.
Pedir fecha de da (dilogo emergente modal) para mostrar cantidad e importe de sus pedidos.
A Pop-up form is a moveable form, fixed in size, that you can use to display or collect information.
Can be Modeless: With access to other objects while open. Modal: no access.
Ej.: Daily Order Totals abre el Order Date Dialog Form (Pop-up). Tiene un control unbound [Order Date], un
botn : View Totals, y otro botn: Cancel. Prop: Pop Up (Emergente): Yes, Modal: Yes.
Macro: Order Date Dialog (Attached to the View Totals and Cancel buttons):
Name Action Com.
View Totals. SetValue Hide the Form (Item: Visible, Expression: No)
OpenForm Open Daily Order Total Form
Close Close pop-up form
Cancel Close " "
Arg. de OpenForm: Name: Daily Order Totals (con fecha, Cantidad e Importe), View: Form, Where: [Order
Date]=Forms![Order Date Dialog]![Order Date], Data Mode: Read Only, Window Mode: Normal.

Si quisiera ver siempre los de ayer: en Where: [Order Date]=Date()-1. No se necesitara el Dilogo, slo un
botn en Formulario Principal con OnPush a Open Form.



MODULOS (Visual Basic)
Un mdulo es una coleccin de declaraciones, instrucciones y procedimientos almacenados juntos como una
unidad con nombre. Access tiene dos tipos de mdulos: mdulos estndar y mdulos de clase. Los mdulos de
formulario y de informe son mdulos de clases que contienen cdigo que es local para el formulario o informe.
A menos que se declare explcitamente privado para el mdulo en el que aparecen, los procedimientos de los
mdulos estndar se reconocen y pueden ser llamados por procedimientos de otros mdulos de la misma base de
datos o en bases de datos de referencia. Cada procedimiento en un mdulo puede ser un procedimiento Function
o un procedimiento Sub.
Cundo utilizar Mdulos de Visual Basic
Utilice Visual Basic en lugar de macros cuando desee:
Facilitar el mantenimiento de la base de datos. Puesto que las macros son objetos independientes de los
formularios y los informes que las utilizan, puede resultar difcil mantener una base de datos que contenga mu-
All countries
Specific country
[Enter Canada, UK or USA]
OK Cancel

102 MENUS - MODULOS. Pgs. 155
chas macros que responden a eventos de formularios e informes. Por contraste, los procedimientos de evento de
Visual Basic se incorporan a la definicin del formulario o el informe. Si mueve un formulario o un informe de
una base de datos a otra, se movern con l procedimientos de evento incorporados en el formulario o el informe.
Cree sus propias funciones. Access incluye muchas funciones incorporadas, como la funcin Inters
(IPmt), la cual calcula el pago de intereses. Puede utilizar estas funciones para realizar clculos sin necesidad de
crear expresiones complicadas. Mediante Visual Basic, puede crear sus propias funciones para realizar clculos
que superen la capacidad de una expresin o reemplacen expresiones complejas. Adems, puede utilizar las
funciones que cree en expresiones para aplicar una operacin comn a ms de un objeto.
Enmascarar mensajes de error. Cuando ocurre algo inesperado mientras trabaja el usuario con la base de
datos y Access muestra un mensaje de error, el mensaje puede resultar bastante desconcertante para el usuario,
especialmente si no conoce Access. Con Visual Basic, puede detectar el error cuando se produce y mostrar su
propio mensaje o realizar alguna accin.
Crear o manipular objetos. En la mayora de los casos, observar que es ms fcil crear y modificar un
objeto en la vista Diseo de ese objeto. Sin embargo, en algunas situaciones, es posible que desee manipular la
definicin de un objeto en cdigo. Utilizando Visual Basic, puede manipular todos los objetos de una base de
datos, as como la base de datos propiamente dicha.
Realizar acciones a nivel de sistema. Puede ejecutar la accin EjecutarAplicacin en una macro para
ejecutar otra aplicacin basada en Windows o en MS-DOS desde su aplicacin, en cambio una macro no sirve
para hacer mucho ms fuera de Access. Con Visual Basic, puede comprobar si hay un archivo en el sistema,
emplear Automatizacin o intercambio dinmico de datos (DDE) para comunicar con otras aplicaciones basadas
en Windows como Excel, y llamar a funciones de bibliotecas de vnculos dinmicos (DLL) de Windows.
Manipular registros uno a uno. Puede emplear Visual Basic para explorar una serie de registros uno a
uno y realizar una operacin en cada registro. Por contraste, las macros trabajan con conjuntos de registros com-
pletos.
Pasar argumentos a los procedimientos de Visual Basic. Puede establecer argumentos para acciones de
macro en la parte inferior de la ventana Macro cuando crea la macro, pero no puede cambiarlos cuando se ejecu-
ta la macro. Sin embargo, con Visual Basic puede pasar argumentos a su cdigo en el momento que se ejecuta o
utilizar variables para argumentos, algo que no puede hacer en macros y que proporciona una gran flexibilidad
en la forma de ejecutar los procedimientos de Visual Basic.
MENUS - MODULOS.
MENU EDI CI ON
Buscar (CTRL+B): Busca una cadena de caracteres; por ejemplo, el apellido de un empleado en una hoja de
datos o formulario, o una palabra clave de Visual Basic en la ventana Mdulo.
Buscar siguiente (F3): Busca la siguiente aparicin de una cadena introducida en el cuadro de dilogo Buscar.
Reemplazar (CTRL+L): Busca una cadena de caracteres, como por ejemplo, el apellido de un empleado en una
hoja de datos o formulario, o una palabra clave de Visual Basic en la ventana Mdulo, y la reemplaza por otra
cadena.
Aplicar (TAB)/Anular (RETROCESO o MAY+TAB) sangra: Desplaza el cdigo seleccionado o la lnea en
que est el punto de insercin cuatro espacios a la derecha, de forma predeterminada. Se utiliza para dar formato
y alinear bloques de cdigo. Para cambiar este desplazamiento predeterminado, cambie la opcin Ancho de tabu-
lacin en la ficha Mdulo del cuadro de dilogo Opciones.
Lista de propiedades y mtodos: (CTRL+J): Muestra todas las propiedades y mtodos de la instruccin que
contiene el punto de insercin. Utilice esta opcin si prefiere crear instrucciones explcitamente (en lugar de
automticamente) o bien para editar instrucciones existentes.
Lista de constantes: (CTRL+MAY+J): Muestra todas las constantes de la instruccin que contiene el punto de
insercin. Utilice esta opcin si prefiere crear instrucciones explcitamente (en lugar de automticamente) o bien
para editar instrucciones existentes.
Informacin rpida: (CTRL+I): Muestra informacin acerca de la sintaxis de la variable, constante o proce-
dimiento situado en el punto de insercin. Utilice esta opcin si prefiere crear instrucciones explcitamente (en
lugar de automticamente) o bien para editar instrucciones existentes.
Informacin de parmetros: (CTRL+MAY+I): Muestra todos los parmetros para la instruccin que contiene
el punto de insercin. Utilice esta opcin si prefiere crear instrucciones explcitamente (en lugar de automtica-
mente) o bien para editar instrucciones existentes.
Palabra completa: (CTRL+BARRA): Completa la escritura de un fragmento de palabra de una propiedad, un
mtodo o una constante. Muestra todas las opciones posibles si el fragmento de palabra no es exclusivo.
Marcador: Alterna entre agregar o eliminar un marcador (mostrado como un rectngulo azul en la barra indica-
dora de margen) en la lnea de texto actual de la ventana Mdulo. Utilice los marcadores para designar lneas de
cdigo importantes en mdulos largos y para desplazarse entre ellos.
MENU VER
Definicin (MAY+F2): Presenta el cdigo de procedimiento del nombre de procedimiento que se indica en el
punto de insercin activo de la ventana Mdulo. SI el procedimiento est definido en un biblioteca de vnculos
dinmicos (..dll), Access muestra la instruccin Declare utilizada para definir el punto de entrada .dll.
GUIA ACCESS 103
ltima posicin (CTRL+MAY+F2): Vuelve a la ltima lnea del procedimiento anterior que estuvo viendo en
la ventana Mdulo.
Examinador de objetos (F2): Presenta todos los mtodos y propiedades de la base de datos activa, de otras
bases de datos disponibles, y de las aplicaciones disponibles que soportan Visual Basic. Se utiliza para ver e
insertar la sintaxis de un mtodo o una propiedad seleccionados. Ver Pg 116.
Ventana de depuracin (CTRL+S): Presenta la ventana Depuracin para permitir la prueba y depuracin del
cdigo. Ver Utilizacin, Pag 116.
Pila de llamadas (CTRL+H): Presenta una lista de las llamadas a procedimientos activas, comenzando por el
llamado ms recientemente, de forma que pueda seguir la secuencia de llamadas. Access slo habilita este botn
y comando cuando la ventana Mdulo o la ventana Depurar estn abiertas y la ejecucin del cdigo est suspen-
dida. Ver Pg 119.
MENU I NSERTAR
Procedimiento: Inserta una instruccin de declaracin de procedimiento despus del punto de insercin en el
mdulo activo, o al final de un procedimiento si el punto de insercin est dentro de un procedimiento.
Mdulo: Inserta un nuevo mdulo en la base de datos activa y presenta su seccin Declaraciones en la ventana
Mdulo.
Mdulo de clase: Inserta un mdulo de clase que no est asociado con un formulario o informe en la base de
datos activa y muestra su seccin Declaraciones en la ventana Mdulo.
Archivo: Inserta cdigo de un archivo de texto en el mdulo activo antes de la lnea que contiene el punto de
insercin.
MENU DEPURAR
Compilar los mdulos cargados: Compila todos los procedimientos de los mdulos abiertos. Se utiliza para
tratar errores de tiempo de compilacin y errores de sintaxis.
Compilar todos los mdulos: Compila todos los procedimientos de todos los mdulos de la base de datos acti-
va, tanto si estn cargados como si no lo estn.
Compilar y guardar todos los mdulos: Compila y guarda todos los mdulos en la base de datos. Si cambia el
nombre del proyecto, su base de datos no estar ya compilada. Debe cerrar y volver a abrir la base de datos antes
de volver a ejecutar el comando Compilar y guardar todos los mdulos.
Paso a paso por instrucciones: (F8): Ejecuta una instruccin cada vez, incluyendo las instrucciones dentro de
los procedimientos a los que se ha llamado.
Paso a paso por procedimientos: (MAY+F8): Ejecuta una instruccin cada vez, tratando a cada procedimiento
llamado como un solo paso.
Paso a paso para salir: (CTRL+MAY+F8): Ejecuta todas las lneas de cdigo y los procedimientos anidados
en el modo de interrupcin comenzando por la instruccin ejecutable actual y, a continuacin, devuelve la ejecu-
cin a la siguiente instruccin ejecutable en el procedimiento anterior del rbol de llamadas. Utilice esta opcin
para evitar ir paso a paso por cada lnea de cdigo en procedimientos llamados.
Ejecutar hasta el cursor: (CTRL+F8): Ejecuta el procedimiento desde la instruccin ejecutable activa hasta la
lnea seleccionada o el punto de insercin (que debe estar dentro del mismo procedimiento) y vuelve a colocarse
en modo interrupcin. Se utiliza para evitar los pasos que no son necesarios a travs de cada lnea de cdigo.
Agregar inspeccin: Crea una expresin de inspeccin en la expresin seleccionada (por ejemplo, una variable,
una propiedad o una llamada a una funcin) en la ventana Mdulo, de forma que se pueda examinar sus valores
en el panel Inspeccin de la ventana Depuracin. Ver Pg 119.
Modificar inspeccin: Modifica o elimina una expresin de inspeccin en la expresin seleccionada (por ejem-
plo, una variable, una propiedad o una llamada a una funcin).
Inspeccin rpida (MAY+F9): Presenta el valor de una expresin seleccionada (por ejemplo una variable,
propiedad, o una llamada a una funcin). Opcionalmente, se puede agregar la expresin al panel de Inspeccin
de la ventana Depurar para continuar examinando su valor.
Alternar punto de interrupcin (F9): Alterna entre establecer y quitar un punto de interrupcin. Access sus-
pende la ejecucin del cdigo y entra en modo de interrupcin cuando alcanza una lnea de cdigo que contiene
un punto de interrupcin. El establecimiento de un punto de interrupcin pone la lnea en negrita y resaltada.
Borrar todos los puntos de interrupcin (CTRL+MAY+F9): Elimina todos los puntos de interrupcin en
todos los procedimientos, de todos los mdulos de la base de datos activa.
Establecer la instruccin siguiente (CTRL+F9): Cambia la secuencia de ejecucin del cdigo, de forma que la
instruccin en la que est el punto de insercin es la siguiente a ejecutar. La instruccin a ejecutar debe estar
dentro del procedimiento actualmente en ejecucin. Se utiliza durante la depuracin, para volver a ejecutar una
instruccin o para saltar las instrucciones que no se desea ejecutar.
Mostrar la instruccin siguiente: Muestra la siguiente instruccin ejecutable. Se utiliza cuando se examinan
otras instrucciones durante la depuracin, para volver a la posicin original.
MENU EJ ECUTAR
Iniciar o continuar (F5): Continua la ejecucin del cdigo despus de que haya sido suspendida, a menos que la
suspensin impida que el cdigo contine ejecutndose (como, por ejemplo, en el caso de un error de divisin
por cero). Tambin ejecuta un procedimiento seleccionado que no tiene argumentos.
104 Procedimientos Pgs. 155
Terminar: Termina la ejecucin de los procedimientos Visual Basic y borra todas las variables privadas, aunque
conserva todas las variables pblicas. Se utiliza para reinicializar los procedimientos de un mdulo que se ha
modificado antes de volver a ejecutarlo.
Restablecer: Termina la ejecucin de los procedimientos de Visual Basic y borra todas las variables pblicas y
privadas. Se utiliza para reinicializar todo el cdigo de un mdulo que haya cambiado antes de volverlo a ejecu-
tar.
MENU HERRAMI ENTAS
Referencias: Muestra una lista de las referencias disponibles de bibliotecas de objetos y bases de datos. Se utili-
za para hacer que los procedimientos de otras bases de datos se puedan llamar desde la base de datos activa, o
para cambiar el orden en el que Microsoft Access busca en las bibliotecas de objetos y en las bases de datos para
resolver las referencias.
Controles ActiveX: Registra o elimina controles ActiveX en la base de datos de registro de Windows (que se
utiliza para registrar informacin acerca de las aplicaciones, por ejemplo el nombre de archivo y la ruta de acce-
so). El registro determina si los controles ActiveX estn disponibles o no para ser utilizados.

Ventana Mdulo
Se componde del Cuadro objeto y del Cuadro Procedimiento, seccin Declaraciones y seccin Procedimientos,
botones Ver Procedimiento y Ver mdulo completo (al lado barra desplazamientio horizontal.).
Por ej. , para ver o agregar un procedimiento de formulario, elija uno de los objetos del formulario del Cuadro
objeto y luego elija un evento del Cuadro Procedimiento. Los nombres de los eventos que ya tienen procedi-
mientos estn en negrita.
Para agregar un procedimiento personalizado a un mdulo estndar, debajo de la seccion Declaraciones escriba
Sub o Function y el nombre del procedimiento y sus argumentos, y despus presione INTRO. Despus escriba el
cdigo que desse para el procedimiento.
Mdulos de clases
Los mdulos de formularios y los mdulos de informes son mdulos de clases que estn asociados con un for-
mulario o informe determinado. Los mdulos de formularios y de informes contienen a menudo procedimientos
de evento que se ejecutan en respuesta a un evento en un formulario o informe. Puede usar los procedimientos de
evento para controlar el comportamiento de los formularios e informes, y sus respuestas a las acciones de los
usuarios, tal como hacer clic con el ratn en un botn de comando.
Cuando se crea el primer procedimiento de evento para un formulario o informe, Access crea automticamente
un mdulo de formulario o un mdulo de informe. Para ver el mdulo para un formulario o informe, haga clic en
Cdigo en la barra de herramientas en la vista Diseo de informe o de formulario.
Los procedimientos en los mdulos de formularios y de informes pueden llamar a procedimientos que haya
agregado a los mdulos estndar.
En Access 95, los mdulos de clase slo existen en asociacin con un formulario o informe. En Access 97, los
mdulos de clase pueden existir tambin con independencia de un formulario o informe, y este tipo de mdulo
de clase se enumera en la ficha Mdulos de la ventana Base de datos. Puede usar un mdulo de clase en la ficha
Mdulos para crear una definicin para un objeto personalizado.
Mdulos estndar
Los mdulos estndar contienen procedimientos generales que no estn asociados con ningn otro objeto y pro-
cedimientos usados con frecuencia que pueden ser ejecutados desde cualquier parte de la base de datos.
La lista de mdulos estndar de la base de datos se puede ver haciendo clic en la ficha Mdulos de la ventana
Base de datos. Los formularios, informes y mdulos estndar se enumeran tambin en el Examinador de objetos.
Procedimientos
Un procedimiento es una unidad de cdigo de Visual Basic para aplicaciones. Un procedimiento contiene una
serie de instrucciones y mtodos que realizan una operacin o calculan un valor. Por ejemplo, el siguiente proce-
dimiento de evento usa el mtodo OpenForm para abrir el formulario Pedidos:
Private Sub AbrirPedidos_Click()
DoCmd.OpenForm "Pedidos"
End Sub
Hay dos tipos de procedimientos: Procedimientos Sub y Procedimientos Function.
Creacin de procedimiento personalizado
Al extender la base de datos para que incluya los procedimientos de Visual Basic para aplicaciones, puede per-
sonalizar la forma en la que las tablas, formularios, informes y consultas de la base de datos trabajan juntos. Hay
varios tipos de procedimientos. Puede crear un procedimiento de evento agregando cdigo a las plantillas prede-
finidas de un mdulo de formulario o un mdulo de informe. Tambin puede crear sus propios procedimientos
Function o procedimientos Sub en mdulos estndar o en mdulos de clase (que incluyen los mdulos de formu-
larios e informes).
Puede llamar a procedimientos en un mdulo estndar o en mdulo de clase desde expresiones, desde otros pro-
cedimientos, procedimientos de evento, procedimientos de otros mdulos y macros. Los procedimientos de
GUIA ACCESS 105
evento se ejecutan automticamente en respuesta a eventos, como por ejemplo clics del ratn, que se producen
en un formulario, informe o control.
Para procedimiento de evento, ver a continuacin.
Para procedimiento Sub personalizado, Ver Pg 105.
Para procedimiento Function personalizado, Ver Pg 106.
Crear un procedimiento de evento
Access hace que sea fcil ejecutar cdigo en respuesta a una accin desarrollada por el usuario. Cuando se esta-
blece una propiedad del evento para un formulario, informe o control a [Procedimiento de evento], Access crea
la plantilla del procedimiento de evento. Todo lo que tiene que hacer es agregar el cdigo que desee ejecutar en
respuesta a un evento determinado en el formulario, informe o control. Por ejemplo, puede hacer que se ejecute
cdigo cuando un usuario hace clic en un botn de comando o cambia los datos.
1 Abra un formulario o informe en la vista Diseo de informe o en la vista Diseo del formulario.
2 Muestra la hoja de propiedades del formulario, informe o una seccin o control del formulario o infor-
me.
3 Elija la ficha Eventos.
4 Haga clic en la propiedad de evento del evento que desea que active el procedimiento. Por ejemplo, para
mostrar el procedimiento de evento para el evento Change, haga clic en la propiedad Al cambiar.
5 Haga clic en Generar prximo al cuadro de la propiedad para mostrar el cuadro de dilogo Elegir gene-
rador.
6 Haga doble clic en Generador de cdigo para mostrar las instrucciones Sub y End Sub del procedimien-
to de evento en el mdulo de formulario o mdulo de informe. Estas instrucciones definen o declaran, el proce-
dimiento de evento.
Access declara procedimientos de evento de forma automtica para cada objeto de un mdulo de formulario o
informe, usando la palabra clave Private para indicar que al procedimiento slo pueden tener acceso otros proce-
dimientos de ese mdulo.
7 Agregue el cdigo al procedimiento de evento que desee ejecutar cuando se produzca el evento. Por
ejemplo, para producir un sonido a travs del altavoz de la mquina cuando cambien los datos del cuadro de
texto NombreCompaa, agregue una instruccin Beep al procedimiento de evento NombreCompaa_Change,
como sigue:
Private Sub NombreCompaa_Change()
Beep
End Sub
El procedimiento de evento se ejecuta cada vez que se produce el evento Change para el objeto.
Ver Pg 90, Ejecutar Macro o Procedimiento de Evento. Ver Pg 94, Eventos.
Procedimientos Sub
Realizan una operacin o una serie de operaciones pero no devuelven un valor. Puede crear sus propios proce-
dimientos Sub o usar las plantillas de procedimientos de evento que Access crea por usted.
Cada formulario o informe de la base de datos tiene un mdulo de formulario o un mdulo de informe incorpo-
rado que contiene plantillas de procedimientos de evento. Puede agregar cdigo que se ejecute en respuesta a los
eventos que se produzcan en el formulario, en el informe o en los controles del formulario o informe. Cuando
Access reconoce que se ha producido un evento en un formulario, informe o control, ejecuta de forma automti-
ca el procedimiento de evento nombrado para el objeto o evento. Por ejemplo, puede escribir un procedimiento
de evento que establece el enfoque a un cuadro de texto Nombre esposo cuando el usuario selecciona la casilla
de verificacin Casado.
Sugerencia: Muchos de los asistentes (por ejemplo, el Asistente para botones de comando) que crean objetos
crean tambin procedimientos de evento para el objeto. Puede mirar estos procedimientos de evento para ver
ejemplos de cmo funcionan estos procedimientos.
Escribir un procedimiento Sub
Un procedimiento Sub es una serie de instrucciones Visual Basic, encerradas entre un par de instrucciones Sub y
End Sub, que realizan acciones especficas pero no devuelven ningn valor. Un procedimiento Sub puede acep-
tar argumentos, como constantes, variables o expresiones que le pasa el procedimiento que ha efectuado la lla-
mada. Si un procedimiento Sub no tiene argumentos, la instruccin Sub debe incluir un par de parntesis vaco.
El siguiente procedimiento Sub dispone de comentarios explicativos en cada lnea.
' Declara un procedimiento llamado ObtenInformacion
' Este procedimiento Sub no acepta argumentos
Sub ObtenInformacion()
' Declara una variable de cadena llamada respuesta
Dim respuesta As String
' Asigna el valor que devuelve la funcion InputBox a la varia-
ble respuesta
respuesta = InputBox(Prompt:="Cmo se llama?")
106 Procedimientos Pgs. 155
If respuesta = Empty Then
' Llama a la funcin MsgBox
MsgBox Prompt:="No ha escrito su nombre."
Else
' Funcin MsgBox concatenada con la variable respuesta
MsgBox Prompt:="Su nombre es " & respuesta
End If
' Fin del procedimiento Sub
End Sub
Crear un procedimiento Sub personalizado
1 Abra un nuevo mdulo.
Para abrir un nuevo mdulo estndar, haga clic en la ficha Mdulos de la ventana Base de datos y haga
clic en Nuevo. Para abrir un mdulo estndar existente, haga clic en la ficha Mdulos, seleccione el mdulo que
desea abrir y haga clic en Diseo.
Para abrir un mdulo de formulario o un mdulo de informe, abra el formulario o informe en la vista
Diseo y haga clic en Cdigo en la barra de herramientas.
Para abrir un nuevo mdulo de clase que no est asociado con un formulario o informe, en la ventana
Base de datos haga clic en Mdulo de clase en el men Insertar
. Para abrir un mdulo de clase existente, haga clic en la ficha Mdulos en la ventana Base de datos, seleccione
el mdulo que desea abrir y haga clic en Diseo.
2 Declare el procedimiento escribiendo la instruccin Sub.
3 Escriba un nombre de procedimiento, seguido inmediatamente de los argumentos entre parntesis. Por
ejemplo, la siguiente declaracin del procedimiento Sub MostrarEvento especifica (EventName As String) como
un argumento:
Sub MostrarEvento(EventName As String)
4 Agregue el cdigo Visual Basic para aplicaciones que realice la operacin que desea que realice el pro-
cedimiento.
En este ejemplo se utiliza la instruccin Sub para declarar el nombre, argumentos y cdigo que forman el cuerpo
del procedimiento Sub.
' Definicin del procedimiento Sub.
' Sub con dos argumentos.
Sub SubAreaPC(Largo, Ancho)
Dim Area As Double ' Declara la variable local.
If Largo = 0 Or Ancho = 0 Then
' Si cualquier argumento = 0.
Exit Sub ' Salir inmediatamente de Sub.
End If
Area = Largo * Ancho ' Calcula el rea del rectngulo.
Debug.Print Area ' Imprime Area en la ventana de depuracin.
End Sub
Procedimientos Function
Llamados a menudo simplemente funciones. Devuelven un valor, tal como el resultado de un clculo. Visual
Basic incluye muchas funciones incorporadas; por ejemplo, la funcin Now devuelve la fecha y hora actual.
Adems de estas funciones incorporadas, puede crear sus propias funciones personalizadas.
Puesto que las funciones devuelven valores, puede usarlas en expresiones. Puede usar funciones en expresiones
en muchos lugares de Access, incluyendo en una instruccin o mtodo de Visual Basic, en muchos valores de
propiedades o en una expresin de criterios en un filtro o consulta.
ste es un ejemplo de un procedimiento Function, PrimerDaDelMesSiguiente, que devuelve la fecha del primer
da del mes siguiente a la fecha actual:
Function PrimerDaDelMesSiguiente()
PrimerDaDelMesSiguiente = _
DateSerial(Year(Now), Month(Now) + 1, 1)
End Function
Esta funcin personalizada consiste en una nica instruccin de asignacin que asigna el resultado de una expre-
sin (en el lado derecho del signo igual [=]) al nombre de la funcin, PrimerDaDelMesSiguiente (en el lado
izquierdo del signo igual). La funcin calcula el resultado usando las funciones incorporadas de Visual Basic
DateSerial, Year, Now y Month.
Una vez haya creado esta funcin, puede usarla en una expresin prcticamente en cualquier parte de Access.
Por ejemplo, podra especificar que un cuadro de texto muestre el primer da del mes que sigue a la fecha actual
como el valor predeterminado estableciendo la propiedad ValorPredeterminado (DefaultValue) del control del
cuadro de texto a la siguiente expresin en la hoja de propiedades:
GUIA ACCESS 107
=PrimerDaDelMesSiguiente()
Nota: Para usar una funcin como valor de una propiedad, la funcin debe estar en el mdulo del formulario o
del informe, o en un mdulo estndar. No se puede usar una funcin en un mdulo de clase que no est asociada
con un formulario o informe como valor de propiedad de formulario o informe.
Los procedimientos Function y Sub pueden aceptar argumentos.
Escribir un procedimiento Function
Un procedimiento Function es una serie de instrucciones de Visual Basic encerradas entre dos instrucciones
Function y End Function. Un procedimiento Function es similar a un procedimiento Sub, aunque una funcin
puede devolver adems un valor. Un procedimiento Function acepta argumentos, como pueden ser constantes,
variables o expresiones que le pasa el procedimiento que efecta la llamada. Si un procedimiento Function no
tiene argumentos, la instruccin Function debe incluir un par de parntesis vacos. Una funcin devuelve un
valor asignndolo a su nombre en una o ms instrucciones del procedimiento.
En el siguiente ejemplo, la funcin Celsius calcula grados centgrados a partir de grados Fahrenheit. Cuando se
llama a la funcin desde el procedimiento Principal, se le pasa una variable que contiene el valor del argumento.
El resultado de los clculos se devuelve al procedimiento que efecto la llamada y se presenta en un cuadro de
mensaje.
Sub Principal()
temp = Application.InputBox(Texto:= _
"Por favor, introduzca la temperatura en grados F.", Tipo:=1)
MsgBox "La temperatura es " & Celsius(temp) & " grados C."
End Sub

Function Celsius(GradosF)
Celsius = (GradosF - 32) * 5 / 9
End Function
Crear una funcin personalizada
1 Abra un nuevo mdulo.
Para abrir un nuevo mdulo estndar, haga clic en la ficha Mdulos en la ventana Base de datos y haga
clic en Nuevo. Para abrir un mdulo estndar existente, haga clic en la ficha Mdulos, seleccione el mdulo que
desea abrir y haga clic en Diseo.
Para abrir un mdulo de formulario o un mdulo de informe, abra el formulario o informe en la vista
Diseo y haga clic en Cdigo en la barra de herramientas.
Para abrir un nuevo mdulo de clase que no est asociado con un formulario o informe, en la ventana
Base de datos haga clic en Mdulo de clase en el men Insertar
. Para abrir un mdulo de clase existente, haga clic en la ficha Mdulos en la ventana Base de datos, seleccione
el mdulo que desee abrir y haga clic en Diseo.
2 Declare la funcin escribiendo la instruccin Function.
3 Escriba un nombre de funcin, seguido inmediatamente por los argumentos de la funcin entre parnte-
sis. Por ejemplo, la siguiente declaracin de la funcin EstCargado especifica cadNombreFormulario como
argumento:
Function EstCargado(cadNombreFormulario As String) As Boolean
4 Agregue el cdigo Visual Basic para aplicaciones que realice la operacin o clculo que desea que re-
alice la funcin.
En este ejemplo se utiliza la instruccin Function para declarar el nombre, los argumentos y el cdigo que for-
man el cuerpo de un procedimiento Function. El ltimo ejemplo utiliza tipos forzados, argumentos Optional
inicializados.
' La siguiente funcin definida por el usuario devuelve
' la raz cuadrada del argumento que se le pasa.
Function CalculaRaizCuadrada(ArgNumerico As Double) As Double
If ArgNumerico < 0 Then ' Se evala el argumento.
Exit Function ' Salida hacia el procedimiento que llam a la
funcin.
Else
CalculaRaizCuadrada = Sqr(ArgNumerico) ' Devuelve la raz
cuadrada.
End If
End Function
El uso de la palabra clave ParamArray permite que una funcin acepte un nmero variable de argumentos. En la
siguiente definicin, PrimerArg se transfiere por valor.
Function CalcSum(ByVal PrimerArg As Integer, ParamArray OtrosArgs())
Dim ValorDevuelto
108 Objetos, propiedades, mtodos y eventos Pgs. 155
' Si se invoca la funcin como:
ValorDevuelto = CalcSum(4, 3 ,2 ,1)
' Las variables locales obtienen los valores
' siguientes: PrimerArg = 4,
' OtrosArgs(1) = 3, OtrosArgs(2) = 2, y as
' sucesivamente, asumiendo que el lmite inferior
' predeterminado para matrices es igual a 1.
'Los argumentos Optional ahora pueden tener valores predeterminados
y tipos distintos de Variant.
' Si los argumentos de una funcin se definen como:
Function MiFunc(MiCad As String, Optional MiArg1 As _ Integer = 5,
Optional MiArg2_ = "Pepa")
Dim RetVal
' La funcin puede ser invocada de las formas
' siguientes:
RetVal = MiFunc("Hola", 2, "Mundo") ' Se proveen los 3 argumentos.
RetVal = MiFunc("Prueba", , 5) ' Se omite el segundo argumento.
' Los argumentos uno y tres utilizan argumentos con nombre.
RetVal = MiFunc(MiCad:="Hola ", MiArg1:=7)
Objetos, propiedades, mtodos y eventos
Mtodo
Es toda accin que puede realizar un objeto. Por ejemplo, Add es un mtodo del objeto ComboBox ya que
sirve para aadir un nuevo elemento a un cuadro combinado.
El siguiente procedimiento utiliza el mtodo Add para aadir un nuevo elemento a un ComboBox.
Sub AadeElemen(nuevoElemento as String)
Combo1.Add nuevoElemento
End Sub
Propiedad
Es un atributo de un objeto que define una de las caractersticas del objeto, tal como su tamao, color o locali-
zacin en la pantalla, o un aspecto de su comportamiento, por ejemplo si est visible o activado. Para cambiar las
caractersticas de un objeto, se cambia el valor de sus propiedades
Para dar valor a una propiedad, hay que colocar un punto detrs de la referencia a un objeto, despus el nombre
de la propiedad y finalmente el signo igual (=) y el nuevo valor de la propiedad. Por ejemplo, el siguiente proce-
dimiento cambia el ttulo de un formulario de Visual Basic dando un valor a la propiedad Caption.
Sub CambiaNombre(nuevoTitulo)
miForm.Caption = nuevoTitulo
End Sub
Hay propiedades a las que no se puede dar valor. El tema de ayuda de cada propiedad indica si es posible leer y
dar valores a la propiedad (lectura/escritura), leer slo el valor de la propiedad (slo lectura) o slo dar valor a la
propiedad (slo escritura).
Se puede obtener informacin sobre un objeto devolviendo el valor de una de sus propiedades. El siguiente pro-
cedimiento utiliza un cuadro de dilogo para presentar el ttulo que aparece en la parte superior del formulario
activo en ese momento.
Sub NombreFormEs()
formNonmbre = Screen.ActiveForm.Caption
MsgBox formNombre
End Sub
Objeto
Representa un elemento de una aplicacin, como una hoja de clculo, una celda, un diagrama, un formulario o
un informe. En cdigo de Visual Basic, un objeto debe identificarse antes de se pueda aplicar uno de los mtodos
del objeto o cambiar el valor de una de sus propiedades.
Una coleccin es un objeto que contiene varios objetos que normalmente, pero no siempre, son del mismo
tipo. En Excel, por ejemplo, el objeto Workbooks contiene todos los objetos Workbook abiertos. En Visual
Basic, la coleccin Forms contiene todos los objetos Form existentes en una aplicacin.
Los elementos de una coleccin se pueden identificar mediante su nmero o su nombre. Por ejemplo, en el si-
guiente procedimiento, Libro(1) identifica al primer objeto Workbook abierto.
Sub CierraPrimero()
Libro(1).Close
End Sub
El siguiente procedimiento utiliza un nombre especificado como cadena para identificar un objeto Form.
GUIA ACCESS 109
Sub CierraForm()
Forms("MiForm.frm").Close
End Sub
Tambin es posible operar al mismo tiempo sobre toda una coleccin de objetos siempre que los objetos compar-
tan mtodos comunes. Por ejemplo, el siguiente procedimiento cierra todos los formularios abiertos.
Sub CierraTodos()
Forms.Close
End Sub
Evento
es toda accin que puede ser reconocida por un objeto, como puede ser el clic del ratn o la pulsacin de una
tecla y para la que es posible escribir cdigo como respuesta. Los eventos pueden ocurrir como resultado de una
accin del usuario o del cdigo de l programa, tambin pueden ser originados por el sistema.
Ver Pg 94, Eventos.
Ejecucin de cdigo
El cdigo Visual Basic para aplicaciones se ejecuta en Access ejecutando un procedimiento Sub o un procedi-
miento Function. Los procedimientos contienen una serie de instrucciones y de mtodos que realizan una opera-
cin o calculan un valor. Los procedimientos se almacenan en unidades llamadas mdulos. Sin embargo, un
mdulo no se ejecuta; en su lugar, se llama a los procedimientos desde expresiones, otros procedimientos o ma-
cros. Los procedimientos de evento de los mdulos de formularios o informes se ejecutan tambin en respuesta a
las acciones de los usuarios.
Estas son las formas de ejecutar cdigo Visual Basic en Microsoft Access:
Cree un procedimiento de evento. Cuando el usuario realice una accin que provoque ese evento, se
ejecuta el procedimiento de evento. Por ejemplo, puede agregar cdigo al procedimiento de evento Click de un
botn de comando para que abra un formulario cuando el usuario haga clic en el botn.
Use una funcin en una expresin o en el panel Inmediato de la ventana Depuracin. Por ejemplo,
puede usar una funcin en una expresin que defina un campo calculado en un formulario, informe o consulta.
Las expresiones se pueden usar como valores de las propiedades en las consultas y filtros, en macros y acciones,
en instrucciones y mtodos de Visual Basic o en las instrucciones SQL.
Llame a un procedimiento Sub en otro procedimiento o en el panel Inmediato de la ventana De-
puracin. Si ejecuta cierto cdigo con frecuencia, puede ponerlo en un procedimiento Sub. En lugar de repetir
en cada procedimiento el cdigo Visual Basic que realiza la operacin, lo escribe una vez en el procedimiento
comn y luego llama al procedimiento comn cada vez que desee realizar la operacin.
Haga clic en el comando Iniciar o continuar en el men Ejecutar de la ventana Mdulo para eje-
cutar un procedimiento que no requiere argumentos. En la ventana Mdulo, site el cursor en el procedi-
miento que desee ejecutar. Luego haga clic en Iniciar o continuar en el men Ejecutar.
Lleve a cabo la accin EjecutarCdigo en una macro. Puede usar la accin EjecutarCdigo para
ejecutar una funcin incorporada de Visual Basic o una funcin que haya creado. Para ejecutar un procedimiento
Sub o un procedimiento de evento, cree una funcin que llame al procedimiento Sub o procedimiento de evento
y luego use la accin EjecutarCdigo para ejecutar la funcin.
Definiciones varias
I nstruccin
Una unidad sintcticamente completa que expresa un tipo de accin, declaracin o definicin. Normalmente una
instruccin tiene una sola lnea aunque es posible utilizar dos puntos (:) para poner ms de una instruccin en
una lnea. Tambin se puede utilizar un carcter de continuacin de lnea (_) para continuar una sola lnea lgica
en una segunda lnea fsica.
Variable
Un lugar de almacenamiento con nombre que puede contener cierto tipo de datos que puede ser modificado du-
rante la ejecucin del programa. Cada variable tiene un nombre nico que la identifica dentro de su nivel de
mbito. Puede especificar un tipo de datos o no.
Nombres de variable deben comenzar con un carcter alfabtico, deben ser nicos dentro del mismo mbito, no
deben contener ms de 255 caracteres y no pueden contener un punto o carcter de declaracin de tipo.
Variable a nivel de mdulo: Una variable que se declara en la seccin de declaraciones de un mdulo utilizan-
do la palabra clave Private. Estas variables estn disponibles para todos los procedimientos del mdulo.
Constante
Un elemento con nombre que mantiene un valor constante a travs de la ejecucin de un programa. Las constan-
tes pueden ser cadenas o literales numricos, otras constantes o cualquier combinacin que incluya operadores
aritmticos o lgicos exceptuando Is y la exponenciacin. Cada aplicacin principal puede definir su propio
conjunto de constantes. El usuario puede definir constantes adicionales con la instruccin Const. Puede utilizar
constantes en cualquier lugar del cdigo en lugar de valores reales.
Constante intrnseca: Una constante suministrada por Microsoft Access, Visual Basic para aplicaciones, o
Microsoft DAO. Estas constantes estn disponibles en el Examinador de objetos haciendo clic en <globales> en
cada una de estas bibliotecas.
110 Argumentos Pgs. 155
Palabra clave Me
Se comporta como una variable declarada de forma implcita. Est disponible automticamente para todos los
procedimientos en un mdulo de clase. Cuando una clase puede tener ms de una instancia, Me proporciona una
forma de referirse a una instancia especfica de la clase donde se est ejecutando el cdigo. El uso de Me es
especialmente til cuando se desea pasar informacin sobre la instancia que se est ejecutando actualmente a un
procedimiento de otro mdulo. Por ejemplo, suponga que tiene el procedimiento siguiente en un mdulo:
Sub CambiaColorFormulario (NombreFormulario As Form)
NombreFormulario.BackColor = RGB(Rnd * 256, Rnd * 256, Rnd * 256)
End Sub
Puede llamar a este procedimiento y pasar la instancia actual de la clase Form como un argumento utilizando la
siguiente instruccin:
CambiaColorFormulario Me
DAO (Data Access Objects) Objetos de acceso a datos
Los objetos que representan la estructura de la base de datos y los datos que contiene. Desde Visual Basic puede
utilizar objetos DAO para crear o cambiar tablas y consultas, la seguridad de la base de datos, o el acceso a los
datos desde orgenes de datos externos. Tambin puede utilizar objetos DAO para trabajar con los datos almace-
nados en la base de datos desde cdigo.
I nstancia
Un objeto creado desde la clase que contiene su definicin. Por ejemplo, varias instancias de una clase de formu-
lario comparten el mismo cdigo y se cargan con los mismos controles con los que fue diseada la clase de for-
mulario. Una clase es como una plantilla y una instancia individual de una clase como el objeto creado desde esa
plantilla.
Argumentos
Un argumento ofrece informacin adicional a un procedimiento, instruccin o mtodo. Cuando se crea un
procedimiento Function o procedimiento Sub, se declaran argumentos si desea poder suministrar informacin al
procedimiento cuando se le llama.
Cuando se llama a un procedimiento que tenga argumentos, se especifican los argumentos que se desea pasarle.
Tambin se pueden especificar argumentos para muchas instrucciones y mtodos.
Comprender los argumentos con nombre y opcionales
Cuando se hace una llamada a un procedimiento Sub o Function, se pueden incluir argumentos de forma posi-
cional, es decir, en el orden en que aparecen en la definicin del procedimiento, o se pueden incluir los argumen-
tos con su nombre sin respetar ningn orden.
Por ejemplo, el siguiente procedimiento Sub acepta tres argumentos:
Sub PasaArgs(strNombre As String, intEdad As Integer, dteNacimiento
As Date)
Debug.Print strNombre, intEdad, dteNacimiento
End Sub
Al llamar este procedimiento se pueden incluir sus argumentos en la posicin correcta, todos separados por co-
mas, tal y como muestra el siguiente ejemplo:
PasaArgs "Mara", 26, #21-2-69#
Tambin se puede hacer una llamada a este procedimiento e incluir argumentos con nombre, separados por co-
mas.
PasaArgs intEdad:=26, dteNacimiento:=#21/2/69#, strNombre:="Maria"
Un argumento nominativo est formado por el nombre del argumento seguido por dos puntos y un signo igual
(:=), todo ello seguido por el valor del argumento.
Los argumentos con nombre son muy tiles cuando se llama a procedimientos con argumentos opcionales. Si se
usan argumentos con nombre no ser necesario incluir sucesivas comas para sustituir argumentos posicionales
ausentes. Al usar argumentos con nombre es ms fcil controlar qu argumentos se pasan y cules se omiten.
Los argumentos opcionales van precedidos por la palabra clave Optional en la definicin del procedimiento. En
la definicin del procedimiento se puede especificar tambin un valor predefinido para el argumento opcional.
Por ejemplo:
Sub ArgsOpcionales(strProvincia As String, Optional strPais As
String = "MXICO")
. . .
End Sub
Cuando se hace una llamada a un procedimiento con un argumento opcional, se puede optar por especificar o no
el argumento opcional. Si no se especifica, se usar el valor predefinido si existe. Si no se ha especificado tam-
poco un valor predefinido, el argumento tendr el valor de inicializacin que le corresponda a una variable del
mismo tipo.
El siguiente procedimiento incluye un argumento opcional, la variable varPais. La funcin IsMissing determina
si se ha pasado o no un argumento opcional al procedimiento.
GUIA ACCESS 111
Sub ArgsOpcionales(strProvincia As String, Optional intRegion As In-
teger, _
Optional strPais As String = "MXICO")
If IsMissing(intRegion) AND IsMissing(strPais) Then
Debug.Print strProvincia
ElseIf IsMissing(strPais) Then
Debug.Print strProvincia, intRegion
ElseIf IsMissing(intRegion) Then
Debug.Print strProvincia, strPais
Else
Debug.Print strProvincia, intRegion, strPais
End If
End Sub
Este procedimiento se puede llamar empleando argumentos con nombre tal y como muestran los siguientes
ejemplos.
ArgsOpcionales strPais:="MXICO", strProvincia:="SE"
ArgsOpcionales strProvincia:= "SE", intRegion:=5
Especificar argumentos cuando use un procedimiento, instruccin o mtodo en cdigo Visual Basic
Especifique los argumentos inmediatamente despus del nombre del procedimiento, instruccin o mtodo. Para
un procedimiento Function o un mtodo que devuelva un valor, encierre los argumentos entre parntesis. Si
especifica ms de un argumento, seprelos con una coma.
Por ejemplo, el siguiente mtodo Close del objeto DoCmd cierra el formulario Agregar productos. Acepta dos
argumentos, acForm y "Agregar productos":
DoCmd.Close acForm, "Agregar productos"
Puesto que el mtodo Close no devuelve un valor, los argumentos no se incluyen entre parntesis.
Sugerencia: Puede usar el Examinador de objetos para pegar sintaxis de mtodos o propiedades, incluyendo
argumentos, en el cdigo de Visual Basic para aplicaciones. El Examinador de objetos pega los argumentos con
nombre que puede especificar en cualquier orden. Puede usar estos argumentos con nombre o substituirlos con
argumentos estndar.
Estructuras de decisin y control
Mediante el uso de instrucciones condicionales y instrucciones de bucle (tambin conocidas como estructuras de
control) es posible escribir cdigo de Visual Basic que tome decisiones y repita determinadas acciones. Otra
estructura de control til, la instruccin With, permite ejecutar una serie de instrucciones sin necesidad de recali-
ficar un objeto.
Utilizar instrucciones condicionales para tomar decisiones
If...Then...Else: Salto a una instruccin cuando una condicin es True o False
Select Case: Seleccin de la instruccin a ejecutar en funcin de un conjunto de condiciones
Utilizar bucles para repetir cdigo
Do...Loop: Seguir en el bucle mientras o hasta una condicin sea True
For...Next: Utilizar un contador para ejecutar las instrucciones un nmero determinado de veces.
For Each...Next: Repeticin del grupo de instrucciones para cada uno de los objetos de una coleccin
Ejecutar varias instrucciones sobre el mismo objeto
With: Ejecutar una serie de instrucciones sobre el mismo objeto
I f...Then...Else (I nstruccin)
Ejecuta condicionalmente un grupo de instrucciones, dependiendo del valor de una expresin.
If condicin Then [instrucciones]-[Else instrucciones_else]
Puede utilizar la siguiente sintaxis en formato de bloque:
If condicin Then
[instrucciones]
[ElseIf condicin-n Then
[instrucciones_elseif] .. (Opcional. Una o ms instrucciones ejecutadas si la condicin-n asociada es True.)
[Else
[instrucciones_else]] (Opcional. Una o ms instrucciones ejecutadas si ninguna de las expresiones anterio-
res condicin o condicin-n es True.)
End If
Una instruccin con formato de bloque If debe ser la primera de la lnea. Las partes Else, ElseIf y End If, de la
instruccin, solamente pueden ir precedidas de un nmero de lnea o por una etiqueta de lnea. El bloque If debe
terminar con una instruccin End If.
Las clusulas Else y ElseIf son opcionales. Puede tener en un bloque ElseIf, tantas clusulas If como desee, pero
ninguna puede aparecer despus de una clusula Else. Las instrucciones de bloque If se pueden anidar; es decir,
unas pueden contener a otras.
112 Estructuras de decisin y control Pgs. 155
Cuando se ejecuta un bloque If (Sintaxis 2), se prueba condicin. Si condicin es True, se ejecutan las instruc-
ciones que estn a continuacin de Then. Si condicin es False, se evalan una a una las condiciones ElseIf (si
existen). Cuando se encuentra una condicin True se ejecutan las instrucciones que siguen inmediatamente a la
instruccin Then asociada. Si ninguna de las condiciones ElseIf es True (o si no hay clusulas ElseIf), se ejecu-
tan las instrucciones que siguen a Else. Despus de la ejecucin de las instrucciones que siguen a Then o Else, la
ejecucin contina con la instruccin que sigue a End If.
Select Case puede ser ms til cuando se evala una nica expresin que tiene varias acciones posibles. Sin
embargo, la clusula TypeOf nombre_objeto Is tipo_objeto no se puede utilizar en una instruccin Select Case.

If A > 10 Then A = A + 1 : B = B + A : C = C + B

Dim Nmero, Dgitos, MiCadena
Nmero = 53 ' Inicializa variable.
If Nmero < 10 Then
Dgitos = 1
ElseIf Nmero < 100 Then
' La condicin es True, por lo que se ejecuta la siguiente instruc-
cin.
Dgitos = 2
Else
Dgitos = 3
End If

' Asigna un valor con la sintaxis de una lnea.
If Dgitos = 1 Then MiCadena = "Una" Else MiCadena = "Ms de una"

If Anydate < Now Then Anyate=Now 'slo una lnea de cdigo

If Anydate < Now Then Anydate=Now : Notify=True

Ej. DueDate(AnyDate) para devolver slo da hbil:
Function DueDate(AnyDate)
Dim Result
If Not IsNull(AnyDate) Then
result=DateSerial(Year(Anydate),Month(Anydate)+1,1
If Weekday(Result)=1 Then 'Domingo americano
DueDate=Result+1
ElseIf Weekday(Result)=7 Then 'Sbado americano
DueDate=Result+2
Else DueDate=Result
End If
Else
Result=Null
End If
End Function

Puede utilizar If TypeOf para determinar si el control que se pasa a un procedimiento es un cuadro de texto.

Sub ControlProcessor(MiControl As Control)
If TypeOf MiControl Is CommandButton Then
Debug.Print "Ha pasado un " & TypeName(MiControl)
ElseIf TypeOf MiControl Is CheckBox Then
Debug.Print "Ha pasado un " & TypeName(MiControl)
ElseIf TypeOf MiControl Is TextBox Then
Debug.Print "Ha pasado un " & TypeName(MiControl)
End If
End Sub
Select Case (I nstruccin)
Ejecuta uno de varios grupos de instrucciones, dependiendo del valor de una expresin.
GUIA ACCESS 113
Select Case expresin_prueba
[Case lista_expresion-n
[instrucciones-n]] ...
[Case Else
[instrucciones_else]]
End Select

Se pueden utilizar expresiones mltiples o intervalos en cada clusula Case. Por ejemplo, la lnea siguiente es
vlida:
Case 1 To 4, 7 To 9, 11, 13, Is > MaxNumber
Tambin puede especificar intervalos y expresiones mltiples para cadenas de caracteres. En el siguiente ejem-
plo, Case coincide con las cadenas que son exactamente iguales a todo, cadenas que estn entre nueces y sopa en
orden alfabtico y el valor actual de ElemPrueba:
Case "iguales a todo", "nueces" To "sopa", ElemPrueba
Las instrucciones Select Case se pueden anidar. Cada instruccin Select Case debe tener su correspondiente
instruccin End Select.
Dim Nmero
Nmero = 8 ' Inicializa variable.
Select Case Nmero ' Evala Nmero.
Case 1 To 5 ' Nmero entre 1 y 5.
Debug.Print "Entre 1 y 5"
'Es la nica clusula Case cuyo valor es True.
Case 6, 7, 8 ' Nmero entre 6 y 8.
Debug.Print "Entre 6 y 8"
Case Is > 8 And Nmero < 11 ' Nmero es 9 10.
Debug.Print "Mayor que 8"
Case Else ' Otros valores.
Debug.Print "No est entre 1 y 10"
End Select

Ej. Anterior de If, pero pasar a Jueves si es Viernes (numeracin americana):
function duedate(anydate)
dim result
If not is null(anydate) then
result=dateserial(year(anydate),month(anydate)+1,1
select case weekday(result)
case 1: duedate=result+1
case 7: duedate=result+2
case 6: duedate=result-1
case else
duedate=result
end select
else
result=null
end if
end function
Do...Loop (I nstruccin)
Repite un bloque de instrucciones cuando una condicin es True o hasta que una condicin se convierta en True.
Do [{While | Until} condicin]
[instrucciones]
[Exit Do]
[instrucciones]
Loop
O bien, puede utilizar esta sintaxis:
Do
[instrucciones]
[Exit Do]
[instrucciones]
Loop [{While | Until} condicin]

114 Estructuras de decisin y control Pgs. 155
Cuando se utiliza con instrucciones anidadas DoLoop, la instruccin Exit Do transfiere control al bucle que
est anidado un nivel por encima del bucle donde ocurre.

Dim Comprobar, Contador
Comprobar = True: Contador = 0 ' Inicializa variables.
Do ' Bucle externo.
Do While Contador < 20 ' Bucle interno.
Contador = Contador + 1 ' Incrementa el contador.
If Contador = 10 Then ' Si la condicin es verdadera.
Comprobar = False ' Establece el valor a False.
Exit Do ' Sale del bucle interno.
End If
Loop
Loop Until Comprobar = False ' Sale inmediatamente del bucle ex-
terno.
Opciones:
do do while condicin do
instrucciones instrucciones instrucciones
do until condicin- loop loop while condicin

Do while not es igual a Do until
For...Next (I nstruccin)
Utilizar un contador para ejecutar las instrucciones un nmero determinado de veces.
For contador = principio To fin [Step incremento]
[instrucciones]
[Exit For]
[instrucciones]
Next [contador]
Contador. Requerido. Variable numrica que se utiliza como contador de bucle. La variable no puede ser
de tipo Boolean, ni ningn elemento de matriz.
Principio Requerido. Valor inicial del contador.
Fin Requerido. Valor final del contador.
Incremento Opcional. Cantidad en la que cambia el contador cada vez que se ejecuta el bucle. Si no se
especifica, el valor predeterminado de incremento es uno.
Instrucciones Opcional. Una o ms instrucciones entre For y Next que se ejecutan un nmero especificado de
veces.
El argumento incremento puede ser positivo o negativo. El valor del argumento incremento determina la manera
en que se procesa el bucle, como se muestra a continuacin:
Valor El bucle se ejecuta si
Positivo 0 contador <= fin
Negativo contador >= fin
Una vez que se inicia el bucle y se han ejecutado todas las instrucciones en el bucle, incremento se suma a con-
tador
Una cambio en el valor de contador mientras est dentro de un bucle hace difcil su lectura y depuracin.
For I = 1 To 10
For J = 1 To 10
For K = 1 To 10
...
Next K
Next J
Next I
Si omite un contador en una instruccin Next, la ejecucin contina como si se hubiera incluido. Se produce un
error si se encuentra una instruccin Next antes de su instruccin For correspondiente.
Dim Palabras, Caracteres, MiCadena
For Palabras = 10 To 1 Step -1 ' Establece 10 repeticiones.
For Caracteres = 0 To 9 ' Establece 10 repeticiones.
MiCadena = MiCadena & Caracteres ' Agrega un nmero a la cadena.
Next Caracteres ' Incrementa el contador
MiCadena = MiCadena & " " ' Agrega un espacio.
Next Palabras
GUIA ACCESS 115

function isloaded(myformname)
dim i
isloaded=false
for i=0 to forms.count - 1
'la propiedad "count" va de 0 a n-1 (-1 no 'es incremento, que
es 1)
if forms(i).formname=myformname then
isloaded=true
exit for 'tambin se podra: exit function
end if
next
end function

Para salir cuando se quiera de una proc Sub o Function: Exit Sub o Exit Function.
For Each...Next (I nstruccin)
Repite un grupo de instrucciones para cada elemento de una matriz o de una coleccin.
For Each elemento In grupo
[instrucciones]
[Exit For]
[instrucciones]
Next [elemento]
Elemento Requerido. Variable que se utiliza para iterar por los elementos del conjunto o matriz. Para
conjuntos, elemento solamente puede ser una variable Variant, una variable de objeto genrica o cualquier varia-
ble de objeto especfica. Para matrices, elemento solamente puede ser una variable tipo Variant.
Grupo Requerido. Nombre de un conjunto de objetos o de una matriz (excepto una matriz de tipos definidos
por el usuario).
La entrada al bloque For Each se produce si hay al menos un elemento en grupo. Una vez que se ha entrado en el
bucle, todas las instrucciones en el bucle se ejecutan para el primer elemento en grupo. Despus, mientras haya
ms elementos en grupo, las instrucciones en el bucle continan ejecutndose para cada elemento. Cuando no
hay ms elementos en el grupo, se sale del bucle y la ejecucin contina con la instruccin que sigue a la ins-
truccin Next.
No se puede utilizar la instruccin For Each...Next con una matriz de tipos definidos por el usuario porque un
tipo Variant no puede contener un tipo definido por el usuario.
En este ejemplo se utiliza la instruccin For Each...Next para buscar la cadena "Hola" en la propiedad Text de
todos los elementos de una coleccin. En el ejemplo, MiObjeto es un objeto relacionado con texto y es un ele-
mento de la coleccin MiColeccin. Ambos son nombres genricos utilizados slo a modo de ilustracin.
Dim Found, MiObjeto, MiColeccin
Found = False ' Inicializa variable.
For Each MiObjeto In MiColeccin ' Itera por cada elemento.
If MiObjeto.Text = "Hola" Then ' Si Texto es igual "Hola".
Found = True ' Establece como Verdadero.
Exit For ' Sale del bucle.
End If
Next
With (I nstruccin)
Ejecuta una serie de instrucciones sobre un nico objeto o sobre un tipo definido por el usuario.
With objeto
[instrucciones]
End With
La instruccin With permite realizar una serie de instrucciones sobre un objeto especificado sin volver a calificar
el nombre del objeto.
With MyLabel
.Height = 2000
.Width = 2000
.Caption = "Esta es mi etiqueta"
End With
Una vez que se ha entrado en un bloque With no es posible cambiar el objeto. Por tanto, no puede utilizar una
nica instruccin With para varios objetos.
116 Examinador de objetos Pgs. 155
Importante: No salte hacia dentro o hacia fuera de bloques With. Puede tener errores y comportamientos inespe-
rados si se ejecutan instrucciones en bloques With, sin que se ejecuten las instrucciones With o End With.
With MiObjeto
.Height = 100 ' Idntico a MiObjeto.Height = 100.
.Caption = "Hola" 'Idntico a MiObjeto.Caption = "Hola".
With .Font
.Color = Red ' Idntico a MiObjeto.Font.Color = Red.
.Bold = True ' Idntico a MiObjeto.Font.Bold = True.
End With
End With
Examinador de objetos
Un cuadro de dilogo que muestra informacin acerca de objetos, propiedades, mtodos y constantes del proyec-
to actual y de las bibliotecas de objetos a las que se ha hecho referencia. Puede usar el Examinador de objetos
para buscar un elemento especfico, ver su definicin, obtener ayuda sobre el mismo, o pegarlo en un mdulo.
Puede usar el Examinador de objetos para ver y explorar entre los objetos disponibles en Access y dems apli-
caciones que sean compatibles con Visual Basic para aplicaciones, as como los mtodos y propiedades de cada
objeto. Cuando localice un mtodo o propiedad en el Examinador de objetos, puede pegarlo en el mdulo activo.
Localizar un mtodo o propiedad en el Examinador de objetos
1 Abra cualquier mdulo.
2 Haga clic en Examinador de objetos en la barra de herramientas.
3 En el cuadro Proyecto/Biblioteca (el cuadro superior izquierdo), haga clic en Access o en otra bibliote-
ca.
4 En el cuadro Clases, haga clic en el objeto en el que est interesado.
5 En el cuadro Miembros de, haga clic en el mtodo o propiedad que desee.
Nota
Para obtener Ayuda sobre la clase, mtodo o propiedad que seleccione, haga clic en Ayuda en el Exa-
minador de objetos.
Para ver objetos proporcionados por la Librera de objetos de Access 8.0, tales como objetos barra de
comandos, debe establecer una referencia a esta biblioteca. En la ventana Mdulo, haga clic en Referencias en el
men Herramientas y seleccione la casilla de verificacin Office 8.0 Object library.
Use el Examinador de objetos para pegar una sintaxis de mtodo o propiedad en un mdulo
1 Seleccione el mtodo o propiedad en el Examinador de objetos.
2 En la seccin inferior del Examinador de objetos, seleccione la sintaxis que desee pegar.
3 Haga clic en Copiar a portapapeles en el Examinador de objetos.
4 Haga clic en el mdulo en el que desee pegar el nombre.
5 Haga clic en Pegar en la barra de herramientas.
Access pega la sintaxis del mtodo o propiedad en el mdulo.
Nota Despus de pegar la sintaxis para procedimientos Sub, es necesario eliminar los parntesis que rodean los
marcadores de posicin en la sintaxis.
Depuracin de cdigo
Ventana Depuracin
Ventana para depurar el cdigo de Visual Basic. Tiene dos fichas: una para el panel Inspeccin para hacer un
seguimiento de los valores de una o ms expresiones seleccionadas y la otra para el panel Locales para hacer un
seguimiento de las variables locales y sus valores. En la parte inferior de ambas fichas aparece un panel Ejecutar
para ejecutar lneas individuales de cdigo.
La ventana Depuracin en Microsoft Access 97 consiste en tres paneles: un panel Inmediato que funciona de
forma muy parecida a la ventana Inmediata de las versiones anteriores de Microsoft Access, un panel Locales
que muestra todas las variables en el marco de la pila actual junto con sus valores, y un panel Inspeccin. Puede
cambiar entre los paneles de Locales y de Inspeccin haciendo clic en la ficha Locales o en la ficha Inspeccin
de la ventana Depuracin. El panel Inmediato permanece visible independientemente de la ficha que se elija.
Para ver la ventana Depuracin, abra un mdulo y haga clic en la ventana Depuracin en la barra de herramien-
tas. Tambin puede abrir la ventana Depuracin haciendo clic en la ventana Depuracin en el men Ver o pre-
sionando CTRL+S cuando trabaje en cualquier parte de Microsoft Access.
Otras caractersticas de la ventana Depuracin: La nueva ventana Depuracin proporciona informacin de
forma automtica acerca del estado del cdigo. Cuando no haya cdigo en ejecucin, la barra de estado de la
parte superior de la ventana Depuracin muestra "<Preparado>". Una vez comienza la ejecucin del cdigo, la
barra de estado muestra el nombre de la base de datos actual, el mdulo en el que reside el procedimiento que se
est ejecutando, y el nombre del propio procedimiento. Puede ver la ventana Llamadas desde la ventana Depura-
cin haciendo clic en el botn Generar .
GUIA ACCESS 117
Panel Locales
El panel Locales muestra una lista de variables en tres columnas: Expresin, Valor y Tipo. Algunas variables,
como los tipos, matrices y objetos definidos por el usuario, pueden contener informacin jerrquica. Estas varia-
bles tienen un botn expandir/contraer a la izquierda de los nombres de la variable para controlar la presentacin
de la informacin jerrquica. Cuando el panel Locales est visible, se actualiza automticamente cuando el modo
de ejecucin cambia desde el modo de ejecucin al modo de interrupcin. Esto ocurre cuando la ejecucin al-
canza un punto de interrupcin o cuando empieza a ir paso a paso a travs del cdigo.
La primera variable en la lista es una variables de modulo especial. Para un mdulo de clase, esta es la variable
definida por el sistema Me. Esto es una referencia de objeto a la instancia actual de la clase definida por el
mdulo actual. Puesto que esta variable es una referencia de objeto, puede ser expandida para mostrar todas las
propiedades y datos de los miembros de la instancia de clase actual. Para los mdulos estndar, la primera varia-
ble es el nombre del mdulo actual y tambin puede ser expandida para mostrar todas las variables a nivel del
mdulo del mdulo actual. Puede cambiar el valor de una variable en el panel Locales, pero no puede cambiar
sus valores Expresin o Tipo. Ver Pg 119
Panel I nspeccin
El panel Inspeccin permite ver el valor de una expresin o de una variable mientras se ejecuta el cdigo. Para
establecer una expresin de inspeccin, haga clic en Agregar inspeccin en el men Depurar. El panel Inspec-
cin ha sido mejorado para proporcionar las siguientes funcionalidades:
Expandir/contraer la informacin jerrquica.
Cambiar el tamao de los encabezados de columna.
Modificar los valores en el momento.
Panel I nmediato
Puede ejecutar cualquier procedimiento Sub o Function, incluyendo los procedimientos de evento, en el panel
Inmediato.
Para ejecutar un procedimiento definido dentro de un mdulo de clase desde el panel Inmediato, debe cualificar
el procedimiento con el nombre del mdulo de clase, a menos que se encuentre en el modo de interrupcin de-
ntro de ese mdulo. Si se encuentra en el modo de interrupcin, no es necesario que cualifique el procedimiento,
porque ese mdulo se encuentra actualmente dentro del alcance.
El siguiente ejemplo, cuando se escribe en el panel Inmediato de la ventana Depuracin, ejecuta un procedimien-
to ListaNombres que ha sido definido en el mdulo de clase asociado con un formulario Empleados:
Form_Empleados.ListaNombres
El siguiente ejemplo ejecuta el procedimiento de evento Clic para un botn de comando llamado PersonalInfo de
un formulario Empleados:
Form_Empleados.PersonalInfo_Clic
Ver Pg 118, Usar el panel Inmediato.
Solucin de errores en cdigo
La depuracin es un proceso que se utiliza para buscar y resolver errores o bugs, en el cdigo de Visual Basic
para aplicaciones. Hay tres tipos de errores que puede encontrar mientras se ejecuta el cdigo:
Los errores en tiempo de compilacin se producen como resultado de un cdigo construido incorrec-
tamente. Puede que se haya olvidado de igualar los pares de instrucciones (como por ejemplo If y End If o For y
Next) o puede tener un error de programacin que viole las reglas de Visual Basic (tal como una palabra mal
escrita, la falta de un separador o un error de no coincidencia de tipos).
Los errores en tiempo de compilacin incluyen tambin los errores de sintaxis, que son errores gramaticales o de
puntuacin. Estos incluyen parntesis que no coinciden o un nmero incorrecto de argumentos pasados a una
funcin.
Los errores en tiempo de ejecucin se producen despus de que la aplicacin inicie su ejecucin. En-
tre los ejemplos de errores en tiempo de ejecucin se incluyen las operaciones ilegales, tal como dividir por cero
o escribir a un archivo que no existe.
Los errores lgicos se producen cuando la aplicacin no realiza lo que se pretenda y produce resulta-
dos incorrectos.
Para ayudarle a aislar los tres tipos de errores y para controlar cmo se ejecuta el cdigo, Visual Basic propor-
ciona herramientas de depuracin que permiten ir paso a paso por el cdigo de lnea en lnea, examinar o contro-
lar los valores de las expresiones y variables y hacer el seguimiento de las llamadas de los procedimientos.
Nota Para utilizar la mayora de las herramientas de depuracin de Microsoft Access, es necesario suspender la
ejecucin del cdigo.
Usar un punto de interrupcin para suspender la ejecucin de cdigo
Cuando se suspende la ejecucin de cdigo de Visual Basic para aplicaciones, el cdigo sigue ejecutndose,
aunque est detenido entre instrucciones en ejecucin. Mientras est suspendida la ejecucin del cdigo puede
realizar tareas de depuracin tal como comprobar los valores actuales d las variables y ejecutar cada lnea de
cdigo de lnea en lnea. Para hacer que Visual Basic detenga la ejecucin del cdigo, se pueden establecer pun-
tos de interrupcin.
118 Depuracin de cdigo Pgs. 155
1 En la ventana Mdulo, mueva el punto de insercin a la lnea de cdigo que todava no es un punto de
interrupcin o declaracin.
2 Haga clic en Alternar punto de interrupcin en la barra de herramientas.
Para borrar un punto de interrupcin, mueva el punto de insercin a la lnea de cdigo en la que se ha establecido
el punto de interrupcin y luego haga clic en Alternar punto de interrupcin en la barra de herramientas. Para
reiniciar la ejecucin del cdigo, haga clic en Iniciar o continuar en el men Ejecutar.
Nota Tambin puede suspender la ejecucin del cdigo agregando una instruccin Stop a un procedimiento o
presionando CTRL+INTERRUMPIR mientras el cdigo est en ejecucin.
Modo de interrupcin
Suspensin temporal de la ejecucin de un programa mientras se encuentra en el entorno de desarrollo. En el
modo de interrupcin, se puede examinar, depurar, restablecer, ir paso a paso o continuar con la ejecucin del
programa. Al modo de interrupcin se tiene acceso: mediante la bsqueda de un punto de interrupcin durante la
ejecucin del programa; presionando CTRL+INTER durante la ejecucin del programa; encontrando una ins-
truccin Stop o un error en tiempo de ejecucin no detectable durante la ejecucin del programa; agregando una
expresin de inspeccin Modo de interrupcin cuando sea verdadero (la ejecucin se detiene cuando el valor de
la expresin de inspeccin cambia y da como resultado True); agregando una expresin de inspeccin Modo de
interrupcin cuando haya cambiado (la ejecucin se detiene cuando cambie el valor de la expresin de inspec-
cin).
I r paso a paso por el cdigo
Al ir paso a paso por el cdigo de Visual Basic para aplicaciones puede ayudar a identificar donde se est produ-
ciendo un error. Puede ver si cada lnea de cdigo produce los resultados esperados.
1 Suspenda la ejecucin del cdigo.
Access muestra la lnea de cdigo en la que se suspende la ejecucin.
2 Haga unas de las siguientes cosas:
Para ir paso a paso por cada lnea del cdigo y dentro del cdigo a un procedimiento llamado por otro
procedimiento, haga clic en Paso a paso por instrucciones en la barra de herramientas.
Para ir paso a paso por cada lnea de cdigo pero ejecutar como una unidad cada procedimiento al que
se llame, haga clic en Paso a paso por procedimientos en la barra de herramientas.
Para ejecutar el cdigo que precede a la lnea actual de cdigo y luego detenerse para poder ir paso a
paso por cada lnea del cdigo, haga clic en Ejecutar hasta el cursor en el men Depurar.
Para ejecutar el resto del procedimiento actual y luego a la siguiente lnea de cdigo del procedimiento
anterior del rbol de llamadas, haga clic en Paso a paso para salir en la barra de herramientas.
Nota: Puede usar Paso a paso por instrucciones sin suspender la ejecucin del cdigo. En la ventana Mdulo,
site el cursor en el procedimiento por el que desea ir paso a paso y haga clic en Paso a paso por instrucciones
en la barra de herramientas.
Se puede alternar entre estos tipos de ejecuciones paso a paso. El tipo de ejecucin paso a paso que lleve a cabo
depende de las partes del cdigo que desee analizar.
Arbol de llamada
Todos los mdulos que pueden ser llamados por el procedimiento en el mdulo en el cual el cdigo se est eje-
cutando actualmente.
Usar el panel I nmediato
Use el panel Inmediato en la ventana Depurar para comprobar los resultados de una lnea de cdigo de Visual
Basic para aplicaciones. Puede usar el panel Inmediato para comprobar el valor de un control, campo o propie-
dad; para mostrar el resultado de una expresin; o para asignar un nuevo valor a una variable, campo o propie-
dad. El panel Inmediato es una especie de ventana de borrador en la que se evalan inmediatamente las instruc-
ciones, mtodos y procedimientos Sub.
1 Si desea usar el panel Inmediato en un cierto punto durante la ejecucin del cdigo, suspenda la ejecu-
cin del cdigo en ese punto.
2 Haga clic en Ventana de depuracin en la barra de herramientas.
3 Escriba en la ventana una instruccin, mtodo, llamada de procedimiento Function o Sub y luego pre-
sione ENTRAR.
Sugerencias:
Puede ver los resultados de una expresin en el panel Inmediato introduciendo el mtodo Print
del objeto Debug, seguido por la expresin. Puede usar un signo de interrogacin (?) como abreviacin del
mtodo Print. Por ejemplo, Visual Basic muestra el valor devuelto por la funcin personalizada PrimerDaDel-
MesSiguiente si introduce algunas de las dos lneas siguientes en el panel Inmediato:
Debug.Print PrimerDaDelMesSiguiente()
? PrimerDaDelMesSiguiente()
Tambin puede agregar el mtodo Print del objeto Debug al cdigo de Visual Basic para mostrar los valores o
los resultados de las expresiones del panel Inmediato mientras se ejecuta el cdigo. Cuando el cdigo haya fina-
lizado la ejecucin, puede mirar los resultados.
En Microsoft Access puede mostrar el panel Inmediato en cualquier momento presionando CTRL+G.
GUIA ACCESS 119
Establecimiento de una expresin de inspeccin en el cdigo
Cuando se suspende la ejecucin de cdigo de Visual Basic para aplicaciones, puede observar los valores de las
expresiones de inspeccin en el panel Inspeccin de la ventana Depuracin. Tambin puede realizar una inspec-
cin rpida para ver el valor de una expresin que no haya sido especificada como una expresin de inspeccin.
Agregar una expresin de inspeccin al panel I nspeccin
1 Abra un procedimiento en la ventana Mdulo.
2 En el men Depurar, haga clic en Agregar inspeccin.
3 Si ya seleccion una expresin en la ventana Mdulo, se mostrar de forma automtica en el cuadro de
dilogo. Si no se muestra ninguna expresin, escriba la expresin que desee evaluar. La expresin puede ser una
variable, una propiedad, una llamada de funcin o cualquier otra expresin vlida.
En lugar de escribir la expresin, puede seleccionar una expresin en la ventana Mdulo y arrastrarla al panel
Inspeccin.
4 Para seleccionar el intervalo en el que se evaluar la expresin, seleccione un contexto de mdulo y de
procedimiento bajo Contexto.
Nota Seleccione el alcance mnimo que se ajuste a sus necesidades. Si se seleccionan todos los procedimientos
o todos los mdulos podra ralentizar la ejecucin del cdigo.
5 Para definir la forma en la que el sistema debe responder a la expresin de inspeccin, seleccione una
opcin bajo Tipo de inspeccin.
Para mostrar el valor de la expresin de inspeccin, haga clic en Expresin de inspeccin.
Para detener la ejecucin si la expresin se evala a True, haga clic en Modo de interrupcin cuando el
valor sea Verdadero.
Para detener la ejecucin si cambia el valor de la expresin, haga clic en Modo de interrupcin cuando
el valor cambie.
Cuando ejecuta el cdigo, el panel Inspeccin muestra el valor de la expresin que se hubiera establecido. Para
modificar una expresin de inspeccin, seleccione la expresin en el panel Inspeccin y luego haga clic en Mo-
dificar inspeccin en el men Herramientas. Para eliminar la expresin de inspeccin, haga clic en Eliminar en el
cuadro de dilogo Modificar inspeccin.
Realizar una inspeccin rpida mientras se depura cdigo
1 Suspenda la ejecucin del cdigo Visual Basic para aplicaciones.
2 Seleccione la expresin cuyo valor desea ver.
3 Haga clic en Inspeccin rpida en la barra de herramientas.
Access muestra el cuadro de dilogo Inspeccin rpida, en el que puede ver la expresin y el valor actual de la
expresin. Haga clic en Agregar en el cuadro de dilogo para agregar la expresin a la lista de expresiones de
inspeccin del panel Inspeccin de la ventana Depurar.
Seguimiento de llamadas de procedimientos mientras se depura cdigo
Cuando se suspende la ejecucin de cdigo de Visual Basic para aplicaciones mientras se depura el cdigo, pue-
de usar el cuadro de dilogo Llamadas para ver una lista de los procedimientos que hayan sido iniciados pero no
completados.
1 Suspenda la ejecucin del cdigo de Visual Basic.
2 Haga clic en Pila de llamadas en la barra de herramientas.
Access muestra el ltimo procedimiento llamado en la parte superior de la lista, seguido del procedimiento lla-
mado anteriormente y as sucesivamente. Para mostrar la instruccin que llama al siguiente procedimiento de la
lista, haga clic en Mostrar.
Presentacin del valor de las variables en el panel Locales
1 Suspenda la ejecucin del cdigo de Visual Basic para aplicaciones.
2 Haga clic en la Ventana de depuracin en la barra de herramientas.
En la parte superior de la ventana Depurar, en la ficha Locales, Microsoft Access muestra de forma automtica el
nombre, valor actual y tipo de todas las variables y objetos del procedimiento activo. Los valores del panel Loca-
les se actualizan cada vez que suspende la ejecucin del cdigo. Puede cambiar el valor de una variable en el
panel Locales seleccionando el valor existente e introduciendo el nuevo valor.
Mostrar el valor de una variable o expresin en la ventana Mdulo cuando el cdigo est
suspendido
1 En el men Herramientas, haga clic en Opciones.
2 Haga clic la ficha Mdulo.
3 Bajo Opciones del cdigo, asegrese que est seleccionada la casilla de verificacin Sugerencias de
datos automticas.
Cuando la casilla de verificacin Sugerencias de datos automticas est seleccionada, puede comprobar el valor
de una variable o una expresin mientras el cdigo est suspendido. Site el puntero del mouse sobre una varia-
ble o expresin para que se muestre su valor actual.
120 Referencia de funciones Pgs. 155
Referencia de funciones
En la siguiente referencia se enumeran todas las funciones en orden alfabtico. Un doble asterisco (**) indica
que la funcin se agreg para Access 97.
AC
Abs (VBA) Comando (Command)
AgregFecha (DateAdd) (VBA) CompCadena (StrComp) (VBA)
Ahora (Now) (VBA) Conmutador (Switch) (VBA)
Amortiz (DDB) (VBA) ConvCadena (StrConv) (VBA)
Ao (Year) (VBA) Cos (VBA)
ArcTg (Atn) (VBA) CreateControl
Array (VBA) CreateForm
Cad (Str) (VBA) CreateGroupLevel
Cadena (String) (VBA) CreateObject (VBA)
Car (Chr) (VBA) CreateReport
CBool (VBA) CreateReportControl
CByte (VBA) Cronmetro (Timer) (VBA)
CCadena (CStr) (VBA) CSimple (CSng) (VBA)
CDec (VBA) CuadroEntr (InputBox) (VBA)
CDoble (CDbl) (VBA) CuadroMsj (MsgBox) (VBA)
CEntero (Cint) (VBA) Cuenta (Count) (DAO)
CFecha (Cdate) (VBA) CurrentDb
CLargo (CLng) (VBA) CVariante (Cvar) (VBA)
CMoneda (Ccur) (VBA) CVErr (VBA)
CodeDb CVFecha (CVDate) (VBA)
CdiogoCar (Asc) (VBA)
DH
DBsq (Dlookup) Elegir (Choose) (VBA)
DCont (Dcount) EnCad (InStr) (VBA)
DDE Ent (Int) (VBA)
DDEEnviar (DDESend) Entorno (Environ) (VBA)
DDEIniciar (DDEInitiate) Entrada (Input) (VBA)
DDEPedido (DDERequest) EOF (VBA)
DDesvEst (DStDev) Error (VBA)
DDesvEstP (DStDevP) EsFecha (IsDate) (VBA)
Der (Right) (VBA) EsNulo (IsNull) (VBA)
DesvEst (StDev) (DAO) EsNum (IsNumeric) (VBA)
DesvEstP (StDevP) (DAO) Espacio (Space) (VBA)
Da (Day) (VBA) EsVaco (IsEmpty) (VBA)
DaSemana (Weekday) (VBA) Eval
DifFecha (DateDiff) (VBA) Exp (VBA)
Dir (VBA) Fecha (Date) (VBA)
DirAct (CurDir) (VBA) FileAttr (VBA)
DMx (Dmax) Formato (Format) (VBA)
DMn (Dmin) FreeFile (VBA)
DoEvents (VBA) GetObject (VBA)
DPrim (DFirst) GUIDFromString**
DProm (DAvg) Hex (VBA)
DSuma (DSum) Hora (Hour) (VBA)
Dltimo (DLast) HoraActual (Time) (VBA)
DVar HoraFechaArch (FileDateTime) (VBA)
DVarP HyperlinkPart
IR
IMEStatus (VBA) MIRR (VBA)
Inters (IPmt) (VBA) NPer (VBA)
IRR (VBA) NPV (VBA)
IsArray (VBA) NmAleat (Rnd) (VBA)
IsError (VBA) Nz
IsMissing (VBA) ObtenerAtributo (GetAttr) (VBA)
IsObject (VBA) ObtenerValor (GetSetting) (VBA)
Izq (Left) (VBA) ObtenerValores (GetAllSettings) (VBA)
LBound (VBA) Oct (VBA)
Ln (Log) (VBA) Pago (Pmt) (VBA)
GUIA ACCESS 121
LoadPicture ParcFecha (DatePart) (VBA)
Loc (VBA) Particin (Partition) (VBA)
LOF (VBA) Ppago (PPmt) (VBA)
LongArch (FileLen) (VBA) Primero (First) (DAO)
Longitud (Len) (VBA) Promedio (Avg) (DAO)
Mx (Max) (DAO) QBColor (VBA)
Mays (Ucase) (VBA) Raz2 (Sqr) (VBA)
Medio (Mid) (VBA) Recortar (Trim) (VBA)
Mes (Month) (VBA) RecortarDer (Rtrim) (VBA)
Mn (Min) (DAO) RecortarIzq (Ltrim) (VBA)
Mins (Lcase) (VBA) RGB (VBA)
Minuto (Minute) (VBA)
SZ
Seek (VBA) Tab (VBA)
Segundo (Second) (VBA) Tasa (Rate) (VBA)
Sen (Sin) (VBA) Tg (Tan) (VBA)
SerieFecha (DateSerial) (VBA) TypeName (VBA)
SerieHora (TimeSerial) (VBA) Ubound (VBA)
Shell (VBA) ltimo (Last) (DAO)
Signo (Sgn) (VBA) UsuarioActual (CurrentUser)
Silnm (IIf) (VBA) VA (PV) (VBA)
SinDec (Fix) (VBA) Val (VBA)
SLN (VBA) ValorFecha (DateValue) (VBA)
Spc (VBA) ValorHora (TimeValue) (VBA)
StringFromGUID** Var (DAO)
Suma (Sum) (DAO) VarP (DAO)
SYD (VBA) VarType (VBA)
SysCmd VF (FV) (VBA)

Referencia de instrucciones
(Excepto las instrucciones SQL).
AM
AppActivate (VBA) DeleteControl
Beep (VBA) DeleteReportControl
Call (VBA) DeleteSetting (VBA)
ChDir (VBA) Dim (VBA)
ChDrive (VBA) Do...Loop (VBA)
Close (VBA) End (VBA)
Const (VBA) Erase (VBA)
Date (VBA) Error (VBA)
DDE Exit (VBA)
DDEExecute FileCopy (VBA)
DDEPoke For Each...Next (VBA)
DDETerminate For...Next (VBA)
DDETerminateAll Function (VBA)
Declare (VBA) Get (VBA)
DefBool (VBA) GoSub...Return (VBA)
DefByte (VBA) GoTo (VBA)
DefCur (VBA) If...Then...Else (VBA)
DefDate (VBA) Input # (VBA)
DefDbl (VBA) Kill (VBA)
DefInt (VBA) Let (VBA)
DefLng (VBA) Line Input # (VBA)
DefObj (VBA) Lock (VBA)
DefSng (VBA) Lset (VBA)
DefStr (VBA) Mid (VBA)
DefType (VBA) MidB (VBA)
DefVar (VBA) MkDir (VBA)

NZ
Name (VBA) Resume (VBA)
On Error (VBA) Return (VBA)
On...GoSub (VBA) RmDir (VBA)
On...GoTo (VBA) RSet (VBA)
Open (VBA) SaveSetting (VBA)
Option Base (VBA) Seek (VBA)
Option Compare (VBA) SelectCase (VBA)
Option Explicit (VBA) SendKeys (VBA)
Option Private (VBA) Set (VBA)
Print # (VBA) SetAttr (VBA)
Private (VBA) Static (VBA)
Property Get (VBA) Stop (VBA)
Property Let (VBA) Sub (VBA)
Property Set (VBA) Time (VBA)
Public (VBA) Type (VBA)
Put (VBA) Unlock (VBA)
Randomize (VBA) While...Wend (VBA)
ReDim (VBA) Width # (VBA)
Rem (VBA) With (VBA)
Reset (VBA) Write # (VBA)


122 Funciones e Instrucciones por tarea de programacin. Pgs. 155
Funciones e I nstrucciones por tarea de programacin.
Task type Description Function/Statement
Arrays Declare and initialize array variables Dim, Global, ReDim, Static
Create Array (Function)
Reinitialize array variables Erase, ReDim
Find the limits of an array LBound, UBound
Change the defaault lower limit for array Option Base
Control of Pro-
gram flow
Create loops Do...Loop, Exit Do, Exit For, For...Next,
While...Wend
Handle errors On Error, Resume
Make decisions Choose, If...Then...Else, IIf, Select Case,
Switch
Exit or pause the program DoEvents, End, Stop
Conversion ANSI value to string Chr
String to ANSI value Asc
Number to string Format, Str
String to number Val
One numeric data type to another CCur, CDbl, CInt, CLng, CSng, Fix, Int
Decimal number to other radix string Hex, Oct
Date to serial number DateSerial, DateValue
Serial number to date Day, Month, Now, Weekday, Year
Time to serial number TimeSerial, TimeValue
Serial number to time Hour, Minute, Now, Second
Date/Time Get the current date or time Date, Now, Time
Set the date or time Date, Time
Time a process Timer
SQL dates DateAdd, DateDiff, DatePart
Domain Perform domain aggregate financial opera-
tions
DAvg, DCount, DFirst, DLast, DMax,
DMin, DStDev, DStDevP, DSum, DVar,
DVarP
Dynamic data
exchange (DDE)
Use Access Basic as a DDE client DDEExecute, DDEInitiate
Use Access Basic to send data to a DDE
server
DDEPoke, DDESend
Use Access Basic to request data from a
DDE server
DDE, DDERequest

Terminate a DDE conversation DDETerminate, DDETerminateAll
Error handling Trap errors while a program is running On Error, Resume
Get error-status data Err, Erl
Get error messages Error
Simulate run-time errors Error
Inspecion of vari-
ables
Determine if a variable is a Date IsDate
Determine if a variable is a Empty IsEmpty
Determine is a variable is Null IsNull
Determine if a variable is numeric IsNumeric
Determine the underlying data type of a
Variant
VarType
File input/ouput Access or create a file Open
Close a file Close, Reset
Write to a file Print #, Put, Write #
Control output appearance Spc, Tab, Width #
Read from a file Get, Input, Input #, Line Input #
Get information about a file EOF, FileAttr, FreeFile, Loc, LOF, Seek
Set or determine the read/write position in a
file
Seek
Manage disk drives or directories ChDrive,ChDir, CurDir, MkDir, RmDir
Manage files Dir, Kill, Lock...Unlock, Name
Financial Perform financial operations DDB, FV, IPmt, IRR, MIRR, NPer, NPV,
Pmt, PPmt, PV, Rate, SLN, SYD
Graphics on
printed reports
Work with colors QBColor, RGB
GUIA ACCESS 123
Draw a shape Circle, Line, PSet

Find the size of text TexHeight, TextWidth
Change the coordinate system Scale
Print trext Print
Object manipula-
tion
Display a dialog box InputBox, MsgBox
Math Perform general calculations Exp, Log, Sqr
Trigonometric functions Atn, Cos, Sin, Tan
Convert a number Fix, Int
Get the absolute value of a number Abs
Get the sign of an expression Sgn
Generate random numbers Randomize, Rnd
Operators Arithmetic *, +, -, \, /, ^, Mod
Comparison <, <=, >, >=, =, <>
Concatenation &
Logical And, Eqv, Imp, Not, Or, Xor
Pattern matching Like
SQL Is, In, Between...And
Procedures Define a procedure Function, Sub
Call a procedure Call
Exit a procedure Exit Function, Exit Sub
Daclare a reference to an external procedure
(DLL)
Declare
Recorsets Ver Mtodos por tarea de programacin.
SQL Perform an SQL aggregate financial opera-
tion
Avg, Count, First, Last, Min, Max, StDev,
StDevP, Sum, Var, VarP
Strings Format a string Format
Create a string of repeating characters Space, String
Work with ANSI values Asc, Chr
Manupulate a string InStr, Left, LTrim, Mid, Right, RTrim
Convert to lowercase or uppercase letters LCase, UCase
Left or right align a string LSet, RSet
Find the length of a string Len
Compare two strings StrComp
Variables and
constants
Declare a variable or constant Const, Dim, Global, Static
Set de default data type Deftype
Creat a user-defined type Type
Assign a variable to a recordset object Set
Miscellaneous Run another program AppActivate, Shell
Handle events DoEvents
Generate keystrokes SendKeys
Get command-line arguments Command
Find environment Environ
Sound a beep Beep
Evaluate an expression Eval
Determine a numbers position in a range Partition

Referencia de mtodos
AC
AccessError** Clone (DAO)
Add (VBA) Close (DAO)
Add (coleccin Pages)** Close
AddFromFile (objeto Module)**
CloseCurrentDatabase
AddFromFile (coleccin References)**
CommitTrans (DAO)
AddFromGUID** CompactDatabase (DAO)
AddFromString** CopyObject
AddNew (DAO) CopyQueryDef (DAO)
AddToFavorites** CreateDatabase (DAO)
NQ
NewCurrentDatabase OpenReport
NewPassword (DAO) OpenTable
NextRecordSet (DAO) OutputTo
OpenConnection (DAO) PopulatePartial (DAO)
OpenCurrentDatabase Print (VBA)
OpenDatabase (DAO) Print
OpenForm PrintOut
OpenModule Pset
OpenQuery Quit (objeto DoCmd)
OpenRecordset (DAO) Quit (objeto Application)
R
124 Mtodos por tarea de programacin (Recorsets). Pgs. 155
Append (DAO) CreateEventProc**
AppendChunk (DAO) CreateField (DAO)
ApplyFilter CreateGroup (DAO)
Beep CreateIndex (DAO)
BeginTrans (DAO) CreateProperty (DAO)
BuildCriteria CreateQueryDef (DAO)
Cancel (DAO) CreateRelation (DAO)
CancelEvent CreateTableDef (DAO)
CancelUpdate (DAO) CreateUser (DAO)
Circle CreateWorkspace (DAO)
Clear (VBA)
DF
DefaultControl FillCache (DAO)
DefaultWorkspaceClone Find**
Delete (DAO) FindFirst (DAO)
DeleteLines** FindLast (DAO)
DeleteObject FindNext (DAO)
DoMenuItem FindNext
Dropdown FindPrevious (DAO)
Echo (objeto DoCmd) FindRecord
Echo (objeto Application) Follow**
Edit (DAO) FollowHyperlink**
Execute (DAO)
GM
GetChunk (DAO) Item (VBA)
GetOption Line
GetRows (DAO) MakeReplica (DAO)
GoToControl Maximize
GoToPage (objeto DoCmd) Minimize
GoToPage (objeto Form) Move (DAO)
GoToRecord MoveFirst (DAO)
Hourglass MoveLast (DAO)
Idle (DAO) MoveNext (DAO)
InsertLines** MovePrevious (DAO)
InsertText** MoveSize

Raise (VBA) RepaintObject
Recalc RepairDatabase (DAO)
Refresh (DAO) ReplaceLine**
Refresh Requery (DAO)
RefreshDatabaseWindow** Requery (objeto DoCmd)
RefreshLink (DAO) Requery (objeto Control o Form)
RefreshTitleBar Restore
RegisterDatabase (DAO) Rollback (DAO)
Remove (VBA) Run
Remove (coleccin Pages)** RunCommand**
Remove (coleccin References)** RunMacro
Rename RunSQL
Repaint
SZ
Save ShowToolbar
Scale SizeToFit
Seek (DAO) Synchronize (DAO)
SelectObject TextHeight
SendObject TextWidth
SetFocus TransferDatabase
SetMenuItem TransferSpreadsheet
SetOption (DAO) TransferText
SetOption Undo
SetWarnings Update (DAO)
ShowAllRecords


Mtodos por tarea de programacin (Recorsets).
Task Type Description Method
OLE objects Manipulate OLE objects AppendChunk, Get Chunk
Record manipulation Add or delete a record AddNew, Delete
Make changes Edit
Save changes Update
Record positioning Move to a specific record FindFirst, FindLast, FindNext, Find-
Previous, Seek
Move to a relative record MoveFirst, MoveLast, MoveNext,
MovePrevious
Recordset manipulation Creat a recordset Clone
Close a recordset Close
Return information about a recordset ListFields, ListIndexes, ListParameters,
ListTables.

GENERALI DADES Y EJ EMPLOS DE VI SUAL BASI C.
Procedures: Function: Return a value that can be used in a expression.
" Sub: Can't be used in an expression.
A module has a Declaration Section (default: Option Compare Database) and 1 or more Procedures in a logical
group.
Cada Mdulo tiene ventana diferente y la ventana se puede dividir para ver varios de sus Procedures.
CTRL+ a previous procedure. CTRL+ next procedure. New upper line: CTRL+N. Cortar lnea para pegar:
CTRL+Y.
Punto de insercin en palabra reservada: su Help con F1. Tambin puntero de Ayuda con MAY+F1 para
GUIA ACCESS 125
ayuda local.
F2 lista de Mdulos y sus procedures. MAY+F2 va al procedure seleccionado.
Para sangra insertar/quitar: TAB o MAY-TAB.

Funcin Primer dia del mes siguiente actual:
Function DueDate()
DueDate=DateSerial(Year(Now),Month(Now)+1,1)
End Function
Utilizacin: Default value de campo (Vencimiento) =DueDate()
Control Source en Formulario: =DueDate()
Criterio de Consulta: <=DueDate()
Funcin para incluir un argumento (por ej.: especificar una fecha):
Function DueDate(anydate)
DueDate=DateSerial(Year(anydate),Month(anydate)+1,1)
End Function
Ahora dentro del parntesis se puede especificar una fecha: =DueDate([Order Date])
Ms de un argumento, separar con comas, y no son opcionales.
Comenzar comentarios en cualquier lnea con apstrofe: '

Ejecutar Acciones y Macros: DoCmd nombre accin/macro [arg]
Para realizar acciones de macros desde cdigo en Access 97, use el objeto DoCmd y sus mtodos.
DoCmd Echo False, "Screen Updating Off" (Echo tiene dos argumen-
tos)
DoCmd Close 2, "Add Products" (dos argumentos, Formulario , Add
Products)
Los arg. se separan con comas (2 significa tipo objeto Formulario segn orden de accin Close en una macro,
siendo 0 Tabla, 1 Consulta, 2 Formulario, 3 Informe, 4 Macro y 5 Mdulo).
Pueden ser opcionales, pero poniendo comas: DoCmd MoveSize ,,5000,3000
docmd openform "customers"
docmd openreport "catalog"
docmd close a_form, "customers"
docmd close a_report, "catalog"
Ver Pg 131.
Acciones de macro que no tienen mtodos DoCmd equivalentes:
AgregarMen No tiene equivalente
CuadroMsj Funcin MsgBox
EjecutarAplicacin Funcin Shell
EjecutarCdigo Llamada a procedimiento (instruccin Call)
EnviarTeclas Instruccin SendKeys
EstablecerValor Instruccin de asignacin (instruccin Let)
DetenerTodasMacros Instrucciones Stop o End
DetenerMacro Instrucciones Exit Sub o Exit Function

Sub Procedures: Se crean igual que Function.
No lleva variables ni retorna valor.
Sub SizeIt(DocWidth,DocHeight)
DoCmd MoveSize ,,DocWidth,DocHeight
End Sub
Utilizar: SizeIt 5000,3000 (No necesario primeras comas)
Al llamar a una Sub los argmentos NO se ponen entre parntisis.
Private. Anteponer a Sub o Function para utilizar slo en el mismo mdulo.

Salir de Sub proc. y Function: Exit Sub o Exit Function

Depuracin:
Utilizar Option Explicit en la Seccin Declaraciones de cada mdulo, para declarar las variables y evitar errores
de definicin.
Parar: poner un 'Stop' (instruccin) donde se quiera o poniendo un Punto interrupcin (botn 'mano' F9 toggle-,
se elimina al cerrar) en la lnea en que se est, que quedar encuadrada y donde se parar. En negrita indica Pun-
to de interrupcin, encuadrado significa instruccin actual o prxima a realizar.
126 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155
En una misma lnea se pueden poner ms de una instruccin, separando con dos puntos (:), pero el Punto inte-
rrupcin slo en la primera.
Borrar todos los puntos de interrupcin: CTRL+MAY+F9.
Para iniciar ejecucin o seguir, F5.
Paso a paso: F8.
Paso a paso por procedimiento: los saltos a procedimientos como si fueran una instruccin, a mismo nivel es
Paso a Paso.
Ejecutar hasta cursor (hacia delante o atrs) CTRL+F8
Para recomenzar donde se quiera despus de parada (atrs o delante): ir a donde se quiera continuar y F5.
Panel inmediato: (Ventana de Depuracin) CTRL+S para saber inmediatamente resultado de expresiones y valo-
res de campos, controles, propiedades. Slo evala una lnea de cdigo (usar los : (dos puntos)). Hay que poner
antes 'Print' (-o ?). Anteponer tambin Debug si se est fuera del Panel inmediato.
Debug.Print DueDate(Now) Respuesta: 23-3-98 (Desde la venta mdulo)
El signo de interrogacin es idntico a 'Print' siempre.
Desde Panel inmediato: ?weekday(duedate(now)) Respuesta: 6 (viernes, siempre america-
no).
Si son proc. Sub no lleva Print ? porque no devuelve valor: sizeit 5000,3000
Para probar el For... Next completo: for I=1 to 20 : 2*I : next I
? forms! [sales reps].recordsource
Mostrar valores: Debug.? [items] [;]
function duedate(anydate)
'this function calculates and returns the date of the first day
of the month 'following the supplied date.
debug.? "Year "; year(anydate); ", Month "; month(anydate)
duedate=dateserial(year(anydate), month(anydate)+1,1)
end function
En ventana de depuracin: ? duedate(now)
Respuesta: Year 1997, Month 11
1/12/97
No es necesario para ejecucin, pero la ventana Panel inmediato debe estar abierta para ver respuesta.
Las instrucciones con punto de interrupcin muestran valor de su argumento en la ventana Panel inmediato.
Lnea Duedate de arriba mostrara, con ?Anydate Respuesta: 1/12/97
Slo muestra variables de la proc. vigente (o que sea Global).
Tambin se usa para dar valores de prueba:
forms![sales reps]!title="Sales Executive" (control)
forms![sales reps]!title.visible=false (propiedad)
maxrows=50 (variable)
INTRO en la lnea de instruccin la vuelve a ejecutar (despus de editarla). Moverse con las flechas. Con
INTRO (ejecutar) borra las 2da y 3ra lneas. Poner ; (punto y coma) al final de lnea de INTRO para no borrar
3ra.

Variables
Se crean autom. con un nuevo nombre, pero mejor Dim YearVar, MonthVar.
Con Dim o slo con nombre: vlido slo para proc. mientras en ejecucin.
Declaracin variables:
Function DueDate(AnyDate) 'obligatorio especificar alguna fecha.
Ej. de 'arriba seria fecha actual
Dim YearVar, MonthVar 'esta lnea es opcional. En dos formas
'variables slo para este proc.
YearVar=Year(AnyDate)
MonthVar=Month(AnyDate)+1
DueDate=DateSerial(YearVar,MonthVar,1)
End Function

Function DueDate(AnyDate)
DueDate=DateSerial(Year(AnyDate),Month(Anydate)+1,1)
End Function

Por Default, todas las Variables son Variant (Num/fecha/texto). Si se sabe que slo ser de un tipo, mejor
declarar el tipo. (Dim A as integer)
GUIA ACCESS 127
Variables y Tipos de Datos:
Option Explicit en Declarations of a Module no permite crear variables sin Dim o Global.
Dim en procedimiento: local al procedimiento. (Se puede repetir nombre en otros y sern independientes)
Dim en Declar. de Module: slo en ese mdulo.
Global en Declar. de Module: global, todos los mdulos y procedimientos. Conveniente declarar en un solo
mdulo.
Con mismo nombre, tienen preferencias las variables ms locales.
Nombres de Procedimiento siempre son Globales, a menos que se declaren Private, que slo estarn disponible
a su mdulo.
Al salir de una proc. con var. locales, stas quedan a 0. Para no borrarlas as, declararla Static en vez de Dim.
Function RunningTotal(num)
Static Accumulate
Accumulate=Accumulate+num : RunningTotal=Accumulate
End Function
Para declarar todas las variables Static en procedimiento, no importa si declaradas despus Dim:
Static Function RunningTotal(num)
Variable type by Default: Variant (num/texto/fecha):
X="17" : X=X-15 : X="U" & X Valor de X: "U2"
Con isnumeric() y isdate() se sabe si son slo num. o fecha para operaciones.:
if isnumeric(x) and isnumeric(y) then
z=x*y : else : z = null : end if

function century() 'fecha actual
t=now : if t>=#1-1-2001# then : century=21
else : century=20 : end if
end function

function century(anydate)
if isdate(anydate) then century ((year(anydate)-1)\100)+1
else : century=null : end if
end function

Para saber si Variant no tiene valor (ni null, ni 0, ni "", antes de asignarle algo, es IsEmpty()):
if isempty(x) then z=0
Slo tipo Variant puede ser Null (Z=Null) (If IsNull(Z)). Variant numrico es tipo Double.
Integer: entero -32000 hasta +32000
Long: entero -2147 mill a +2147 mill.
Single: decimales grande: 4 bytes
Double: decimales muy grande: 8 bytes
Currency, String
dim a as integer, amt as double
dim yourname as string, fechacobro 'sin especificar en Va-
riant,aqufecha.
dim test, b as single, amount
Ms rpido y menos memoria utilizando tipo apropiado.
Convertir a Integer o Long siempre redondea.
String: S="database" S=left(s,4) 'd "data"
dim empname as string*50 'd 50 caracteres fijos, no
'importa largo nombre
Option Compare (binary, database, text) en el mdulo determina resultado de comparaciones entre tipos.
Binary es default.
Tipo campo Compatible Acces Basic
Autonumrico Long
Fecha/hora Double
Yes/no Integer
Etc.

function reverse (S as string, n as integer)
reverses the frst n characters in S.
dim temp as string, i as integer
128 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155
if n > len(s) then n=len(s)
for i=n to 1 step -1
temp=temp+mid(s,i,1)
next
reverse=temp+right(s,len(s)-n)
end function
(Ver tambin Objetos como argumentos)
Los argumentos de procedures admiten definir el tipo, pero si se definen siempre sern de ese tipo y ni admitira
cambio a Variant. Un arreglo es anteponer ByVal en definiciones que no sean Variant.
function reverse (s as string, byval n as integer) 'n podra intro-
ducirse
'tipo Variant.
Sin no tuviera ByVal arriba, lo siguiente dara error: n="4" : debug.? reverse(v,n) 'e-
rror
Otro arreglo, convertir en expresin poniendo entre parntesis: debug.? reverse(v,(n)). Se eva-
luar la expresin y pasar el tipo requerido. Con () es la forma ms sencilla de convertir variable en expresin.
Las funciones devuelven por default el tipo Variant. Si no tiene valor (Ni Null, 0, ) da Empty Variant. Para
definir la devolucin de otro tipo (para rapidez de Access):
Function reverse (S as string, byval n as integer) as string 'sin
valor, sera ""
Matrices (Arrays)
Conjunto de elementos que tienen el mismo tipo de datos y que estn ordenados secuencialmente. Cada elemento
de una matriz posee un nmero de ndice nico que lo identifica. Los cambios efectuados a un elemento de una
matriz no afectan a los dems elementos.
Se crean igual que Variables. (Ver Funcin Array)
Declaration Section de Module: dim counters (1 to 15) as integer
dim sums (100 to 120) as string
Para Global, cambiar Dim por Global. Cambiar a Static para dentro de una procedure.
Todos los elementos poner a 5 (los 15):
static counters (1 to 15) as integer
dim I as integer
for I=1 to 15 : counters(I)=5 : next
De varias dimensiones (ej. valorar cada uno segn su localizacin):
dim I as integer, j as integer
static matrixa (1 to 10, 1 to 15) as double '150 elementos
for i=1 to 10
for j=1 to 15
matrixa(i,j)=i*10+j
next j
next i
Para Dynamic Arrays (tamao autom. segn utilizacin) ver ReDim en Ayuda..
Constantes.
A diferencia de Variables, son datos fijos.
const pi=3.1416, max_planets=9
const word_pop =6E+=9, pi2=pi*2
En uso: static solarsystem(1 to max_planets) 'array
if numpeople > word_pop then exit sub
const release_date = #30-11-97#
Declarar para toda la aplicacin: Global const en Declaraciones de mdulo.
Variables de objeto
dim femploy as form, cbirth as control
set femploy=forms!employees
set cbirth=femploy![birth date]
Tipos: database, form, report, control, querydef, table, dynaset, snapshot.
Dynaset es tabla o resultado de consulta, actualizable. Snapshot igual, pero no actualizable.
Table, Dynaset y Snapshot son Recordset variables.
Tipos especiales: Screen (formulario, informe o control actual) y Debug (imprimir Panel inmediato).
Los objetos deben estar abiertos. Con Set se hace referencia al objeto real.
dim x as control, y as control
set x=forms!employees!age
GUIA ACCESS 129
set y=x : x=x*2 'variable de control y tambin queda *2

dim anyform as form, anycontrol as control
set anyform=forms![customers]
set anycontrol=anyform![Cust ID]

dim visvar, salcontrol as control
set salcontrol=forms!Employees!salary
visvar=salcontrol.visible 'asigna el valor de la propiedad Visible.
Despus:
visvar=false 'o true, no ver o ver.
Sera lo mismo que:
Forms!employees!salary.visible=false

Variable con el nombre del objeto (poner entre ()):
dim someform, formvar as form
someform=inputbox("What form?")
set formvar=forms(someform)

Lo siguiente es equivalente:
set formvar=forms("employees") 'entre comillas es nombre
literal.
set formvar=forms!employees

The Count property (Forms and Reports) returns the number of each control (0 to n-1).
Listar Controles de un formalario:
dim formvar as form, somecontrol
set formvar=forms!employees
for somecontrol=0 to formvar.count 1
'la propiedad Count va de 0 a n-1 (-1 no es incremento,
que es 1)
debug.? formvar(somecontrol)
next somecontrol
Listar Formularios. Ver si est cargado un formulario.
function isloaded(myformname) 'para ver si est cargado un formula-
rio
dim i
isloaded=false
for i=0 to forms.count -1
if forms(i)!formname=myforname then isloaded=true : exit func-
tion
next
end function
Objetos predefinidos
Forms and Reports are predifined objects that contains all the open forms and reports in a database. Each form
and report also has a predefined object called Dynaset, which contains all the fields in the dynaset underly-
ing the form or report.
debug.? forms![my form].Dynaset![Field 1]
Con dynaset se utiliza el punto porque es objeto definido por Access. El ! se utilizado slo con objetos creados.
Subformulario (objeto Form): Poner Visible a SubForm en control Container de Form TopForm:
debug.? forms!topform!container.form!subform.visible Ver Pg 134.
Mtodos de Objetos.
Method is a special statement or function that operates on a specific object. Objects have members, properties
and methods.
Sintaxis: object.method[(arglist)]
Las propiedades y los mtodos utilizan el punto. Los mtodos se distinguen porque usualmente tienen argumen-
tos.
Ej mtodos: createdynaset y movenext
dim mydb as database, results as dynaset
130 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155
set mydb=currentdb()
set results = mydb.createdynaset("Final Query")
do until results.eof : results.movenext : loop
' No arguments in movenext method, don't return value.
Print en realidad en un mtodo de Debug, al igual que lo puede ser de Reports.
Objectos como argumentos en Procedimientos.
Una funcin solo devuelve tipos bsicos como Variant o Integer, pero un procedemiento tanto function como sub
puede aceptar objetos como argumento. Para pasar un control como argumento, definirlo:
sub flipvisitibility (c as control)
c.visible=not c.visible
end sub

Tambin Variant admite Controles como argumento:
function reverse(s as variant, byval n as integer) 'reverses the
first n
'characters in S.
dim temp as string, i as integer
if n > len(s) then n = len(s)
for i = n to 1 step - 1
temp= temp + mid(s, i, 1)
next
reverse= temp + right(s, len(s) - n)
end function
Llamar:
debug.? reverse(forms!customers![company name],6)

Control de Errores durante ejecucin.
True: -1, False: 0
function fileexists(filename)
dim msg
on error goto checkerror
fileexists=(dir(filename) <> "") 'use Dir to see if file exists
exit function
checkerror:
const mb_esclaim=48, mb_stop=16, mb_ok_cancel=1, button_ok=1
' constantes de tipos de mensajes.
if err=71 then 'disk not ready
msg="Put a floppy disk in the drive and close the drive door."
'display message box with an exclamation mark icon and with OK
and
'Cancel buttons.
if msgbox(msg, mb-exclaim + mb-ok-cancel)=button-ok then
resume 'vuelve misma instruccin de error
else
resume next 'siguiente al error
end if
elseif err= 68 then 'device unavailable
msg="This drive or path does not exist: "+ filename
msgbox msg, mb-exclaim
resume next
else
msg="Unanticipated error number"+str(err)+ " occurred: "+ error
'display message box with stop sign icon and OK button
msgbox msg, mb_stop
stop
end if
resume 'vuelve a la lnea del error.
end function

GUIA ACCESS 131
On Error sigue activo hasta Exit Sub/Function o End Sub/Function (o On Error Goto 0).
Resume va a la lnea del error, con Resume Next, a la siguiente.
Resume line vuelve a nmero de lnea o a etiqueta de lnea.

function divide (number, denom)
const mb-exclaim=48
const err-div0=11, err-overflow=6, err-illfunc=5
on error goto mathhandler
divide=numer/denom
exit function
mathhandler:
if err=err_div0 or err=err_overflow or err=err_illfunc then
divide=null
else
msgbox "Unanticipated error "& err & ": " & error, mb-exclaim
end if
resume next
end function

function verifyfile()
dim nl, prompt, msg, filespec
nl=chr(13) & chr(10) 'carriage return-linefeed combination (new
line)
prompt="Enter file specification to check:"
starthere:
filespect="*.*" 'start with default
msg=msg & nl & prompt 'let the user modify the default
filespect=inputbox(msg, "file Search", filespec,100,100)
if filespec="" then exit function 'user enters nothing
on error goto handler
verifyfile= dir(filespec)
exit function
handler:
select case err
case 64, 52 'invalid, bad filename
msg="Your file spec was invalid. Try another."
case 71 'drive door open
msg="Close the disk drive door and try again."
case 68
msg="The drive you spec was not found. Try again."
case else
error err 'statament (error err) para errores no contempla-
dos. Tambin se 'puede utilizar un procedimiento propio
de ltimo recurso, o un Stop.
end select
resume starthere
end function
Para inhabilitar la captura de errores en cualquier momento: On Error goto 0
Cdigos con Formularios e I nformes
En propiedad OnPush =RemoveIt(0) (sin = sera macro, no funcin)
La propiedad de evento slo admite llamada a funciones, ignorando valor devuelto. Nunca a Sub.
En diseo se puede cambiar cualquier propiedad. En otra vista slo:
Enabled: si un control puede estar enfocado en vista formulario.
Locked: si permite cambios en los datos en vista formulario.
Visible: muestra o esconde un control o seccin.
Updating Forms:
DoCmd para ejecutar casi cualquier accin.
Para realizar acciones de macros desde cdigo en Access 97, use el objeto DoCmd y sus mtodos.
132 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155
docmd repaintobject a_form,"myform" 'para forzar actualizacin
inmediata de propiedad. Tambin se utiliza para mensaje inmediato,
como "Processing" o"Please wait" en un Cuadro de Texto.
Mostrar inmediatamente cambios (Requery, display most current data):
docmd requery "mycontrol"
Records refreshed in a multiuser environment:
docmd domenuitem a_formbar, a_recordsmenu, a_refresh
En Access 97, la accin EjecutarComando reemplaza a la accin EjecutarElementoMen (DoMenuItem).
Crear listas para Cuadro de Lista/Combinado:
Function functioname(fld as control,id,row,col,code)
Argument Description
fld A control var that refers to the list box or combo box being filled.
id A unique value that identifies the control being filled; useful when you want to use the
same list function for more than one list box of combo box and distinguish between them.
row The row being filled in the list box (0-based).
col The column being filled in the list box (0-based).
code (cdigo) A value that specifies the kind of info being requested.
Se utilizan llamadas repetidas a la funcin con diferentes code, segn necesario.
Puesto que Access llama a una funcin definida por el usuario varias veces para insertar elementos en una lista, a
menudo es necesario preservar la informacin de una llamada a otra. La mejor forma de hacer esto es utilizar
variables Static.
Access llama repetidamente a la funcin definida por el usuario utilizando valores diferentes en el argumento
cdigo para especificar la informacin que necesita. El argumento cdigo puede utilizar las siguientes constantes
intrnsecas (propias objetos Access)..
Constante Significado Valor devuelto por la funcin
acLBInitialize Inicializar No-cero si la funcin puede rellenar la lista; False (0) o Null en caso
contrario.
AcLBOpen Abrir Valor de Id. no-cero si la funcin puede rellenar la lista; False o Null
en caso contrario.
acLBGetRowCount Nmero de filas Nmero de filas en la lista (puede ser cero); -1 si desconocido.
AcLBGetColumnCount Nmero de columnas Nmero de columnas en la lista (no puede ser cero); debe
coincidir con la configuracin de la hoja de propiedades.
acLBGetColumnWidth Ancho de la columna Ancho (en twips) de la columna especificada por el
argumento col; -1 para utilizar el ancho predeterminado.
AcLBGetValue Entrada de lista Entrada de la lista para ser mostrada en la fila y columna especificda
por los argumentos fila y col.
acLBGetFormat Cadena de formato Cadena de formato para ser utilizada para dar formato a la
entrada de la lista mostrada en la fila y columna especificada por los argumentos fila y
col; o -1 para utilizar el formato predeterminado.
acLBEnd Fin (la ltima llamada a una funcin definida por el usuario siempre utiliza este valor)
Nada.

La siguiente funcin definida por el usuario devuelve una lista de los siguientes cuatro Lunes que siguen a la
fecha de hoy. Para llamar a esta funcin desde un control cuadro de lista, introduzca ListarLunes como el
valor de la propiedad TipoDeOrigenDeLaFila (RowSourceType), sin parntesis ni argumentos ni el signo
=, y deje en blanco el valor de la propiedad OrigenDeLaFila (RowSource).
Function ListarLunes(fld As Control,id As Variant,fila As Vari-
ant,col As Variant,cdigo As Variant) As Variant
Dim intOffset As Integer
Select Case cdigo
Case acLBInitialize ' Inicializar.
ListarLunes = True
Case acLBOpen ' Abrir.
ListarLunes = Timer ' Generar Id nica para
control.
Case acLBGetRowCount ' Obtener nmero de filas.
ListarLunes = 4
Case acLBGetColumnCount ' Obtener nmero de co-
lumnas.
ListarLunes = 1
GUIA ACCESS 133
Case acLBGetColumnWidth ' Obtener ancho de colum-
na.
ListarLunes = -1 ' -1 fuerza el uso de ancho prede-
terminada.
Case acLBGetValue ' Obtener los datos.
intOffset = Abs((9 - Weekday(Now))Mod 7)
ListarLunes = Format(Now() + intOffset + 7 *
fila,"mmmm d")
End Select
End Function

El siguiente ejemplo utiliza una matriz esttica para almacenar los nombres de las bases de datos en el directorio
actual. Para llamar a esta funcin, introduzca ListMDBs como el valor de la propiedad TipoDeOrigenDeLaFila
(RowSourceType) y deje en blanco el valor de la propiedad OrigenDeLaFila (RowSource).
Function ListarMDBs(fld As Control, id As Variant, fila As Variant,
col As Variant, cdigo As Variant) As Variant
Static dbs(127)As String, Entradas As Integer
Dim ValorDevuelto As Variant
Dim ValorDevuelto
ValorDevuelto = Null
Select Case cdigo
Case acLBInitialize ' Inicializar.
Entradas = 0
dbs(Entradas ) = Dir("*.MDB")
Do Until dbs(Entradas) = "" Or Entradas >= 127
Entradas = Entradas+1
dbs(Entradas) = Dir
Loop
ValorDevuelto = Entradas
Case acLBOpen ' Abrir.
ValorDevuelto = Timer ' Generar Id nica para con-
trol.
Case acLBGetRowCount ' Obtener nmero de filas.
ValorDevuelto = Entradas
Case acLBGetColumnCount ' Obtener nmero de co-
lumnas.
ValorDevuelto = 1
Case acLBGetColumnWidth ' Ancho de columna.
ValorDevuelto = -1 ' -1 fuerza el uso de anchopre-
determinada.
Case acLBGetValue ' Obtener datos.
ValorDevuelto = dbs(fila)
Case acLBEnd ' Fin.
Erase dbs
End Select
ListarMDBs = ValorDevuelto
End Function
Variables de Formularios e I nformes
Ver si visible o no:
dim f as form
set f=forms![products and suppliers]
if f.visible then : msgbox f.formname & " is visible."
Else : msgbox f.formname & " is not visible."
end if
Tambin: f.visible=false 'para establecer.
El formulario o informe debe estar abierto para referirse a l con una variable. Para ver si est abierto: Pg 129.
Ver todos los reports abiertos:
for i=0 to reports.count-1
debug.? reports(i).reportname
134 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155
next i
Para abrir:
docmd openform "customers"
docmd openreport "catalog"
Para cerrar:
docmd close a_form, "customers"
docmd close a_report, "catalog"
Objetos predefinidos.
Adems de objetos Forms y Reports (Ver Pg 129), el objeto Screen:
Screen property Object referred to
Screen.ActiveControl Control on the active form that has the focus (if any)
Screen.ActiveForm Form that is active (is any)
Screen.ActiveReport Report currently printing or being previewed (if any)
El nombre del control activo:
function currentctrl()
currentctrlname=screen.activecontrol.controlname
' si fuera formulario: currentformna-
me=screen.activeform.formaname
debug.? currentctrlname
end function
No se puede depurar o probar cdigo de objetos Screen ya que debe estar enfocado el formulario, informe o
control Se puede ejecutar con el nombre de funcin precedido del signo = en una propiedad de evento, como
OnPush o OnPrint.
Este ejemplo utiliza el objeto Pantalla (Screen) para mostrar el nombre del formulario de la ventana activa y del
control activo en ese formulario:
Sub ObjetosActivos()
Dim frm As Form, ctl As Control
' Retorna un objeto Form que representa al formulario ac-
tivo.
Set frm = Screen.ActiveForm
MsgBox frm.Name & " es el formulario activo."
' Devuelve un objeto Control que representa al control
activo.
Set ctl = Screen.ActiveControl
MsgBox ctl.Name & " es el control activo " _
& "de este formulario."
End Sub
Otros Objectos
Property Use
Parent For subforms and subreports, provides the form object of
the main form.
Form On forms, provides the active form object.
Report On reports, provides the active report object.
Dynaset On forms, provides the recordset containing the records for
the form.
Bookmark In Visual Basic, provides a randomly created string that
uniquely indentifies each record in a recordset.

Referirse a un control del formulario principal activo.
Command button en Subform con OnPush =displaypercent(form)
function displaypercent (f as form)
dim discountpercent, discountamount
discountpercent=f.parent![discount percent]
discountamount=discountpercent*f.[subtotal]
...
end function
Las propiedades Form y Report (diferente a objetos Forms y Reports) se puede utilizar como parmetro de una
funcin. Utilizar para referirse a objeto que no sea el activo. Tambin se pueden utilizar en lugar de Scre-
en.activeform o Screen.activereport para referir a un subform o subreport.
Marcador (Bookmark)
GUIA ACCESS 135
Marcar un registro para volver (sincronizar datos de Access Basic con el del formulario/informe):
Propiedad del objeto Recordset o de un formulario que contiene una cadena generada por el sistema que identifi-
ca el registro activo. Si asigna el valor de Bookmark a una variable y despus se mueve a otro registro, puede
volver a convertir el registro anterior en el registro activo, configurando la propiedad Bookmark con esa variable
de cadena.
dim mydyna as dynaset
set mydyna = forms!categories.dynaset
mydyna.bookmark=forms!categories.bookmark
Para volver:
forms!categories.bookmark=mydyna.bookmark (Recordar: el primero se valora al segun-
do).
Ver Pg 140.
Variables de Control
Dar valor o propiedad.
dim f as form
set f=forms!customers
f!city="Madrid"
f!city.locked=true
Recorrer los controles:
function listcontrols(r as report)
dim r as report, i
for i=0 to r.count - 1
debug.? r(i).controlname
next i
end function
Asociar variable a un control:
dim c as control
set c=forms!customers!city
c="Madrid"
c.locked=true
Controles como argumentos:
function togglevisible(c as as control)
c.visible=not c.visible
end function
Pasar valores apropiados:
function inittext (ctext as control)
'pasarle: inittext (forms!customers![contact name])
ctext="Unknown" 'Slo a controles que acepten texto (Texto o Eti-
queta)
end function
Tipo de Control
Statement: If TypeOf control is controltype then
controltype: boundobjectframe, checkbox, combobox, commandbutton, graph, label, line, listbox, object-
frame, optionbutton, optiongroup, pagebreak, rectangle, subform, subreport, textbox, togglebutton.
control declared as control:
if x =3 then x=5
elseif typeof thiscontrol is label then thiscontrol.visible=false
end if
Ponerle "Unknown" a todos los Cuadros de Texto
function initcontrols(f as form)
dim c as control, i
for i=0 to f.count - 1
set c=f(i)
if typeof c is texbox then c="Unknown"
elseif typeof c is label then c.visible=false
endif
next
end function

136 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155
Como TypeOf no puede llevar Not:
if typeof thiscontrol is textbox then 'en blanco
else
this control.visible=false
end if

Mtodos Grficos
Methods:
Circle Draws empty or filled arcs, circles, and ellipses.
Line Draws lines and empty or filled boxes
Print Draws text
PSet Draws points
Scale Changes the scale units used by the other graphics methods
TextHeight Returns the vertical height of the specified text in the current scale units.
TextWidth Returns the horizontal width of the specified text in the current scale units.
Categorias y sus Propiedades:
Current drawing location CurrentX, CurrentY
Drawing techniques DrawMode, DrawStyle, DrawWidth
Filling techniques FillColor, FillStyle
Scaling techniques ScaleLeft, ScaleTop, ScaleWidth, ScaleHeight, ScaleMode

Ver cada mtodo en Ayuda.

Para Impresin en Color, ver Ayuda para "RGB" o "QBColor"

Tratamiento de Datos
Objecto como base de datos actual
dim db as database
set db=currentdb()
Abrir otra base de datos
set db=opendatabase("nwind.mdb")
Slo se pueden utilizar sus Tablas y Consultas.
db.close para cerrar. Tambin se cierra automticamente al cerrar su mbito, pero mejor explcito.
Variables de objetos
Variables Tabla: most up-to-date. Refleja todos los cambios. No permite Sort o Filter, pero s reordenar con
Index ya creados.
Variables Dynaset: Ms flexible, pero no refleja cambios inmediatos. Permite datos sobre tablas y consultas;
tambin Sorts y Filtros. Cambios se ven al abrir de nuevo. Muchos Dynaset se pueden referir a los mis-
mos datos (tabla, consulta, otra dynaset)
Variables Snapshot: Copia fija de Tabla, Dynaset, Query u otro Snapshot.
Variables Tabla
dim db as database, tablevar as table
set db=opendatabase("nwind.mdb")
set tablevar=db.opentable("customers")
Vista real actualizada de la tabla. No se puede filtrar ni reordenar. Ver Reordering.
No se puede crear nueva tabla (excepto con make-table query).
Crear variables Dynaset
De Tabla o Consulta.
dim dsdyna as dynaset
set dsdyna=db.createdynaset("customers") 'Customers es tabla, y
podra ser
'Consulta existente.
Para Dynaset nueva, utilizar SQL string (se puede copiar de una Consulta).
sql="select * from Employees where employees![city]="London";"
set dssomedata=db.createdynaset(sql) 'slo hasta primer regis-
tro,
Ver Pg 144, Variables QuerDef .
Asignar Dynaset del formulario:
dim f as form, ds as dynaset
set f=forms("employees")
set ds=f.dynaset
GUIA ACCESS 137
Asignar Dynaset de Formulario corriente (actual) a variable:
dim dscurrentform as dynaset
set dscurrentform=screen.activeform.dynaset
Crear Dynaset con otra:
dim db database, dssomedata as dynaset, dsotherdata as dynaset
set db=currentdb()
set dssomedate=db.createdynaset("sales for 1991")
set dsotherdata=dssomedata.createdynaset()'permite reordenar y re-
stringir
'registros antes con las propiedades Sort y Filter.
Crear variables Snapshot
Crear Snapshots es similar a Dynasets.
dim db as database, dssomedata as dynaset
dim snap1 as snapshot, snap2 as snapshot
set db=currentdb()
st dssomedata=db.createdynaset("Sales for 1991")
set snap1=dbsomedata.createsnapshot()
set snap2=snap1.createsnapshot()
Cerrar variables recordset
Igual que con Database variables.
Cerrar: tablevar.close dssomedata.close snapdata.close
Cerrar una dynaset que se refiere a un dynaset de formulario no tiene efecto en sta.
Utilizar variables Recordset (Tables, Dynasets and Snapshots)
Acceder a datos:
Set dssomedata=db.createdynaset("employees")
debug.? dssomedata![last name], dssomedata![city]
Equivalentes, pero la primera es la ms rpida:
Curbirthday=dssomedate![birthdate]
curbirthday=dssomedate("birhdate") 'referencia al nombre del con-
trol.
fieldname="birthdate" : curbirthday=dssomedata(fieldname)
Slo las Variant permiten Null, por tanto es la mejor para guardar un campo.
As slo se pueden leer y mostrar los valores de estos campos. Para cambiar valores utilizar los Edit y Update
methods.
Ir a registros:
MoveFirst, MoveLast, MoveNext, MovePrevious.
En el ltimo registro, MoveNext pone EOF=True y registros actual indefinido. Otro MoveNext dara error.
Igual con MovePrevious y el primer registro. Si no existen registros, BOF y EOF are True.
Registro a registro (slo como ilustracin, ver abajo):
sub moveforward()
dim db as database, ds as dynaset
set db=currentdb()
set ds=db.createdynaset("Employees") 'los Dynaset siempre se crean
do until ds.eof
debug.? ds![last name], ds![title]
ds.movenext
loop
ds.close
end sub

En vez de ir de uno en uno como en ej. anterior, utilizar Action Queries con "QueryDef" variables, o los Find o
Seek Methods (ver delante).
Ordenar, clasificar registros
Con tablas slo se pueden utilizar ndices ya creados.
sub indextext()
dim db as database, t as table
set db=currentdb()
set t=db.opentable("customers")
debug.? t![company name] 'primera segn primary key o random
t.index="city" 'nombre del ndex ya existente (siempre).
138 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155
debug.? t![company name] ' primera segn ndice de city.
t.close
end sub
No se puede crear ndices para tablas. Para ver existentes: ListIndexes method.
Para ver en otro orden, crear Dynaset :
dim db as database, somedata as dynaset, sorteddata as dynaset
set db=currentdb()
set somedata=db.createdynaset("products")
somedata.sort="[category id], [product name]"
set sorteddata=somedata.createdynaset()

somedata.sort="[category id], [unit price] desc, [supplier id]"
set sorteddata=somedata.create dynaset()

Utilizar la misma variable para ordenar:
snapdata.sort="[product name]"
set snapdata=snapdata.createsnapshot() 'igual, pero con sort.

Puede ser ms eficiente crear una Consulta (QueryDef,. Action Queries) que crear una Dynaset of Snapshot y
hacerle sort o filtro.
Filtrar, consultar
Similar a Ordenar.
Set snapdata=db.createsnapshot("sales for 1996")
snapdata.filter="[category name]='Beverages'"
set snapdata=snapdata.createsnapshot()

q.filter="employess![last name]>'M' and employees![country]='USA'"

q.filter="employees.[last name]=""O'Keane""" 'ver comillas

dim db as database, somedata as dynaset, sorteddata as dynaset
set db=currentdb()
set somedata=db.createdynaset("products")
somedata.filter="[quantity per unit] like '*box*'"
somedata.sort ="[category id], left([product name], 1)"
set sorteddata=somedata.createdynaset()

Los filtros no se pueden aplicar a Tablas. Crearle una Dynaset.
Es ms eficiente para filtrar crear una nueva Consulta (QuerDef, Action Queries), que crear una Dynaset y fil-
trarla, a no ser que ya exista.
Modificar registros
Ej. siguiente ms eficiente con Consulta de actualizacin. En general es ms rpido y eficiente utilizar Que-
ryDef con sentencias SQL que los siguientes ejemplos de consultas de accin. Tambin con las de selec-
cin. Ver Pg 144.
Utilizar Edit para preparar el registro. Despus cambiarlo y utilizar Update para guardar los cambios.
Cambiar en todos un valor por otro.
sub replacecountry(oldvalue, newvalue)
dim db as database, t as table
set db=currentdb()
set t=db.opentable("customers")
do until t.eof
if t!country=oldvalue then : t.edit : t![country]=newvalue :
t.update
t.movenext
loop
t.close
end sub

Cambiar sin Edit, da error. Sin Update no cambia.
GUIA ACCESS 139

Ej. de campo a utilizar como Primary Key, donde primero hay que eliminar los Nulls:
(Ver tambin Finding records)
sub eliminatenulls(fieldname, tablename, databasename)
dim db as database, dstable as dynaset, counter
if fieldname="" or tablename="" then exit sub
if databasename="" then set db=currentdb()
else : set db=opendatabase(databasename)
end if
set dstable=db.createdynaset(tablename)
counter=val(dmax(fieldname, tablename))+1
do until dstable.eof
if isnull(dstable(fieldname)) then
dstable.edit
dstable(fieldname)=counter
dstble.update
counter=counter+1
end if
dstable.movenext
loop
dstable.close
db.close
end sub

Dynasets se pueden abrir sobre Consultas de mltiples tablas. Los cambios en Dynaset se reflejarn en las tablas.
En relaciones de uno-a-muchos, slo la tabla de muchos se pueden cambiar.
Eliminar registros
Ms eficiente hacer delete Query con QueryDef:
Anular/eliminar todos los registros.
sub emptytable (tany as table)
tany.movefirst
do until tany.eof
tany.delete
tany.movenext
loop
end sub
Con Dynaset pone todos los campos a Null. Con Tabla, elimina los registros.
Aadir registros
Ms eficiente con Action Query de QueryDef. Aadir registro.
dim db as database, t as table
set db=currentdb()
set t=db.opentable("shippers")
t.addnew 'creates a new blank record and makes it current
t![company name]="Global Parcel Service"
t.update 'el registro activo anterior vuelve a ser el corriente.
t.close
Con tabla se coloca segn ndice, con dynaset, al final.
Buscar registros en Dynaset y Snapshots
Igual que los Move., pero con Criteria: FindFirst criteria, FindLast cri, FindNext cri, FindPrevious
cri. No se pueden utilizar con variable tabla, utilizar Seek (ver adelante).
Buscar campos con un contenido.
sub jarproducts()
dim db as database, somedata as dynaset, criteria
set db=currentdb()
set somedata=db.createdynaset("products")
criteria="[product name] like '*jar*'" 'Criteria siempre debe
ser un String
somedata.findfirst criteria
do until somedata.nomatch
140 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155
debug.? somedata![product name], somedata![quantity per unit]
somedata.findnext criteria 'si no encuentra, nomatch es true y
registro 'actual indefinido. Utilizar Bookmark si se
quiere volver al anterior.
loop
somedata.close
end sub
Buscar campos Null para aadirle 1 y utilizar como PrimaryKey. Ms eficiente que en Changing records
anterior.
sub eliminatenulls(fieldname, tablename, databasename)
dim db as database, dstable as dynaset, counter, criteria
if fieldname="" or tablename="" then exit sub
if databasename="" then set db=currentdb()
else : set db=opendatabase(databasename)
end if
set dstable=db.createdynaset(tablename)
counter=val(dmax(fieldname, tablename))+1
criteria=fieldname & " = null"
dstable.findfirst criteria
do until dstable.nomatch
dstable.edit : dstable(fieldname)=counter : dstable.update
counter=counter+1 : dstable.findnext criteria
loop
dstable.close
db.close
end sub

No se puede utilizar los Find methods con Tablas. Utilizar Dynaset o Snapshot y Find. S se puede utilizar Seek
method con Tablas con sus ndices.
Buscar registros en Tablas
Seek utiliza arg. El primero es siempre comparacin, el 2do., data a buscar. Debe especificarse siempre antes un
Index existente de tabla.. Buscar el primero que comience con 'U':
dim db as database, cust as table
set db=currentdb()
set cust=db.opentable("customers")
cust.index="[company name]"
cust.seek ">=", "U"
if not cust.nomatch then
msgbox cust![company name] & " " & cust![postal code]
end if
cust.close
Buscar un registro con un ndice mltiple (PrimarKey):
function getfirstprice(orderid, productid) 'el 2do. campo ndice no sera obligato-
rio
dim db as database, cust as table
if not (isnumeric(orderid) and isnumeric(productid)) then
getfirstprice=null : exit function
end if
set db=currentdb()
set cust=db.opentable("Order details")
cust.index="PrimaryKey" 'ndice con OrderID y ProductID
cust.seek "=", orderid, productid
if cust.nomatch then gerfirstprice=null
else : getfirstprice=cust![unit price]
end if
cust.close
end function
Marcadores
Para volver al mismo registro:
GUIA ACCESS 141
Currentrec=ds.bookmark 'marcar (Recordar: el primero se pone al
segundo)
ds.bookmark=currentrec 'volver

currentrec=ds.bookmark
ds.findfirst criteria
if ds.nomatch then ds.bookmark=currentrec 'volver al anterior
Botn Show Manager en Employees form con OnPush en esta funcin: (=showmanager())
function showmanager()
dim f as form, ds as dynaset, currentrec
set f=forms("employees")
set ds=f.dynaset 'dynaset de "employees"
ds.bookmark=f.bookmark
ds.findfirst "[employeeid] = " & ds![reports to]
if ds.nomatch then msgbox "Manager not found"
else : msgbox "Manager: " & f.[employee name]
end if
f.bookmark=ds.bookmark 'volver al empleado
end function
Cloning
Para crear una copia idntica de Dynaset y tener 2 current records.
Crear un dynaset sobre otra no es lo mismo, ya que el orden y los reg. pueden no ser los mismos y adems no
pueden compartir Boorkmarks. Los registros de dos dynaset sobre una misma tabla afectan igualmente a la tabla,
pero no entre los registros de las dynasets
Cloning permite tener dos registros actuales en el mismo Dynaset, mientras que crendole otro Dynaset sern
completamente independientes. Los registros entre un dynaset y su clnico no pueden variar.
dim db as database, ds1 as dynaset, ds2 as dynaset
set db = currentdb()
set ds1 = db.createdynaset("table1")
set ds2 = ds1.clone()

Este ej. de copiar un registro en un mismo Dynaset se podra hacer con Bookmarks y sin clone(), pero as es
ms eficiente y cdigo ms simple: (Ver tambin Listing the Fields in a Recordset)
sub copycurrentrec (ds as dynaset, fields())
' fields is an array containing all field names in the dynaset
dim i, dscopy as dynaset
set dscopy = ds.clone() 'actuar sobre un clone() es igual que so-
bre dynaset
dscopy.addnew
for i = lbound(fields) to ubound(fields)
dscopy(fields(i)) = ds(fields(i))
next i
dscopy.update
dscopy.close
end sub
Manipular campos grandes
Para objetos OLE y Memo fields muy grandes.
Method Purpose
FieldSize Returns the size of the specified field.
GetChunk Returns a specified portion of the field
AppendChunk Appends the contents of a specified variable to the field
Separa los campos a pedazos (chunks), ya que mximo de Strings es de 64K.
Transacciones
Una trasaccin son varias operaciones que se deben realizar completas y bien. (Ej.: completar bien el dbito y el
crdito de un banco).
Statement Purpose
BeginTrans Begins a trasaction
CommitTrans Commits all changes made since the most recent BeginTrans statement.
Rollback Rolls back all changes made since the most recent BeginTrans statement.
function transferfunds(fromaccount, toaccount, customerid, amount)
142 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155
'transfer amount from customerid's fromaccount to toaccount.
'returns 0 if successful, nonzero error value is unsuccessful.
dim db as database, source as dynaset, destination as dynaset
on error resume next
set db = currentdb()
set source = db.createdynaset(fromaccount)
set destination = db.cratedynaset(toaccount)
if err then 'error with a field or table
on error goto 0
transferfunds = err
exit function
end if
source. findfirst "[cust id] = " & customerid
destination.findfirst "[cust id] = " & customerid
if not (source.nomatch or destination.nomatch) then
if source!balance >= amount then
begintrans
source.edit
source![balance] = source![balance] - amount
source.update
destination.edit
destination![balance] = destination![balance] + amount
destination.update
if err then
transferfunds = -1
rollback
else
transferfunds = 0
committrans
end if
else
transferfunds = -2
end if
else
transferfunds = -3
end if
source.close
destination.close
end function
Ejemplo de Transaccin anidada. Crear nueva Categoria solo si hay productos para ella:
(Ver Pg 144 Updating Recordsets with QuerDef Variables)
dim db as database, dscat as dynaset, dsproduct as dynaset
dim criteria, failure
on error resume next
set db = currentdb()
set dsproduct = db.createdynaset("products")
failure = false
criteria = "[english name] like '*sauce*'"
begintrans 'outer transaction
dsproduct.findfirst criteria
do until dsproduct.nomatch
begintrans 'inner transaction
dsproduct.edit
dsproduct![category id] = "SAUC"
dsproduct.update
if err then
failure = true
rollback 'inner transaction.
GUIA ACCESS 143
else
commitrans 'inner transaction.
end if
if failure then exit do
dsproduct.findnext criteria
loop
if failure then
rollback 'outer transaction.
msgbox "Failed: " & error
else
' create new sauces category.
set dscat = db.createdynaset("Categories")
dscat.addnew
dscat![category id] = "SAUC"
dscat![category name] = "Sauces"
dscat![description] = "Sauces"
dscat.update
if err then
rollback 'outer transaction.
msgbox "Failed: " & error
else
committrans 'outer trasaction.
msgbox "Succeeded"
end if
end if
Todo BeginTrans debe terminar con Commit o RollBack.
Bloquear datos
Para que ningn otro usuario cambie los datos mientras se vayan a utilizar.
Se utiliza el parmetro True:
En Databases: set db = opendatabase("nwind.mdb", true)
En Tablas y Dynasets: set datarecs = db.createdynaset("employees", true)
Para slo registros, ver propiedad Lockedits.
I nformacin de los objetos de la Base de datos
Listing the Tables and Queries in a Database
Method Returns
ListTables A Snapshot containing a record for each table or query in the database.
ListFields " field in the recordset.
ListIndexes " index in a table
ListParameters " parameter in a QueryDef.
sub display tables()
dim db as database, sstablelist as snapshot
set db=currentdb()
set sstablelist=db.listtables()
debug.? "Table Name", "Record Count", "Created",, "Updated"
do until sstablelist.eof
If sstablelist.tabletype <> db_querydef then 'skip queries
debug.? sstablelist.name, sstablelist!recordcount, ;
debug.? Sstablelist.datecreated, sstablelist.lastupdated
end if
sstablelist.movenext
loop
sstablelist.close
end sub
El ejemplo de arriba, para no incluir las tablas del sistema:
...
do until sstablelist.eof
isnotaquery=sstablelist.tabletype<>db_querydef
isnotasysobj=((sstablelist.attributes and db__systemobject)=0)
if isnotaquery and isnotasysobj then 'skip both
144 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155
...
Listar campos en un Recordset.
Sub FieldInfo (tablename, databasename)
dim db as database, ssfields as snapshot, dstable as table
if databasename="" then
set db=currentdb()
else
set db=opendatabase(databasename)
end if
set dstable=db.opentable(tablename)
set ssfields=dstable.listfields()
do until ssfields.eof
debug.? ssfields.name; " ";
selec case ssfields.type
case db-boolean
debug.? "Yes/no"
case db_date
debug.? "Date/Time"
case db_text, db_memo
debug.? "Text"
case db_ole
debug.printy "OLE"
case else
debug.? "Numeric"
end select
ssfields.movenext
loop
ssfields.Close
dstable.close
if databasename <> "" then db.close
end sub
Copiar registro:
Sub copycurrentrec(ds as dynaset)
dim dscopy as dynaset, ssfieldlist as snapshot
'assume that the current dynaset record is the record to copy
set dscopy=ds.clone()
dscopy.addnew
set ssfieldlist=ds.listfields()
do until ssfieldlist.eof
if (ssfieldlist.attributes and db-updatablefield)=0 then
dscopy(ssfieldlist.name)=ds(ssfieldlist.name)
end if
ssfieldlist.movenext
loop
dscopy.update
ssfieldlist.close
dscopy.close
end sub
Variables QueryDef
Para crear o modificar Consultas.
Slo con QueryDef se define la consulta, pero no se accede a sus datos.
Se puede definir una nueva o redefinir una existente.
Si es Consulta de Seleccin, se crea una Dynaset sobre la variable QueryDef. Si es de Accin se utiliza el mto-
do Execute.
Cuando se abre una Tabla con una Variable Tabla, se pueden inmediatamente manipular sus datos.
Abrir Consulta existente.
dim db as database, q as querydef, datarecs as dynaset
set db = currentdb()
set q = db.openquery("Sales Totals Query") 'seleccin
GUIA ACCESS 145
set datarecs = q.createdynaset()
q.close
Con QuerDef Variables se permite operar con Action Queries adems de Select Queries. Como Action Queries
no devuelven registros, no hay que abrir Dynaset o Snapshot, sino utilizar el Execute Method:
dim db as database, q as querydef
set db = currentdb()
st q = db.openquery("update sales") 'de accin update
q.execute
q.close
Tratar de abrir una Action Query con un Dynaset o Snapshot da error, igual que abrir con Execute method una
Select Query.
Crear consulta
dim db as database, q as querydef, daterecs as dynaset, sql as
string
set db = currentdb()
set q = db.createquerydef("new query") 'to define the
query, you assign a 'valid SL string to the SQL property of the
QueryDef variable:
q.sql = "select [first name], [last name] from employees;"
'create SQL trings in the user interface and then copy
(and modify) it (Vista SQL de Consultas)
set datarecs = q.cretedynaset()
q.close 'good practice to close the QuerDef variable.
db.deletequerydef "new query" ' si no se quiere guardar.
... 'operar con datarecs
Tambin se puede incluir la definicin con la creacin:
Set q = db.createquerydef("New Query", "select subtotal from or-
ders;")

Este ejemplo crea un objeto QueryDef nuevo y lo anexa a la coleccin QueryDefs del objeto Database Neptuno.
Despus enumera la coleccin QueryDefs y la coleccin Properties del QueryDef nuevo.
Sub QueryDefX()
Dim dbsNeptuno As Database, qdfNuevo As QueryDef, qdfBucle As Query-
Def
Dim prpBucle As Property
Set dbsNeptuno = OpenDatabase("Neptuno.mdb")
Set qdfNuevo = dbsNeptuno.CreateQueryDef("NewQueryDef", "SELECT *
FROM Categoras") ' Crea QueryDef nuevo. Ya que tiene un nombre, se anexa automtica-
mente a ' la coleccin QueryDefs.
With dbsNeptuno
Debug.Print .QueryDefs.Count & "QueryDefs en " & .Name
For Each qdfBucle In .QueryDefs
Debug.Print " " & qdfBucle.Name 'Enumera la coleccin
ueryDefs.
Next qdfBucle
With qdfNuevo
Debug.Print "Propiedades de " & .Name
For Each prpBucle In .Properties
On Error Resume Next
Debug.Print " " & prpBucle.Name & " - " & _
IIf(prpBucle = "", "[vaco]", prpBucle)
' Enumera la coleccin Properties del objeto Query-
Def nuevo.
On Error Goto 0
Next prpBucle
End With
.QueryDefs.Delete qdfNuevo.Name
.Close ' Elimina el QueryDef nuevo porque esto es un
ejemplo.
146 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155
End With
End Sub

Este ejemplo comprueba si hay una consulta llamada ContratosRecientes en la base de datos activa y, si existe, la
elimina de la coleccin QueryDefs. A continuacin, el procedimiento crea un objeto QueryDef nuevo y lo abre
en la vista Hoja de datos.
Sub ConsultaNueva()
Dim dbs As Database, qdf As QueryDef, strSQL As String
Set dbs = CurrentDb ' Devuelve la referencia a la base de
datos activa.
dbs.QueryDefs.Refresh ' Actualiza la coleccin QueryDefs.
For Each qdf in dbs.QueryDefs
If qdf.Name = "ContratosRecientes" Then
dbs.QueryDefs.Delete qdf.Name ' Si existe la consulta ContratosRecientes, la
elimina.
End If
Next qdf
' Crea SQL para seleccionar empleados contratados el 1-1-94 o
despus.
strSQL = "SELECT * FROM Empleados WHERE FechaContrato >= #1-1-94#;"
Set qdf = dbs.CreateQueryDef("ContratosRecientes", strSQL) ' Crea
QueryDef nuevo.
DoCmd.OpenQuery qdf.Name ' Abre la consulta en la vista Hoja de
datos.
Set dbs = Nothing ' Nothing se utiliza para desvincular una variable objeto de un objeto real.
End Sub

Modificar consulta existente
Aadir campo "Region":
dim db as database, q as querydef, qtemp as querydef, datarecs as
dynaset
dim sql as string, i as long, qtempname as string
set db = currentdb()
set q = db.openquerydef("Sales Totals Query")
sql = q.sql
q.close
i = instr(1, sql, chr(13) & chr(10) & "from", 1) -1
'The From clause is always preceded by chr(13) and Chr(10);
this allows you 'to find it even if From appears in table or
field names.
sql = left(sql, i) & ", [employees].[region]" & right(sql, len(sql)
-i)
i = instr(1, sql, ";" & chr(13) & chr(10), 1) -1
'final semicolon is followed by chr(13) and chr(10).
sql = left(sql, i) & ", [employees].[region]" & right (sql, len(sql)
-i)
qtempname = "Temp" & now
set qtemp = db.createquerydef(qtempname) 'crea una nueva query
qtemp.sql = sql
set datarecs = qtemp.cratedynaset()
qtemp.close

Modificacin de Recordsets con Variables QueryDef
Con QuerDef se puede hacer lo mismo que con objetos Consultas. Ejemplo siguiente igual que anterior para
crear categora SAUC en Trasacciones:
dim db as database, q as querydef, sql
on error resume next
set db = currentdb()
sql = "Update products Set products.[category id] = 'SAUC'"
GUIA ACCESS 147
sql = sql & " Where (products![english name] like '*sauce*');"
set q = db.createquerydef("make sauces", sql)
begintrans
q.execute
if err then
rollback
msgbox "Failed: " & error
else
committrans
msgbox "Succeeded"
end if
q.close
db.deletequerydef ("make sauces")
Utilizando las sentencias SQL se puede realizar cualquier operacin, inclusive que no se pueden realizar con
Consultas normales. Por ejemplo, no se puede definir una consulta con un nombre de tabla como parmetro,
como para borrar todos su registros. Con una QueryDef variable:
sub emptytable(tablename as string, dbname as string)
dim db as database, qdelete as querydef, sql as string
if dbname = "" then set db = currentdb()
else : set db = opendatabase(dbname)
end if
sql = "delete from " & tablename & ";"
set qdelete = db.createquerydef("emptytable", sql)
qdelete.execute
qdelete.close
db.deletequerydef("emptytable")
if dbname <> "" then db.close
end sub

En el ejemplo siguiente se ejecuta una consulta de acciones y se imprime el nmero de registros afectados:
Sub RecordsUpdated()
Dim dbs As Database, qdf As QueryDef, strSQL As String
Set dbs = CurrentDb ' Devuelve una referencia a la base de datos ac-
tiva.
strSQL = "UPDATE Empleados SET Cargo = " _
& "'Representante de ventas senior' " _
& "WHERE Cargo = 'Representante de ventas';"
Set qdf = dbs.CreateQueryDef("ActualizarCargos", strSQL) ' Crea ob-
jeto QueryDef.
qdf.Execute ' Ejecutar QueryDef.
Debug.Print qdf.RecordsAffected 'Devuelve el nmero de reg. afectados por el ltimo Exe-
cute.
Set dbs = Nothing
End Sub

Consultas de Parmetros
Se usa el operador ! para acceder a parmetros en una QueryDef variable.
Antes de ejecutar un Consulta de Parmetros, hay que suministras sus valores.
dim db as database, q as querydef, datarecs as dynaset
set db = currentdb()
set q = db.openquerydef("Products Ordered by Category")
q![category id] = "COND" 'parmetro
datarecs = q.createdynaset()

El ListParameters method obtiene los parmetros de una Query.
Devuelve un Snapshot con registros siguientes:
Field Contains Access Basic data type
Name Name of the parameter String
Type Data type of the parameter Long
148 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155

El siguiente ejemplo detalla los registros de parametros en Immediate Window:
sub dumpparams(queryname, databasename)
dim db as database, qany as querydef, ssdump as snapshot
if databasename = "" then set db = currentdb()
else : set db = opendatabase(databasename)
end if
set qany = db.openquerydef(queryname)
set ssdump = qany.listparameters()
if ssdump.recordcount > 0 then
do until ssdump.eof
debug.? ssdump.name, ssdump.type
ssdump.movenext
loop
else : debug.? "'" & queryname & "' is not a parameter query"
end if
ssdump.close
qany.close
if databasename <> "" then db.close
end sub
Se pueden utilizar los datos de los parmetros en un formulario para solicitar valores al usuario.


Tabla de Contenido

A C C E S S 97 ..................................................................................................................................................... 1
PARA COMANDOS GENERALES DE OFFICE 97 Y WINDOWS VER GUA WORD .......... ERROR! MARCADOR NO
DEFINIDO.
GUA ALFABTICA DE TABLAS, CONSULTAS, FORMULARIOS E INFORMES. ............................... 1
BASE DE DATOS................................................................................................................................................ 12
MENUS EN VISTA GENERAL ....................................................................................................................... 13
MENU ARCHIVO ...................................................................................................................................................... 13
MENU EDICION ........................................................................................................................................................ 13
MENU VER ................................................................................................................................................................ 13
MENU INSERTAR ..................................................................................................................................................... 14
MENU HERRAMIENTAS. ........................................................................................................................................ 14
Proteger una base de datos agregando una contrasea de base de datos .................................................... 14
Proteger una base de datos con el Asistente para seguridad a nivel de usuario. .......................................... 15
MENU MUESTREME. ............................................................................................................................................... 16
TABLAS ............................................................................................................................................................... 16
TABLAS - MENUS EN VISTA HOJA DE DATOS ......................................................................................... 16
MENU EDICION ........................................................................................................................................................ 16
MENU VER ................................................................................................................................................................ 16
MEN INSERTAR ..................................................................................................................................................... 16
MENU FORMATO ..................................................................................................................................................... 17
MENU REGISTROS .................................................................................................................................................. 17
TABLAS - MENUS EN VISTA DISEO. ........................................................................................................ 17
MENU EDICION ........................................................................................................................................................ 17
CLAVE PRINCIPAL .............................................................................................................................................. 17
Qu tipo de clave principal debo utilizar? ................................................................................................................. 17
Claves principales de Autonumrico ........................................................................................................................... 17
Claves principales de Campo simple ........................................................................................................................... 18
Claves principales de Campos mltiples ..................................................................................................................... 18
MENU VER ................................................................................................................................................................ 18
MENU INSERTAR. .................................................................................................................................................... 18
CAMPO DE BSQUEDA ........................................................................................................................................ 18
Crear un campo que busque o enumere los valores de las tablas:................................................................................ 18
Crear un campo que busque datos de otra tabla en la vista Diseo: ............................................................................ 19
Crear un campo de lista de valores en la vista Diseo: ................................................................................................ 19
GUIA ACCESS 149
FICHA GENERAL EN DISEO DE TABLA. PROPIEDADES DE LOS CAMPOS. ........................................................... 19
Propiedad Nombre del campo ...................................................................................................................................... 19
Propiedad Tipo de datos ............................................................................................................................................... 19
Propiedad Descripcin ................................................................................................................................................. 20
Propiedad Tamao del campo ...................................................................................................................................... 20
Propiedad Formato de Campo. .................................................................................................................................... 21
Propiedad Mscara de Entrada. .................................................................................................................................... 24
Propiedad LugaresDecimales (DecimalPlaces) ............................................................................................................ 25
Propiedad Ttulo (Caption) .......................................................................................................................................... 26
Propiedad ValorPredeterminado (DefaultValue) ......................................................................................................... 26
Propiedades ReglaDeValidacin (ValidationRule) y TextoDeValidacin (ValidationText) ....................................... 27
Propiedad Requerido (Required).................................................................................................................................. 28
Propiedad Indexado ..................................................................................................................................................... 29
FICHA BSQUEDA EN DISEO DE TABLA, CON CUADRO DE LISTA O COMBINADO. ............................................ 29
Propiedad Mostrar control ........................................................................................................................................... 29
Propiedades que puede utilizar para crear o modificar cuadros de lista y cuadros combinados, Resumen. ................. 30
RELACIONES....................................................................................................................................................... 30
Definir relaciones entre tablas ...................................................................................................................................... 31
Integridad referencial. .................................................................................................................................................. 31
Propiedades de la combinacin. ................................................................................................................................... 32
CONSULTAS....................................................................................................................................................... 32
CONSULTAS - MENUS VISTA HOJA DE DATOS ....................................................................................... 32
CONSULTAS - MENUS VISTA DISEO ....................................................................................................... 32
MENU EDICION .............................................................................................................................................. 32
MENU VER................................................................................................................................................................. 33
SQL. .................................................................................................................................................................. 33
Trabajar con SQL en consultas, formularios, informes, macros y mdulos: ................................................................ 33
Ver o modificar la instruccin SQL que est detrs de una consulta existente: ........................................................... 33
Generar instrucciones SQL que incluyan variables y controles: .................................................................................. 33
FUNCIONES AGREGADAS Y OTRAS OPCIONES DE LA FILA TOTAL EN DISEO DE LA CONSULTA ........................... 34
Ejemplos para totalizar por grupos. ............................................................................................................................. 34
MENU CONSULTA ................................................................................................................................................... 35
CONSULTA DE SELECCIN .................................................................................................................................. 35
Qu es una consulta de seleccin y cundo se usa? .................................................................................................... 35
Crear una consulta de seleccin sin un asistente .......................................................................................................... 35
Crear una consulta de seleccin sencilla mediante un asistente ................................................................................... 36
CONSULTA DE TABLA DE REFERENCIAS CRUZADAS ............................................................................................ 36
Crear una consulta de tabla de referencias cruzadas sin usar un asistente .................................................................... 36
Crear una consulta de tabla de referencias cruzadas mediante un asistente ................................................................. 37
Ordenar o limitar los encabezados de columnas presentados en una consulta de referencias cruzadas ....................... 37
Ejemplo de Consulta de Referencias Cruzadas: Pedidos Trimestrales por Producto. .................................................. 37
CONSULTAS DE ACCIN. ..................................................................................................................................... 38
CONSULTA DE CREACIN DE TABLA ................................................................................................................... 39
Ejemplo: ....................................................................................................................................................................... 39
CONSULTA DE ACTUALIZACIN .......................................................................................................................... 39
Ejemplo: ....................................................................................................................................................................... 39
CONSULTA DE DATOS ANEXADOS ....................................................................................................................... 39
CONSULTA DE ELIMINACIN .............................................................................................................................. 40
Ejemplo: ....................................................................................................................................................................... 40
CONSULTA ESPECFICA DE SQL. ........................................................................................................................ 40
Consulta de Unin: ...................................................................................................................................................... 40
Paso a travs ................................................................................................................................................................ 40
Definicin de datos ...................................................................................................................................................... 40
CONSULTA DE PARMETROS .............................................................................................................................. 40
Ejemplo: ....................................................................................................................................................................... 41
EXPRESIONES: .................................................................................................................................................... 41
Dnde introducir expresiones en consultas y filtros ..................................................................................................... 41
Crear una expresin con el Generador de expresiones: ................................................................................................ 42
Expresiones de texto: ................................................................................................................................................... 42
Expresiones de fecha: .................................................................................................................................................. 42
Expresiones aritmticas: .............................................................................................................................................. 43
Campo calculado.......................................................................................................................................................... 43
Varias: .......................................................................................................................................................................... 43
Expresiones para Validacin de campos: ..................................................................................................................... 44
Expresiones para Condiciones de Macro: .................................................................................................................... 44
Expresiones SQL como criterio: .................................................................................................................................. 44
Expresiones en formularios e informes: ....................................................................................................................... 45
150 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155
Ejemplos para realizar operaciones aritmticas en formularios e informes: ................................................................ 46
Calcular el total de un control calculado de un formulario o informe ......................................................................... 46
FUNCIONES EN EXPRESIONES. ............................................................................................................................ 46
Funciones de Agregado de Dominio comunes: ........................................................................................................... 46
Ejemplos para utilizar funciones agregadas de dominio en formularios e informes .................................................... 46
Funciones de Agregado SQL Comunes. ...................................................................................................................... 47
Ejemplos para utilizar funciones agregadas en formularios e informes ....................................................................... 47
Algunas Funciones Generales: .................................................................................................................................... 47
PROPIEDADES DE CONSULTA .............................................................................................................................. 48
Propiedad Ttulos de columna (ColumnHeadings) ...................................................................................................... 48
Propiedad Permisos de ejecucin ................................................................................................................................ 49
Propiedad BloqueosDelRegistro (RecordLocks) ......................................................................................................... 49
Propiedad TipoRecordset (RecordsetType) ................................................................................................................. 50
VALORES NICOS. .............................................................................................................................................. 50
Impedir que se muestren los registros duplicados en los resultados de la consulta ..................................................... 50
CAMPOS EN BLANCO EN CONSULTAS. ................................................................................................................. 51
Combinar campos que contienen valores Null ............................................................................................................ 51
Buscar valores Null o cadenas de longitud cero .......................................................................................................... 51
Entender cmo los valores Null afectan a los clculos numricos .............................................................................. 51
Convertir valores Null a cero ...................................................................................................................................... 51
Combinar campos Texto que contengan valores Null ................................................................................................. 52
FORMULARIOS ................................................................................................................................................. 52
FORMULARIOS - MENUS DE VISTA FORMULARIO Y HOJA DATOS .................................................... 52
FORMULARIOS - MENUS DE VISTA DISEO. ........................................................................................... 52
MENU EDICION ........................................................................................................................................................ 52
MENU VER ................................................................................................................................................................ 52
MENU INSERTAR ..................................................................................................................................................... 52
MENU FORMATO ..................................................................................................................................................... 53
CREAR UN FORMULARIO MEDIANTE AUTOFORMULARIO .................................................................................... 53
CREAR UN FORMULARIO CON UN ASISTENTE. ..................................................................................................... 53
CREAR UN FORMULARIO BASADO EN MS DE UNA TABLA. ................................................................................. 54
PLANTILLAS DE FORMULARIOS Y DE INFORMES. ................................................................................................. 54
SECCIONES DE FORMULARIOS. ............................................................................................................................ 54
Agregar o quitar un encabezado o pie de formulario o un encabezado o pie de pgina: ............................................. 55
CREAR UN FORMULARIO EMERGENTE O UN CUADRO DE DILOGO PERSONALIZADO ........................................... 55
ALGUNAS PROPIEDADES DE FORMULARIOS (DATOS) ......................................................................................... 56
Propiedad OrigenDelRegistro (RecordSource) ........................................................................................................... 56
Propiedad Filtro (Filter) ............................................................................................................................................... 56
Propiedad OrdenarPor (OrderBy) ................................................................................................................................ 57
Propiedad PermitirEdiciones (AllowEdits) ................................................................................................................. 57
Propiedad EntradaDeDatos (DataEntry) ...................................................................................................................... 58
Propiedad TipoRecordset (RecordsetType) ................................................................................................................. 58
(Otras) Propiedad Emergente (PopUp) ........................................................................................................................ 58
(Otras) Propiedad Modal ............................................................................................................................................. 59
Propiedad BloqueosDelRegistro (RecordLocks) ......................................................................................................... 59
CONTROLES ........................................................................................................................................................ 59
CUADRO DE HERRAMIENTAS DE CONTROLES ..................................................................................................... 60
Botn seleccionar objetos (Flecha) ............................................................................................................... 60
Botn Asistentes para Controles .................................................................................................................... 60
Etiqueta .......................................................................................................................................................... 60
Cuadros de texto. ........................................................................................................................................... 60
Crear un cuadro de texto dependiente ......................................................................................................................... 60
Crear un cuadro de texto independiente ...................................................................................................................... 61
Crear un control calculado........................................................................................................................................... 61
Algunas Propiedades de Cuadro de Texto (Datos) ...................................................................................................... 61
Propiedad OrigenDelControl (ControlSource) ............................................................................................................ 61
Propiedad MscaraDeEntrada (InputMask) ................................................................................................................. 62
Propiedades Activado (Enabled) y Bloqueado (Locked) ............................................................................................. 62
Propiedad BuscarPorFiltro (FilterLookup) .................................................................................................................. 62
Grupo de opciones ......................................................................................................................................... 63
Botn de alternar ........................................................................................................................................... 64
Botn de opcin ............................................................................................................................................. 64
Casilla de verificacin ................................................................................................................................... 64
Cuadro combinado ........................................................................................................................................ 64
Crear un cuadro de lista dependiente o cuadro combinado que muestre valores fijos: ................................................ 65
Crear un cuadro de lista o cuadro comb. dependiente que muestre los valores de una tabla o consulta: ..................... 65
GUIA ACCESS 151
Crear un cuadro de lista o cuadro combinado independiente que muestre valores fijos: ............................................. 65
Crear un cuadro de lista o cuadro comb. independiente que muestre los valores de una tabla o consulta: .................. 65
Buscar un registro seleccionando un valor de una lista ................................................................................................ 66
Algunas Propiedades de Cuadro de Lista/Combinado (Datos) .................................................................... 66
Propiedades TipoDeOrigenDeLaFila (RowSourceType) y OrigenDeLaFila (RowSource) ......................................... 66
Propiedad ColumnaDependiente (BoundColumn) ....................................................................................................... 67
Cuadro de lista .............................................................................................................................................. 67
Botn de comando ......................................................................................................................................... 67
Botn de Comando prop. Al hacer Clic: nombre de Macro o Funcin. ....................................................................... 68
Crear un botn de comando para abrir y sincronizar, cerrar o imprimir un formulario: .............................................. 68
Imagen ........................................................................................................................................................... 68
Agregar una imagen u otro objeto a un formulario o informe: ..................................................................................... 69
Marco de objeto independiente ..................................................................................................................... 69
Insertar un objeto independiente existente ................................................................................................................... 69
Marco de objeto dependiente ........................................................................................................................ 69
Insertar un objeto dependiente existente ...................................................................................................................... 70
Salto de pgina .............................................................................................................................................. 70
Crear un formulario con ms de una pgina (pantalla) ................................................................................................ 70
Control ficha.................................................................................................................................................. 70
Subformulario/Subinforme ............................................................................................................................ 71
Crear un formulario y un subformulario al mismo tiempo: .......................................................................................... 71
Crear un subformulario y agregarlo a un formulario existente: ................................................................................... 71
Agregar un formulario existente a otro formulario tambin existente para crear un formulario con un subformulario:
..................................................................................................................................................................................... 71
Vincular un formulario principal y un subformulario .................................................................................................. 71
Ejemplo (diseo) de Subformulario Pedidos Trimestrales basado en Ejemplo Consulta Pg 37. .............................. 72
Ejemplo de Formulario Pedidos Trimestrales con Subformulario Pedidos Trimestrales (arriba). ... Error! Marcador
no definido.
Algunas Propiedades de Subformulario/Subinforme (Datos) ...................................................................................... 74
Propiedad ObjetoOrigen (SourceObject) ..................................................................................................................... 74
Propiedades VincularCamposSecundarios (LinkChildFields) y VincularCamposPrincipales (LinkMasterFields) ..... 74
Lnea: ............................................................................................................................................................ 75
Rectngulo ..................................................................................................................................................... 75
CAMBIAR LAS PROPIEDADES PREDETERMINADAS DE UN TIPO DE CONTROL ........................................................ 75
Cambiar el estilo de control predeterminado de nuevos controles mediante la hoja de propiedades ........................... 75
Cambiar el estilo de control predeterminado de nuevos controles mediante un control existente................................ 75
Especificar una nueva plantilla para los formularios e informes .................................................................................. 76
OBJETOS/CONTROLES: AJUSTES Y COMPLEMENTOS. ......................................................................................... 76
INFORMES ......................................................................................................................................................... 77
INFORMES - MENUS EN VISTA PREVIA DISEO Y PRELIMINAR. ....................................................... 77
INFORMES - MENUS EN VISTA DISEO. ................................................................................................... 77
MENU VER................................................................................................................................................................. 77
CREAR UN INFORME USANDO AUTOINFORME: .................................................................................................... 77
CREAR UN INFORME CON UN ASISTENTE:............................................................................................................ 78
CREAR UN INFORME SIN ASISTENTE:................................................................................................................... 78
CREAR UN INFORME BASADO EN MS DE UNA TABLA:........................................................................................ 78
CREAR UN SUBINFORME EN UN INFORME EXISTENTE: ......................................................................................... 78
AGREGAR UN INFORME EXISTENTE A OTRO PARA CREAR UN SUBINFORME ......................................................... 78
SECCIONES DE UN INFORME. ............................................................................................................................... 78
Agregar o quitar un encabezado y pie de informe o un encabezado y pie de pgina ................................................... 79
CREAR ETIQUETAS POSTALES Y DE OTROS TIPOS ................................................................................................ 79
INSERTAR CAMPO CALCULADO A UN REGISTRO DE UN INFORME ........................................................................ 79
AGRUPAR LOS REGISTROS EN UN INFORME ......................................................................................................... 79
ORDENAR LOS REGISTROS EN UN INFORME......................................................................................................... 80
CALCULAR UN TOTAL O PROMEDIO PARA UN GRUPO O PARA TODOS LOS REGISTROS DE UN INFORME ................ 80
CALCULAR UNA SUMA CONTINUA DE UN INFORME ............................................................................................. 80
Propiedad de Cuadro de Texto (Datos) ........................................................................ Error! Marcador no definido.
Propiedad SumaContinua (RunningSum) .................................................................................................................... 80
CALCULAR PORCENTAJES EN UN INFORME ......................................................................................................... 81
COMENZAR CADA GRUPO DE UN INFORME EN UNA NUEVA FILA O COLUMNA ..................................................... 81
RESTABLECER NMEROS DE PGINA PARA CADA GRUPO DE UN INFORME .......................................................... 82
GUA ALFABTICA DE MACROS Y MDULOS. ...................................................................................... 83
MACROS ............................................................................................................................................................. 88
152 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155
Un grupo de macros: ................................................................................................................................................... 89
Acciones condicionales. .............................................................................................................................................. 89
CUNDO UTILIZAR UNA MACRO ......................................................................................................................... 89
MACROS - MENUS.......................................................................................................................................... 89
MENU EDICION ........................................................................................................................................................ 89
MENU VER ................................................................................................................................................................ 89
MENU INSERTAR ..................................................................................................................................................... 89
MENU EJECUTAR .................................................................................................................................................... 89
CREAR UNA MACRO ............................................................................................................................................ 89
EJECUTAR UNA MACRO ....................................................................................................................................... 90
Ejecutar directamente una macro ................................................................................................................................ 90
Ejecutar una macro o un procedimiento de evento para un evento en un formulario, un informe o un control ........... 90
Ejecutar una macro que pertenece a un grupo de macros. ........................................................................................... 90
Ejecutar una macro desde otra macro o desde un procedimiento Visual Basic ........................................................... 90
ABRIR LA VENTANA MACRO O MDULO DESDE UN FORMULARIO O INFORME .................................................... 91
CONDICIONES EN UNA MACRO. ........................................................................................................................... 91
Ejemplos de condiciones de macro ............................................................................................................................. 91
AGREGAR UNA ACCIN A UNA MACRO ............................................................................................................... 91
Acciones agrupadas por tarea ....................................................................................................................... 92
Datos de formularios e informes ................................................................................................................................. 92
Ejecucin ..................................................................................................................................................................... 92
Importar/exportar ........................................................................................................................................................ 92
Manipulacin de objetos ............................................................................................................................................. 92
Diversos ...................................................................................................................................................................... 92
Establecer argumentos de accin en una macro ........................................................................................... 92
Introducir una expresin en el argumento de una accin de macro ............................................................. 93
ASIGNAR UNA ACCIN O UNA SERIE DE ACCIONES A UNA TECLA ........................................................................ 93
LLEVAR A CABO UNA ACCIN LA PRIMERA VEZ QUE SE ABRE LA BASE DE DATOS .............................................. 93
EVENTOS ............................................................................................................................................................ 94
Responder al evento Al hacer clic usando un procedimiento de evento Ver Pg 88. Ver Pg 103. ............. 94
Responder al evento Al hacer clic usando una macro Ver Pg 88 ................................................................... 94
Determinar cundo ocurre un evento ............................................................................................................ 94
Eventos de formularios: ................................................................................................................................. 94
Eventos de controles: ..................................................................................................................................... 94
Eventos de Informes: ..................................................................................................................................... 94
Eventos de Secciones de Informes: ................................................................................................................ 94
EVENTOS DE DATOS .................................................................................................................................. 94
AfterDelConfirm ......................................................................................................................................................... 95
AfterUpdate ................................................................................................................................................................. 95
BeforeDelConfirm ....................................................................................................................................................... 95
BeforeInsert ................................................................................................................................................................. 95
BeforeUpdate .............................................................................................................................................................. 95
Change ........................................................................................................................................................................ 95
Current ........................................................................................................................................................................ 95
Delete .......................................................................................................................................................................... 95
NotInList ..................................................................................................................................................................... 95
Updated ....................................................................................................................................................................... 95
EVENTOS DE ENFOQUE ............................................................................................................................ 95
Activate ....................................................................................................................................................................... 95
Deactivate .................................................................................................................................................................... 95
Enter ............................................................................................................................................................................ 95
Exit .............................................................................................................................................................................. 95
GotFocus ..................................................................................................................................................................... 95
LostFocus .................................................................................................................................................................... 96
EVENTOS DE ERROR Y DE SINCRONIZACIN ........................................................................................ 96
Error ............................................................................................................................................................................ 96
Timer ........................................................................................................................................................................... 96
EVENTOS DE FILTRO ................................................................................................................................. 96
ApplyFilter .................................................................................................................................................................. 96
Filter ............................................................................................................................................................................ 96
EVENTOS DE IMPRESIN .......................................................................................................................... 96
Format ......................................................................................................................................................................... 96
NoData ........................................................................................................................................................................ 96
Page ............................................................................................................................................................................. 96
Print ............................................................................................................................................................................. 96
Retreat ......................................................................................................................................................................... 96
EVENTOS DEL RATN ................................................................................................................................ 96
GUIA ACCESS 153
Click ............................................................................................................................................................................ 97
DblClick ....................................................................................................................................................................... 97
MouseDown ................................................................................................................................................................. 97
MouseMove ................................................................................................................................................................. 97
MouseUp AlSubirRatn (OnMouseUp) (formularios, controles) Cuando se mueve el puntero del ratn sobre un
formulario o control. .................................................................................................................................................... 97
EVENTOS DE TECLADO ............................................................................................................................. 97
KeyDown ..................................................................................................................................................................... 97
KeyPress ...................................................................................................................................................................... 97
KeyUp .......................................................................................................................................................................... 97
EVENTOS DE VENTANA ............................................................................................................................. 97
Close ............................................................................................................................................................................ 97
Load ............................................................................................................................................................................. 97
Open............................................................................................................................................................................. 98
Resize........................................................................................................................................................................... 98
Unload ......................................................................................................................................................................... 98
Propiedades de evento ................................................................................................................................... 98
GENERADORES ................................................................................................................................................... 98
EJEMPLOS DE MACROS. ............................................................................................................................... 98
Abrir un Formulario con un botn desde otro Formulario ........................................................................................... 98
Al abrir formulario ir al registro que se quiera ............................................................................................................. 98
Para mantener los reg. correspondientes en Subformulario al mover reg. de Formulario: ........................................... 98
Utilizar accin EstablecerValor (SetValue) para dar valor a campo ............................................................................ 99
Acciones de navegacin ............................................................................................................................................... 99
Para imprimir reg. actual .............................................................................................................................................. 99
Para filtrar: ................................................................................................................................................................... 99
Buscar reg. desde Cuadro Combinado: ........................................................................................................................ 99
Validar: ........................................................................................................................................................................ 99
Requerir entrada:.......................................................................................................................................................... 99
Imprimir informe mediante botn: ............................................................................................................................... 99
Imprimir slo uno (pas, etc) o todos mediante Control Cuadro Lista: ....................................................................... 99
Para seleccionar con parmetros registros a imprimir .................................................................................................. 99
Escoger Informe a imprimir mediante cuadro de dilogo ............................................................................................ 99
Ocultar seccin de informe. ....................................................................................................................................... 100
Hacer visible o no un control. .................................................................................................................................... 100
Comenzar un grupo de informe (pas) por pg. 1:...................................................................................................... 100
Para cortar una pgina (Slo las 10 primeras lneas en la primera). ........................................................................... 100
Totalizar por pgina: .................................................................................................................................................. 100
Seleccionar registros con cuadro de dilogo al abrir Informe .................................................................................... 100
Pedir fecha de da (dilogo emergente modal) para mostrar cantidad e importe de sus pedidos. ............................... 101
MODULOS (VISUAL BASIC) ........................................................................................................................ 101
Cundo utilizar Mdulos de Visual Basic ................................................................................................... 101
MENUS - MODULOS. ................................................................................................................................... 102
MENU EDICION ...................................................................................................................................................... 102
MENU VER............................................................................................................................................................... 102
MENU INSERTAR ................................................................................................................................................... 103
MENU DEPURAR .................................................................................................................................................... 103
MENU EJECUTAR ................................................................................................................................................... 103
MENU HERRAMIENTAS........................................................................................................................................ 104
Ventana Mdulo .......................................................................................................................................... 104
Mdulos de clases ....................................................................................................................................... 104
Mdulos estndar ........................................................................................................................................ 104
PROCEDIMIENTOS ............................................................................................................................................. 104
Creacin de procedimiento personalizado .................................................................................................. 104
Crear un procedimiento de evento .............................................................................................................. 105
Procedimientos Sub ..................................................................................................................................... 105
Escribir un procedimiento Sub ................................................................................................................................... 105
Crear un procedimiento Sub personalizado................................................................................................................ 106
Procedimientos Function ............................................................................................................................. 106
Escribir un procedimiento Function ........................................................................................................................... 107
Crear una funcin personalizada ................................................................................................................................ 107
OBJETOS, PROPIEDADES, MTODOS Y EVENTOS ................................................................................................ 108
Mtodo ....................................................................................................................................................................... 108
Propiedad ................................................................................................................................................................... 108
Objeto ........................................................................................................................................................................ 108
Evento ........................................................................................................................................................................ 109
EJECUCIN DE CDIGO ..................................................................................................................................... 109
154 GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. Pgs. 155
DEFINICIONES VARIAS ...................................................................................................................................... 109
Instruccin ................................................................................................................................................................. 109
Variable ..................................................................................................................................................................... 109
Constante ................................................................................................................................................................... 109
Palabra clave Me ....................................................................................................................................................... 110
DAO (Data Access Objects) Objetos de acceso a datos ............................................................................................ 110
Instancia .................................................................................................................................................................... 110
ARGUMENTOS .................................................................................................................................................. 110
Comprender los argumentos con nombre y opcionales ............................................................................................. 110
Especificar argumentos cuando use un procedimiento, instruccin o mtodo en cdigo Visual Basic ..................... 111
ESTRUCTURAS DE DECISIN Y CONTROL........................................................................................................... 111
Utilizar instrucciones condicionales para tomar decisiones ....................................................................................... 111
Utilizar bucles para repetir cdigo ............................................................................................................................. 111
Ejecutar varias instrucciones sobre el mismo objeto ................................................................................................. 111
If...Then...Else (Instruccin) ........................................................................................................................ 111
Select Case (Instruccin) ............................................................................................................................. 112
Do...Loop (Instruccin) ............................................................................................................................... 113
For...Next (Instruccin) ............................................................................................................................... 114
For Each...Next (Instruccin) ...................................................................................................................... 115
With (Instruccin) ........................................................................................................................................ 115
EXAMINADOR DE OBJETOS................................................................................................................................ 116
Localizar un mtodo o propiedad en el Examinador de objetos ................................................................................ 116
Use el Examinador de objetos para pegar una sintaxis de mtodo o propiedad en un mdulo .................................. 116
DEPURACIN DE CDIGO .................................................................................................................................. 116
Ventana Depuracin .................................................................................................................................................. 116
Panel Locales ............................................................................................................................................................ 117
Panel Inspeccin ........................................................................................................................................................ 117
Panel Inmediato ......................................................................................................................................................... 117
Solucin de errores en cdigo ..................................................................................................................... 117
Usar un punto de interrupcin para suspender la ejecucin de cdigo ...................................................... 117
Modo de interrupcin ................................................................................................................................................ 118
Ir paso a paso por el cdigo ........................................................................................................................ 118
Arbol de llamada ....................................................................................................................................................... 118
Usar el panel Inmediato .............................................................................................................................. 118
Establecimiento de una expresin de inspeccin en el cdigo .................................................................... 119
Agregar una expresin de inspeccin al panel Inspeccin......................................................................................... 119
Realizar una inspeccin rpida mientras se depura cdigo ........................................................................................ 119
Seguimiento de llamadas de procedimientos mientras se depura cdigo .................................................... 119
Presentacin del valor de las variables en el panel Locales ....................................................................... 119
Mostrar el valor de una variable o expresin en la ventana Mdulo cuando el cdigo est suspendido ... 119
REFERENCIA DE FUNCIONES ............................................................................................................................. 120
REFERENCIA DE INSTRUCCIONES ...................................................................................................................... 121
FUNCIONES E INSTRUCCIONES POR TAREA DE PROGRAMACIN. ....................................................................... 122
REFERENCIA DE MTODOS ................................................................................................................................ 123
MTODOS POR TAREA DE PROGRAMACIN (RECORSETS). ................................................................................ 124
GENERALIDADES Y EJEMPLOS DE VISUAL BASIC. ............................................................................. 124
Depuracin: ............................................................................................................................................................... 125
Variables ................................................................................................................................................................... 126
Matrices (Arrays) ...................................................................................................................................................... 128
Constantes. ................................................................................................................................................................ 128
Variables de objeto .................................................................................................................................................... 128
Objetos predefinidos.................................................................................................................................................. 129
Mtodos de Objetos. .................................................................................................................................................. 129
Objectos como argumentos en Procedimientos. ........................................................................................................ 130
Control de Errores durante ejecucin. ....................................................................................................................... 130
Cdigos con Formularios e Informes ........................................................................................................................ 131
Variables de Formularios e Informes ........................................................................................................................ 133
Objetos predefinidos.................................................................................................................................................. 134
Otros Objectos ........................................................................................................................................................... 134
Variables de Control .................................................................................................................................................. 135
Tipo de Control ......................................................................................................................................................... 135
Mtodos Grficos ...................................................................................................................................................... 136
Tratamiento de Datos ................................................................................................................................................ 136
Variables Tabla ......................................................................................................................................................... 136
Crear variables Dynaset ............................................................................................................................................. 136
Crear variables Snapshot ........................................................................................................................................... 137
Cerrar variables recordset .......................................................................................................................................... 137
GUIA ACCESS 155
Utilizar variables Recordset (Tables, Dynasets and Snapshots) ................................................................................ 137
Ordenar, clasificar registros ....................................................................................................................................... 137
Filtrar, consultar ......................................................................................................................................................... 138
Modificar registros ..................................................................................................................................................... 138
Eliminar registros ....................................................................................................................................................... 139
Aadir registros.......................................................................................................................................................... 139
Buscar registros en Dynaset y Snapshots .................................................................................................................. 139
Buscar registros en Tablas ......................................................................................................................................... 140
Marcadores ................................................................................................................................................................ 140
Cloning ...................................................................................................................................................................... 141
Manipular campos grandes ........................................................................................................................................ 141
Transacciones ............................................................................................................................................................ 141
Bloquear datos ........................................................................................................................................................... 143
Informacin de los objetos de la Base de datos .......................................................................................................... 143
Variables QueryDef ................................................................................................................................................... 144
Abrir Consulta existente. ........................................................................................................................................... 144
Crear consulta ............................................................................................................................................................ 145
Modificar consulta existente ...................................................................................................................................... 146
Modificacin de Recordsets con Variables QueryDef ............................................................................................... 146
Consultas de Parmetros ............................................................................................................................................ 147


F I N
Esta gua es parte de JRMWEB.
Conozca INICIO, con muchas utilidades gratis.