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

Usar parmetros en consultas e informes

Importante: Este artculo se ha traducido con traduccin automtica; vea la


declinacin de responsabilidades. Para su referencia, puede encontrar la
versin en ingls de este artculo aqu.

Si desea que una consulta para solicitar informacin cada vez que se ejecute,
puede crear un consulta de parmetros.

Tambin puede crear un formulario para recopilar valores de parmetro. Con un


formulario puede:

Usar controles especficos de tipo de datos

Habilitar la persistencia de los valores de parmetro

Proporcionar controles de cuadro combinado (para que pueda elegir un valor


de una lista en lugar de escribirlo)

Usar otros controles que estn disponibles en formularios

En este artculo se proporciona informacin general sobre parmetros, se


explica cmo usar parmetros en consultas y tambin cmo usar formularios
para mejorar el uso de parmetros.

En este artculo:
Informacin general

Usar parmetros en consultas

Especificar los tipos de datos de los parmetros

Crear un formulario que recopile parmetros

Informacin general
Puede usar criterios en una consulta en Access para limitar el conjunto de
registros que la consulta va a devolver. Consideremos el siguiente caso.

Supongamos que tiene una consulta denominada ltimo pedido, que devuelve
los nombres y las direcciones de sus clientes junto con la fecha en la que envi
su ltimo pedido. Acaba de agregar algunos productos nuevos e interesantes al
inventario y al catlogo. Cada vez que enva un pedido, incluye una copia del
actual catlogo. Prev que los nuevos productos van a tener mucho xito y
desea asegurarse de que todos los clientes los conocen. Desea enviar un
nuevo catlogo a todos los clientes que an no lo hayan recibido junto con un
pedido.

Por este motivo, desea crear una lista de correo con los nombres y las
direcciones de los clientes cuyo ltimo pedido se envi antes de publicarse el
nuevo catlogo. Para ello, aplica un criterio al campo de fecha de envo de la
consulta ltimo pedido. El criterio especifica que la fecha que figura en ese
campo debe ser anterior a la fecha en la que se inici la distribucin del nuevo
catlogo, por ejemplo, 31/3/2006. Cuando ejecute la consulta, obtendr una
lista de correo que contiene nicamente los clientes que no han recibido el
nuevo catlogo.

Pero, qu sucede si vuelve a producirse esta situacin? Podra modificar el


diseo de la consulta cambiando el valor especificado por el criterio pero, no
sera conveniente si la consulta pudiera solicitar una fecha y usar esa fecha
para decidir qu clientes se van a incluir en la lista de correo? Para ello, deber
usar un tipo especial de criterio denominado parmetro.

Puede que los cuadros de dilogo proporcionados por una consulta de


parmetros sean insuficientes para sus objetivos. En esos casos, puede crear
un formulario que se ajuste mejor a sus necesidades de recopilacin de

parmetros. En este artculo se explica cmo crear un formulario que recopile


parmetros de informe.

En este artculo se supone que est familiarizado con la creacin de consultas.


Como mnimo, debe estar familiarizado con la creacin de una consulta de
seleccin antes de continuar.

Para obtener ms informacin sobre cmo crear una consulta de seleccin, vea
el artculo Seleccione datos mediante una consulta. Para obtener ms
informacin acerca de las consultas en general, vea el artculo Introduccin a
las consultas.

Este artculo incluye ejemplos de cmo usar parmetros en las consultas. Sin
embargo, no incluye una referencia exhaustiva para especificar criterios.

Para obtener ms informacin sobre cmo especificar criterios, vea el artculo


de ejemplos de criterios de consulta.

Principio de pgina

Usar parmetros en consultas


Usar un parmetro en una consulta es tan fcil como crear una consulta que
usa criterios. Puede disear una consulta de modo que solicite un solo dato,
como un nmero de pieza, o varios datos, como dos fechas. Por cada
parmetro, una consulta de parmetros muestra un cuadro de dilogo
independiente en el que se solicita un valor para ese parmetro.

Agregar un parmetro a una consulta


1.Cree una consulta de seleccin y, a continuacin, abra la consulta en la vista
Diseo.

2.En la fila Criterios del campo al que desee aplicar un parmetro, escriba entre
corchetes el texto que debe aparecer en el cuadro de dilogo del parmetro,
por ejemplo:

[Fecha de inicio]

Cuando ejecute la consulta de parmetros, el mensaje aparecer sin corchetes


en un cuadro de dilogo.

Tambin puede usar una expresin con las solicitudes de parmetros, por
ejemplo:

Entre [fecha de comienzo] Y [Fecha de finalizacin]

Nota: Aparece un cuadro de dilogo independiente para cada solicitud de


parmetros. En el segundo ejemplo, aparecen dos cuadros de dilogo: uno para
la fecha de inicio y uno para la fecha de finalizacin.

3.Repita el paso 2 para cada campo al que desee agregar parmetros.

Puede usar los pasos anteriores para agregar un parmetro a cualquiera de los
siguientes tipos de consultas:

Seleccin

Tabla de referencias cruzadas

Datos anexados

Creacin de tabla

Actualizacin

Tambin puede agregar un parmetro a una consulta de unin.

1.Abra la consulta de unin en la vista SQL.

2.Agregue una clusula WHERE que contenga cada uno de los campos para los
que desee solicitar un parmetro.

Si ya existe una clusula WHERE, compruebe si los campos para los que desee
usar una solicitud de parmetros ya estn incluidos en la clusula. En caso
contrario, agrguelos.

3.En lugar de usar un criterio en la clusula WHERE, use una solicitud de


parmetros.

Hacer coincidir parte de un valor de campo con una cadena de parmetro


Es posible que quiera aplicar un poco de variabilidad en la forma en que la
consulta aplica un parmetro. Por ejemplo, puede que desee que una consulta
acepte una cadena de texto y la haga coincidir con parte de un campo. Para
ello, use la palabra clave Como junto con caracteres comodn. Por ejemplo,
desea que la consulta solicite un pas o una regin de origen, pero ningn valor
coincidente siempre que el campo relevante la cadena de parmetro. Para ello:

1.Cree una consulta de seleccin y, a continuacin, abra la consulta en la vista


Diseo.

2.En la fila criterios del campo para los que desea aplicar el parmetro, escriba
como "*" & [, escriba el texto que desee usar como indicador y, a continuacin,
escriba ] & "*".

Cuando ejecute la consulta de parmetros, el mensaje aparecer en el cuadro


de dilogo sin corchetes y sin la palabra clave Como o los caracteres comodn.

3.Cuando la consulta acepte el parmetro, coincidir con los valores que


contengan la cadena de parmetro. Por ejemplo, la cadena de parmetro us
coincide con las filas donde el campo de parmetro tiene el valor Australia y
filas donde el valor es Austria.

Puede usar asimismo la palabra clave Como y los caracteres comodn para
especificar que un parmetro debe coincidir con el inicio o el final de un valor
de campo. Para que coincida con el inicio de un valor de campo, omita las
comillas, el carcter comodn y el carcter de y comercial (&) delante del
corchete de apertura. Para que coincida con el final de un valor de campo,
omita el carcter de y comercial, las comillas y el carcter comodn situados
detrs del corchete de cierre.

Coincidencia basada en valores desiguales


Es posible que desee recopilar un parmetro, pero en lugar de la consulta
devuelva filas con un valor coincidente, desea que la consulta devuelva filas
para que otras comparaciones se evala como verdadero. Por ejemplo, desea
solicitar un ao y, a continuacin, devolver las filas donde el valor de ao es
mayor que la cadena de parmetro. Para ello, escriba un operador de
comparacin a la izquierda del primer corchete del indicador de parmetro>
[ao:].

Principio de pgina

Especificar tipos de datos de parmetros


Tambin puede especificar qu tipo de datos debe aceptar un parmetro.
Puede especificar el tipo de datos para cualquier parmetro, pero es

especialmente importante especificar el tipo de datos para los datos


numricos, de moneda o de fecha y hora. Cuando se especifica el tipo de datos
que debe aceptar un parmetro, los usuarios ven un mensaje de error ms til
si especifican un tipo de datos equivocado, por ejemplo, texto cuando se
espera moneda.

Nota: Si se configura un parmetro para que acepte datos de texto, cualquier


entrada se interpretar como texto y no se mostrar ningn mensaje de error.

Para especificar el tipo de datos de los parmetros de una consulta, siga estos
pasos:

1.Con la consulta abierta en la vista Diseo, en la ficha Diseo, en el grupo


Mostrar u ocultar, haga clic en Parmetros.

2.En el cuadro de dilogo Parmetros de la consulta, en la columna Parmetro,


escriba la solicitud de cada parmetro para el que desee especificar el tipo de
datos. Asegrese de que cada parmetro coincida con la solicitud que utiliza en
la fila Criterios de la cuadrcula de diseo de la consulta.

3.En la columna Tipo de datos, seleccione el tipo de datos para cada


parmetro.

Principio de pgina

Crear un formulario que recopile parmetros


Si bien las consultas de parmetros tienen un cuadro de dilogo integrado que
recopila parmetros, slo ofrecen una funcionalidad bsica. Si usa un
formulario para recopilar parmetros, podr disponer de las siguientes
caractersticas:

Posibilidad de usar controles especficos del tipo de datos, como controles de


calendario para las fechas.

Persistencia de los parmetros recopilados, para que pueda usarlos con ms


de una consulta.

Posibilidad de proporcionar un cuadro combinado o cuadro de lista para la


recopilacin de parmetros, de modo que se puede elegir un valor en una lista
de valores de datos disponibles

Posibilidad de proporcionar controles para otras funciones, como abrir o


actualizar una consulta.

Siga estos pasos para crear un formulario que recopile parmetros.

Paso 1: Crear un formulario que acepte entradas

Paso 2: Crear un mdulo para comprobar si el formulario de parmetros ya est


cargado

Paso 3: Crear un grupo de macros que controle el formulario

Paso 4: Agregar botones de comando Aceptar y Cancelar al formulario

Paso 5: Usar los datos del formulario como criterios de consulta

Paso 1: Crear un formulario que acepte entradas


1.En la ficha Crear, en el grupo Formularios, haga clic en Diseo de formularios.

2.En la vista Diseo, presione F4 para que aparezca la hoja de propiedades y, a


continuacin, especifique las propiedades del formulario, tal como se muestra
en la siguiente tabla.

Propiedad
Valor

Ttulo
Escriba el nombre que debe aparecer en la barra de ttulo del formulario.

Vista predeterminada
Un nico formulario

Permitir vista Formulario


S

Permitir vista Hoja de datos


No

Permitir vista Tabla dinmica


No

Permitir vista Grfico dinmico


No

Barras de desplazamiento
Ninguna

Selectores de registro
No

Botones de navegacin
No

Estilo de los bordes


Dilogo

1.Por cada parmetro que va a recopilar el formulario, haga clic en Cuadro de


texto en el grupo Controles de la ficha Diseo.

2.Configure las propiedades de los cuadros de texto, tal y como se muestra en


la tabla siguiente.

Propiedad
Valor

Nombre
Escriba un nombre que describa el parmetro, por ejemplo FechaDeInicio.

Formato
Elija un formato que refleje el tipo de datos del campo de parmetro. Por
ejemplo, seleccione Fecha general para un campo de fecha.

1.Guarde el formulario y asgnele un nombre, por ejemplo Intervalo de fechas.

Paso 2: Crear un mdulo para comprobar si el formulario de parmetros ya est


cargado
1.En la ficha crear, en el grupo otros, haga clic en mdulo. Si este comando no
est disponible, haga clic en la flecha debajo de la Macro o el botn del Mdulo
de clase y, a continuacin, haga clic en mdulo.

En el Editor de Visual Basic se abre un nuevo mdulo.

2.Escriba o pegue el siguiente cdigo en el Editor de Visual Basic:

Function IsLoaded(ByVal strFormName As String) As BooleanDim oAccessObject


As AccessObjectSet oAccessObject = CurrentProject.AllForms(strFormName)If
oAccessObject.IsLoaded Then If oAccessObject.CurrentView <>
acCurViewDesign Then IsLoaded = True End IfEnd IfEnd Function3.Guarde el
mdulo y, a continuacin, cierre el Editor de Visual Basic.

Paso 3: Crear un grupo de macros que controle el formulario


1.En el grupo Otros de la pestaa Crear, haga clic en Macro. Si el comando no
est disponible, haga clic en la flecha que aparece bajo el botn MduloMdulo
de clase y luego haga clic en Macro.

2.En el grupo Mostrar u ocultar de la ficha Diseo, haga clic en Mostrar todas
las acciones.

3.En la ficha Diseo, en el grupo Mostrar u ocultar, haga clic en Nombres de


Macro para mostrar la columna Nombre de la Macro.

4.Escriba un nombre de macro, como Cuadro de dilogo Abrir, en la columna


Nombre de la macro.

5.Haga clic en la celda de la columna Accin situada junto al nombre de la


nueva macro, haga clic en la flecha desplegable y, a continuacin, haga clic en
AbrirFormulario.

6.En la cuadrcula Argumentos de accin (que se encuentra debajo de la


cuadrcula de diseo de macro), establezca los argumentos de accin, como se
muestra en la tabla siguiente.

Argumento
Valor

Nombre del formulario


Escriba el nombre que le asign al formulario de parmetros del informe.

Vista
Formulario

Modo de datos
Editar

Modo de la ventana
Dilogo

1.En la siguiente celda Accin, haga clic en CancelarEvento para agregar una
segunda accin. Se usa esta accin para cancelar la vista previa o la impresin
del informe cuando un usuario hace clic en el botn Cancelar del formulario.

2.Si no ve la columna Condicin, haga clic en Condiciones del grupo Mostrar u


ocultar en la ficha Diseo.

3.En la columna condicin, escriba Not IsLoaded, seguido de un parntesis de


apertura y unas comillas, seguido por el nombre que asignado al formulario de
parmetros del informe y, a continuacin, seguido de unas comillas y un
parntesis de cierre. Por ejemplo, si el formulario se denomina selector de
parmetro, escriba Not IsLoaded("Selector de parmetro").

4.En la siguiente fila en blanco de la cuadrcula de diseo de la macro, escriba


un nombre de macro, como Cuadro de dilogo Cerrar.

5.En la celda accin adyacente, haga clic en la flecha desplegable y, a


continuacin, haga clic en Cerrar. La consulta utilizar esta accin para cerrar
el formulario de parmetros. Establezca sus argumentos de accin, como se
muestra en la tabla siguiente.

Argumento
Valor

Tipo de objeto
Formulario

Nombre de objeto
Escriba el nombre que le asign al formulario de parmetros del informe.

Guardar
No

1.En la siguiente fila en blanco de la cuadrcula de diseo de la macro, escriba


un nombre de macro, como Aceptar. En la celda Accin adyacente, haga clic en
la flecha desplegable y, a continuacin, haga clic en EstablecerValor. Se usa
esta accin para ocultar el formulario de parmetros de informe cuando el
usuario hace clic en Aceptar. Configure los argumentos de la accin, tal y como
se muestra en la siguiente tabla.

Argumento
Valor

Elemento
[Visible]

Expresin
No

1.En la siguiente fila en blanco de la cuadrcula de diseo de la macro, escriba


un nombre de macro, como Cancelar. En la celda Accin adyacente, haga clic
en la flecha desplegable y, a continuacin, haga clic en Cerrar. Se usa esta
accin para cerrar el formulario de parmetros de informe cuando el usuario
hace clic en Cancelar. Configure los argumentos de la accin, tal y como se
muestra en la siguiente tabla.

Argumento
Valor

Tipo de objeto
Formulario

Nombre de objeto
Escriba el nombre que le asign al formulario de parmetros del informe.

Guardar
No

1.Guarde y cierre el grupo de macros. Asigne un nombre, por ejemplo, la Macro


del intervalo de fechaal grupo de macros.

Paso 4: Agregar botones de comando Aceptar y Cancelar al formulario


1.Volver a abrir el formulario de intervalo de fechas en la vista Diseo.

2.Asegrese de que no est seleccionada la opcin Utilizar asistentes para


controles en el grupo Controles de la ficha Diseo.

3.En la ficha Diseo, en el grupo Controles, haga clic en Botn.

4.Site el puntero debajo de los cuadros de texto del formulario y, despus,


arrastre para crear un botn de comando Aceptar.

5.Si la hoja de propiedades no est visible, presione F4 para mostrarla.

6.Configure las propiedades del botn Aceptar, tal como se muestra en la tabla
siguiente.

Propiedad
Valor

Nombre
Aceptar

Ttulo
Aceptar

Predeterminado
S

AlHacerClic
Escriba el nombre de la macro, por ejemplo, fecha Range.OK.

1.Cree un botn de comando Cancelar y configure sus propiedades, tal como


se muestra en la tabla siguiente.

Propiedad
Valor

Nombre
Cancelar

Ttulo
Cancelar

AlHacerClic

Escriba el nombre de la macro, por ejemplo, fecha Range.Cancel.

1.Guarde y cierre el formulario.

Paso 5: Usar los datos del formulario como criterios de consulta


1.Abra la consulta en la vista Diseo.

2.Especifique los criterios para los datos. Use el objeto Forms , el nombre del
formulario y el nombre de la control:

Por ejemplo, en una base de datos de Access (.accdb o .mdb), para un


formulario denominado Intervalo de fechas, use la siguiente expresin para
referirse a los controles denominados Fecha de inicio y Fecha de finalizacin en
la consulta:

Entre [Forms] ! [Intervalo de fechas]! [StartDate] y [Forms]! [Intervalo de


fechas]! [EndDate]

Principio de pgina

Nota: Declinacin de responsabilidades de traduccin automtica: Este artculo


se ha traducido con un sistema informtico sin intervencin humana. Microsoft
ofrece estas traducciones automticas para que los hablantes de otros idiomas
distintos del ingls puedan disfrutar del contenido sobre los productos, los
servicios y las tecnologas de Microsoft. Puesto que este artculo se ha
traducido con traduccin automtica, es posible que contenga errores de
vocabulario, sintaxis o gramtica.