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

Quando quiser que uma consulta no Access solicite entrada sempre que você a executar, crie um consulta parâmetro.

Você também pode criar um formulário para coletar valores de parâmetros que serão usados para restringir os registros retornados para as consultas, os formulários ou os relatórios. Este artigo explica como usar formulários para melhorar o uso de parâmetros em consultas, formulários e relatórios.

Neste artigo

Visão geral

Você pode usar critérios em uma consulta de parâmetros no Access para restringir o conjunto de registros que a consulta retorna. Você pode achar que as caixas de diálogo fornecidas por uma consulta de parâmetros são insuficientes para seus propósitos. Nesses casos, você pode criar um formulário que melhor atenda às suas necessidades de coleta de parâmetros. Este artigo explica como criar um formulário que colete parâmetros de consulta e relatório. Este artigo assume que você está familiarizado com a criação de consultas e com a definição de parâmetros nas consultas. No mínimo, você deve estar familiarizado com a criação de uma consulta seleção antes de continuar.

Este artigo fornece exemplos de como usar parâmetros em consultas. Ele não fornece uma referência abrangente para especificar critérios.

Usar parâmetros em consultas

Usar um parâmetro em uma consulta é tão fácil como criar uma consulta que usa critérios. Você pode criar uma consulta para solicitar uma informação, como um número de peça, ou para mais de uma informação, como duas datas. Para cada parâmetro, uma consulta de parâmetro exibe uma caixa de diálogo separada que solicita um valor para esse parâmetro.

Adicionar um parâmetro a uma consulta

  1. Crie uma consulta seleção e depois abra-a no modo Design.

  2. Na linha Critérios de um campo para o qual você deseja que um parâmetro seja aplicado, digite o texto que deseja que a caixa de diálogo do parâmetro exiba, entre colchetes, por exemplo:

    [Start Date]

    Quando você executar a consulta de parâmetro, o prompt aparecerá em uma caixa de diálogo sem os colchetes.

    Você também pode usar uma expressão com seus prompts de parâmetro, por exemplo:

    Between [Start Date] And [End Date]

    Observação: Uma caixa de diálogo separada aparece para cada prompt de parâmetro. No segundo exemplo, duas caixas de diálogo aparecem: uma para Start Date e outra para End Date.

  3. Repita a etapa 2 para cada campo ao qual você deseja adicionar parâmetros.

Você pode usar as etapas anteriores para adicionar um parâmetro a qualquer um dos seguintes tipos de consultas: Seleção, Referência Cruzada, Acréscimo, Criar Tabela ou Atualizar.

Você também pode adicionar um parâmetro a uma consulta união seguindo estas etapas:

  1. Abra a consulta união no modo SQL.

  2. Adicione uma cláusula WHERE que contenha cada um dos campos para os quais você deseja solicitar um parâmetro.

    Se uma cláusula WHERE já existir, verifique se os campos aos quais você deseja usar um prompt de parâmetros já estão nessa cláusula. Caso não estejam, adicione-os.

  3. Em vez de usar um critério na cláusula WHERE, use um prompt de parâmetro.

Especificar tipos de dados de parâmetro

Você também pode especificar que tipo de dados um parâmetro deve aceitar. É possível especificar o tipo de dados de qualquer parâmetro, mas é especialmente importante especificar o tipo de dados para dados numéricos, de moeda ou de data/hora. Quando você especificar o tipo de dados que um parâmetro deve aceitar, os usuários verão uma mensagem de erro mais útil caso insiram o tipo errado de dados, como inserir texto quando se espera moeda.

Observação: Se um parâmetro estiver configurado para aceitar dados de texto, qualquer entrada será interpretada como texto e nenhuma mensagem de erro será exibida.

Para especificar o tipo de dados para os parâmetros de uma consulta, siga estas etapas:

  1. Com a consulta aberta no modo Design, na guia Design, no grupo Mostrar/Ocultar, clique em Parâmetros.

  2. Na caixa de diálogo Parâmetros da Consulta, na coluna Parâmetro, digite o prompt correspondente a cada parâmetro para o qual você deseja especificar o tipo de dados. Verifique se cada parâmetro corresponde ao prompt usado na linha Critérios da grade de design da consulta.

  3. Na coluna Tipo de Dados, selecione o tipo de dados de cada parâmetro.

Criar um formulário que colete os parâmetros

Embora as consultas de parâmetros apresentem uma caixa de diálogo interna que coleta parâmetros, elas fornecem apenas funcionalidades básicas. Ao usar um formulário para coletar parâmetros, você ganha os seguintes recursos:

  • A capacidade de usar controles específicos de tipo de dados, como controles de calendário para datas.

  • A persistência dos parâmetros coletados, para que você possa usá-los com mais de uma consulta.

  • A capacidade de fornecer uma caixa de combinação ou caixa de listagem para a coleta de parâmetros, que permite escolher uma lista de valores de dados disponíveis.

  • A capacidade de fornecer controles para outras funções, como abrir ou atualizar uma consulta.

O seguinte vídeo mostra como você pode criar um formulário simples para coletar parâmetros para uma consulta em vez de usar as caixas de diálogo normalmente associadas a consultas de parâmetros.

Seu navegador não oferece suporte a vídeo. Instale o Microsoft Silverlight, o Adobe Flash Player ou o Internet Explorer 9.

Criar um formulário que colete os parâmetros para um relatório

Há várias maneiras de abordar esse cenário, mas mostraremos apenas uma técnica usando principalmente macros. Siga estas etapas para criar um formulário que colete parâmetros para um relatório.

Etapa 1: Criar um formulário que aceite entradas

  1. Na guia Criar, no grupo Formulários, clique em Design de Formulário.

  2. Na modo Design, pressione F4 para exibir a folha de propriedades e, em seguida, especifique as propriedades do formulário conforme mostrado na tabela a seguir.

    Propriedade

    Configuração

    Legenda

    Digite o nome que deseja exibir na barra de título do formulário.

    Modo de Exibição Padrão

    Formulário Simples

    Permitir Modo Formulário

    Sim

    Permitir Modo Folha de Dados

    Não

    Permitir Modo Tabela Dinâmica

    Não

    Permitir Modo Gráfico Dinâmico

    Não

    Barras de Rolagem

    Nenhum dos dois

    Seletores de Registro

    Não

    Botões de Navegação

    Não

    Estilo da Borda

    Diálogo

  3. Para cada parâmetro que você deseja que o formulário colete, clique em Caixa de Texto, no grupo Controles, na guia Design.

  4. Defina as propriedades para as caixas de texto, conforme mostrado na tabela a seguir.

    Propriedade

    Configuração

    Nome

    Digite um nome que descreva o parâmetro, por exemplo, StartDate.

    Formato

    Escolha um formato que reflita o tipo de dados do campo de parâmetro. Por exemplo, selecione Data Geral para um campo de data.

  5. Salve o formulário e lhe dê um nome, como frmCriteria.

Etapa 2: Criar um módulo de código para verificar se o formulário de parâmetro já foi carregado

  1. Na guia Criar, no grupo Macros e Código, clique em Módulo

    Um novo módulo é aberto no Editor do Visual Basic.

  2. Digite ou cole o seguinte código no Editor do 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. Salve o módulo com um nome exclusivo e, em seguida, feche o Editor do Visual Basic.

Etapa 3: Criar uma macro que controle o formulário e o relatório

Usando os recursos de submacro das macros do Access, podemos definir todas as etapas que precisamos cumprir em uma única macro. Vamos criar quatro submacros - Abrir caixa de diálogo, Fechar caixa de diálogo, OK e Cancelar - para controlar as várias tarefas necessárias para este procedimento. Usando a captura de tela abaixo como guia, crie uma nova macro com as seguintes submacros e ações. Note, para este exemplo, que nosso formulário de parâmetro é chamado de frmCriteria. Ajuste sua macro para corresponder ao nome do formulário que você criou anteriormente. Clique em Mostrar Todas as Ações, na guia Design para ver todas as ações de macro.

Captura de tela de uma macro do Access com quatro submacros e ações.

Salve e feche a macro. Dê um nome à macro, por exemplo, Macro do intervalo de datas.

Etapa 4: Adicione os botões de comando OK e Cancelar ao formulário

  1. Reabra o formulário de parâmetros que você criou anteriormente no modo Design.

  2. Certifique-se de que Usar Assistentes de Controle, no grupo Controles, na guia Design não esteja selecionado.

  3. Na guia Design, no grupo Controles, clique em Botão.

  4. Posicione o ponteiro abaixo das caixas de texto no formulário e arraste para criar um botão de comando OK.

  5. Se a folha de propriedades não estiver visível, pressione F4 para exibi-la.

  6. Selecione o botão de propriedades OK, conforme mostrado na tabela a seguir.

    Propriedade

    Configuração

    Nome

    OK

    Legenda

    OK

    Padrão

    Sim

    OnClick

    Digite o nome da macro, por exemplo, Date Range Macro.OK.

  7. Crie um botão de comando Cancelar e defina suas propriedades, conforme mostrado na tabela a seguir.

    Propriedade

    Configuração

    Nome

    Cancelar

    Legenda

    Cancelar

    OnClick

    Digite o nome da macro, por exemplo, Date Range Macro.Cancel.

  8. Salve e feche o formulário.

Etapa 5: Usar os dados do formulário como critério de consulta

  1. Abra a consulta que você criou anteriormente no modo Design.

  2. Digite os critérios para os dados. Use o objeto Forms, o nome do formulário e o nome do controle:

    • Por exemplo, em um banco de dados do Access (.accdb ou .mdb), para um formulário chamado frmCriteria, você usa a seguinte expressão para se referir aos controles denominados Start Date e End Date na consulta:

      Between [Forms]![frmCriteria]![Start Date] And [Forms]![frmCriteria]![End Date]

Etapa 6: Adicionar as ações de macro aos eventos do relatório

  1. Abra o relatório que você deseja usar no modo Design.

  2. Se a folha de propriedades não estiver visível, pressione F4 para exibi-la.

  3. Verifique se a propriedade Fonte de Registro do relatório está usando a consulta de parâmetros que você definiu anteriormente.

  4. Defina estas duas propriedades de relatório adicionais, como mostrado na tabela a seguir.

    Propriedade

    Configuração

    OnOpen

    Digite o nome da macro, por exemplo, Date Range Macro.Open Dialog.

    OnClose

    Digite o nome da macro, por exemplo, Date Range Macro.Close Dialog.

    No evento Open do relatório, o Access executará as ações definidas na submacro Open Dialog do objeto Date Range Macro. Do mesmo modo, quando você fecha o relatório, o Access executará as ações definidas na submacro Close Dialog do objeto Date Range Macro.

  5. Salve e feche o relatório.

Etapa 7: Experimentar

Agora que você criou todos os objetos do Access, é hora de experimentá-los. Abra seu relatório no Modo Relatório ou Visualização de Impressão e observe que antes de o Access exibir o relatório, seu formulário de parâmetro é aberto no modo de diálogo. Insira os critérios necessários nas caixas de texto que você criou anteriormente e clique no botão de comando OK no formulário. O Access, então, oculta o formulário (Visível = Não) e abre o relatório com apenas dados que correspondem aos seus critérios. Isso funciona porque a consulta de parâmetros na qual o relatório se baseia pode ler os valores nos controles no formulário oculto. Quando você fecha o relatório, o Access também fechará o formulário de parâmetro.

Início da página

Precisa de mais ajuda?

Quer mais opções

Explore os benefícios da assinatura, procure cursos de treinamento, saiba como proteger seu dispositivo e muito mais.

As comunidades ajudam você a fazer e responder perguntas, fazer comentários e ouvir especialistas com conhecimento avançado.