Applies ToAccess para Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Cuando desee crear una consulta en Access para pedir valores cada vez que la ejecute, puede crear una consulta de parámetros.

También puede crear un formulario para recoger valores de parámetros que se usarán para restringir los registros devueltos para consultas, formularios o informes. Este artículo explica cómo usar formularios para mejorar el uso de parámetros en consultas, formularios e informes.

En este artículo

Información general

Puede usar criterios en una consulta de parámetros en Access para restringir el conjunto de registros que devuelve la consulta. Puede que los cuadros de diálogo que se proporcionan en una consulta de parámetros no sean suficientes para sus propósitos. En estos casos, puede crear un formulario que se ajuste mejor a sus necesidades de recolección de parámetros. Este artículo explica cómo crear un formulario que recopile parámetros de consulta e informe. Este artículo asume que está familiarizado con la creación de consultas y la definición de parámetros en consultas. Como mínimo, debe estar familiarizado con la creación de una consulta de selección antes de continuar.

Este artículo proporciona ejemplos de uso de parámetros en consultas. No proporciona una referencia completa para especificar criterios.

Usar parámetros en consultas

Usar un parámetro en una consulta es tan sencillo como crear una consulta que utilice criterios. Se puede diseñar una consulta para solicitar un dato (por ejemplo, un número de referencia) o varios datos (por ejemplo, dos fechas). Con cada parámetro, una consulta muestra un cuadro de diálogo independiente en el que se solicita un valor para el parámetro.

Agregar un parámetro a una consulta

  1. Cree una consulta de selección y, a continuación, abra la consulta en la vista Diseño.

  2. En la fila Criterios de un campo en el que quiere aplicar un parámetro, escriba el texto que desee mostrar en el cuadro de diálogo del parámetro entre dos corchetes. Por ejemplo:

    [Fecha de inicio]

    Cuando inicie la consulta de parámetro, el indicador aparecerá en un cuadro de diálogo sin los corchetes.

    También puede usar una expresión con los indicadores de parámetro. Por ejemplo:

    Entre [Fecha de inicio] y [Fecha de finalización]

    Nota: Aparece un cuadro de diálogo independiente para cada indicador de parámetro. En el segundo ejemplo, aparecen dos cuadros de diálogo: uno para la fecha de inicio y otro para la fecha de finalización.

  3. Repita el paso 2 para cada campo en el que desee agregar parámetros.

Puede usar los pasos anteriores para agregar un parámetro a alguno de los siguientes tipos de consulta: Seleccionar, General, Anexar, Crear tabla o Actualizar.

También puede agregar un parámetro a una consulta de unión siguiendo estos pasos:

  1. Abra la consulta de unión en la vista SQL.

  2. Agregue una cláusula WHERE que contenga los campos que desea solicitar de un parámetro.

    Si ya existe una cláusula WHERE, compruebe si los campos para los que desea usar el indicador de parámetro ya se encuentran en la cláusula y, si no, agréguelos.

  3. En lugar de usar un criterio en la cláusula WHERE, use un indicador de parámetro.

Especificar los tipos de datos de los parámetros

También puede especificar qué tipo de datos debe aceptar un parámetro. Puede especificar el tipo de datos de cualquier parámetro, pero es especialmente importante especificar el tipo de datos en los datos numéricos, de moneda o de fecha y hora. Cuando se especifica el tipo de datos que debe aceptar un parámetro, los usuarios ven un mensaje de error más específico si facilitan un tipo de datos equivocado como, por ejemplo, texto cuando se espera moneda.

Nota: Si se configura un parámetro para que acepte datos de texto, cualquier entrada se interpretará como texto y no se mostrará ningún mensaje de error.

Para especificar el tipo de datos de los parámetros de una consulta, siga los pasos siguientes:

  1. Con la consulta abierta en la vista Diseño, en la pestaña Diseño, en el grupo Mostrar u ocultar, haga clic en Parámetros.

  2. En el cuadro de diálogo Parámetros de la consulta, en la columna Parámetro, escriba la petición de cada parámetro para el que quiera especificar el tipo de datos. Asegúrese de que cada parámetro coincida con la petición que usa en la fila Criterios de la cuadrícula de diseño de la consulta.

  3. En la columna Tipo de datos, seleccione el tipo de datos de cada parámetro.

Crear un formulario que recopile parámetros

Aunque las consultas de parámetros contienen un cuadro de diálogo integrado que recopila parámetros, ofrecen solo funcionalidad básica. Mediante un formulario para recopilar parámetros, puede obtener las siguientes características:

  • La posibilidad de usar controles de específicos de tipo de datos, como controles de calendario para las fechas.

  • Conservación de los parámetros recopilados, por lo que puede usarlos con más de una consulta.

  • La capacidad para proporcionar un cuadro combinado o cuadro de lista para la recolección de parámetros, que le permite elegir entre una lista de valores de datos disponibles.

  • La capacidad de proporcionar controles de otras funciones, como abrir o actualizar una consulta.

El siguiente vídeo muestra cómo crear un formulario simple para recopilar los parámetros de una consulta en lugar de usar los cuadros de diálogo que normalmente se asocian con las consultas de parámetros.

Su explorador no admite vídeo. Instale Microsoft Silverlight, Adobe Flash Player o Internet Explorer 9.

Crear un formulario que recopile parámetros para un informe

Puede enfocar este escenario de varias maneras, pero le mostraremos una sola técnica que utiliza principalmente macros. Siga los pasos siguientes para crear un formulario que recopile parámetros para un informe.

Paso 1: Crear un formulario que acepte valores

  1. En el grupo Formularios de la pestaña Crear, haga clic en Diseño del formulario.

  2. En la vista Diseño, presione F4 para mostrar la hoja de propiedades y, a continuación, especifique las propiedades del formulario, como se muestra en la tabla siguiente.

    Propiedad

    Configuración

    Título

    Escriba el nombre que desea que aparezca en la barra de título del formulario.

    Vista predeterminada

    Un único formulario

    Permitir vista Formulario

    Permitir vista Hoja de datos

    No

    Permitir vista Tabla dinámica

    No

    Permitir vista Gráfico dinámico

    No

    Barras de desplazamiento

    Ninguna

    Selectores de registro

    No

    Botones de navegación

    No

    Estilo de borde

    Cuadro de diálogo

  3. Para cada parámetro que desee que recopile el formulario, haga clic en el cuadro de texto del grupo Controles en la pestaña Diseño.

  4. Configure las propiedades de los cuadros de texto como se muestra en la tabla siguiente.

    Propiedad

    Configuración

    Nombre

    Escriba un nombre que describa el parámetro, por ejemplo, FechaDeInicio.

    Formato

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

  5. Guarde el formulario y asígnele un nombre, como frmCriteria.

Paso 2: Crear un módulo de código para comprobar si el formulario de parámetros ya se ha cargado

  1. En la pestaña Crear del grupo Macros y código, haga clic en Módulo

    Un nuevo módulo se abre en el Editor de Visual Basic.

  2. Escriba o pegue el siguiente código en el Editor de Visual Basic:

    Function IsLoaded(ByVal strFormName As String) As Boolean
    Dim oAccessObject As AccessObject
    Set oAccessObject = CurrentProject.AllForms(strFormName)
    If oAccessObject.IsLoaded Then
      If oAccessObject.CurrentView <> acCurViewDesign Then
        IsLoaded = True
      End If
    End If
    End Function
    
  3. Guarde el módulo con un nombre único y, a continuación, cierre el Editor de Visual Basic.

Paso 3: Crear una macro que controle el formulario e informe

Con las características de submacro de las macros de Access, podemos definir todos los pasos necesarios en una única macro. Deberá crear cuatro submacros (Abrir cuadro de diálogo, Cerrar cuadro de diálogo, Aceptar y Cancelar) para controlar las diversas tareas necesarias para este procedimiento. Con la captura de pantalla a continuación como guía, cree una nueva macro con las siguientes submacros y las acciones. Para este ejemplo, observe que el formulario de parámetro se denomina frmCriteria. Ajuste la macro para que coincida con el nombre del formulario que creó anteriormente. También deberá hacer clic en Mostrar todas las acciones en la pestaña Diseño para poder ver todas las acciones de macro.

Captura de pantalla de una macro de Access con cuatro submacros y acciones.

Guarde y cierre la macro. Dé un nombre a la macro, por ejemplo, Macro de intervalo de fecha.

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

  1. Abra el formulario de parámetro que creó anteriormente en la vista Diseño.

  2. Asegúrese de que Utilizar Asistentes para controles, en el grupo Controles de la pestaña Diseño, no está seleccionado.

  3. En el grupo Controles de la pestaña Diseño, haga clic en Botón.

  4. Sitúe el puntero debajo de los cuadros de texto en el formulario y a continuación, arrastre para crear un botón de comando Aceptar.

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

  6. Configure las propiedades del botón Aceptar como se muestra en la tabla siguiente.

    Propiedad

    Configuración

    Nombre

    OK

    Descripción

    OK

    Predeterminado

    OnClick

    Escriba un nombre para la macro, por ejemplo, Macro de intervalo de fecha.Aceptar.

  7. Cree un botón de comando Cancelar y establezca sus propiedades como se muestra en la tabla siguiente.

    Propiedad

    Configuración

    Nombre

    Cancelar

    Descripción

    Cancelar

    OnClick

    Escriba el nombre de la macro, por ejemplo, Macro de intervalo de fecha.Cancelar.

  8. Guarde y cierre el formulario.

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

  1. Abra la consulta que creó anteriormente en la vista Diseño.

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

    • Por ejemplo, en una base de datos Access (.accdb o .mdb), para un formulario llamado frmCriteria, use la siguiente expresión para hacer referencia en la consulta a los controles con los nombres de Fecha de inicio y Fecha de finalización:

      Entre [Formularios]![frmCriteria]![Fecha de inicio] y [formularios]![frmCriteria]![Fecha de finalización]

Paso 6: Agregar las acciones de macro a los eventos de informe

  1. Abra el informe que desee usar en la vista Diseño.

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

  3. Asegúrese de que la propiedad del informe Origen de registros usa la consulta de parámetros definida anteriormente.

  4. Establezca estas dos propiedades de informe adicionales como se muestra en la tabla siguiente.

    Propiedad

    Configuración

    OnOpen

    Escriba un nombre para la macro, por ejemplo, Macro de intervalo de fecha.Abrir cuadro de diálogo.

    OnClose

    Escriba un nombre para la macro, por ejemplo, Macro de intervalo de fecha.Cerrar cuadro de diálogo.

    En el evento Abrir del informe, Access ejecutará las acciones definidas en la submacro Abrir cuadro de diálogo del objeto Macro de intervalo de fecha. De forma parecida, al cerrar el informe, Access ejecutará las acciones definidas en la submacro Cerrar cuadro de diálogo del objeto Macro de intervalo de fecha.

  5. Guarde y cierre el informe.

Paso 7: Probarlo

Ahora que ya ha creado todos los objetos de Access, es el momento para probarlos. Abra el informe en Vista Informes o Vista preliminar y observe que antes de que Access muestre el informe, el formulario de parámetro se abre en modo de cuadro de diálogo. Escriba los criterios necesarios en los cuadros de texto que ha creado anteriormente y, a continuación, haga clic en el botón de comando Aceptar del formulario. Access oculta, a continuación, el formulario (Visible = No) y abre el informe solo con los datos que coinciden con los criterios. Esto funciona porque la consulta de parámetros en la que se basa el informe puede leer los valores de los controles del formulario oculto. Cuando cierre el informe, Access también cierra el formulario de parámetros.

Principio de página

¿Necesita más ayuda?

¿Quiere más opciones?

Explore las ventajas de las suscripciones, examine los cursos de aprendizaje, aprenda a proteger su dispositivo y mucho más.

Las comunidades le ayudan a formular y responder preguntas, enviar comentarios y leer a expertos con conocimientos extensos.