Entrar com a conta da Microsoft
Entrar ou criar uma conta.
Olá,
Selecionar uma conta diferente.
Você tem várias contas
Escolha a conta com a qual você deseja entrar.

Por padrão, você pode imprimir relatórios que não contêm registros. Para resolver esse problema, você pode usar uma macro ou um código VBA (Microsoft Visual Basic for Applications) para detectar a ausência de registros em um relatório e, em seguida, cancelar a operação de impressão. As etapas deste artigo explicam como usar ambas as técnicas.

O que você deseja fazer?

Você provavelmente deseja cancelar a impressão de um relatório quando ele não contiver nenhum registro. Por exemplo, se você estiver começando a vender um novo produto, é provável que haja um período de tempo em que você ainda não registrou nenhuma venda. Portanto, você deve considerar a possibilidade de que alguns de seus relatórios possam não conter registros de detalhes e que funções de agregação, como a função Count , podem não ter nada a contar. Para lidar com tal ocorrência normalmente, você pode criar uma macro que cancela o trabalho de impressão. Você também pode adicionar algumas linhas de código VBA cuidadosamente colocado para fazer a mesma coisa. VBA é a linguagem de programação que Access usa.

Você adiciona a macro ou o código VBA ao procedimento de evento On No Data do relatório. Access dispara o evento On No Data sempre que você executa um relatório sem registros. A macro e o código VBA descritos neste artigo exibem uma mensagem apropriada e cancelam a impressão do relatório quando esse relatório não contém dados. Quando você adiciona uma macro ou código VBA ao procedimento de evento On No Data , a macro ou o código VBA são executados sempre que você abre um relatório que não contém registros. Quando você clica em OK para fechar qualquer mensagem de alerta, a macro também fecha o relatório em branco. Quando você adiciona a macro ou o código VBA ao relatório, um relatório em branco não será aberto quando você tentar exibi-lo no modo de exibição De relatório ou layout , mas você pode abrir o relatório no modo de exibição Design.

Usar uma macro para cancelar a impressão

A macro descrita nesta seção exibe uma mensagem de alerta ao tentar imprimir um relatório em branco. Quando você clica em OK para fechar a caixa de mensagens, a macro cancela automaticamente a operação de impressão. Se você não incluir uma mensagem de alerta, ela aparecerá como se nada acontecesse quando você tentar imprimir o relatório – algo que provavelmente confundirá os usuários do relatório.

Criar a macro

  1. No Painel de Navegação, clique com o botão direito do mouse no relatório que você deseja alterar e clique em Modo de Exibição de Design.

  2. Na guia Design, no grupo Mostrar/Ocultar, clique em Folha de Propriedades.

    –ou–

    Clique duas vezes na caixa no canto superior esquerdo ou direito do relatório, dependendo das configurações regionais e de idioma.

  3. Clique na guia Evento e, na caixa de propriedade On No Data , clique em Botão Construtor.

    A caixa de diálogo Escolher Construtor é exibida.

  4. Clique em Construtor de Macros e clique em OK.

    O designer de macro inicia e exibe uma macro em branco.

  5. Na lista suspensa de ações de macro na janela de design de macro, selecione MessageBox na lista.

  6. na caixa Mensagem , digite o texto para sua mensagem de alerta.

    Por exemplo, você pode inserir o seguinte: não há registros a serem relatados.

  7. Opcionalmente, altere o valor do argumento na caixa Bipe de Sim para Não e, na lista Tipo , selecione o tipo de ícone que você deseja aparecer em sua mensagem de alerta.

  8. Na caixa Título , digite o título para sua mensagem de alerta.

    Por exemplo, você pode inserir Nenhum Registro.

  9. Selecione a lista suspensa de ações de macro abaixo da ação MessageBox e selecione CancelarEvent.

  10. Na guia Design , no grupo Fechar , clique em Salvar.

  11. Na guia Design, no grupo Fechar, clique em Fechar. Se uma mensagem de alerta for exibida e perguntar se você deseja salvar alterações na macro e na propriedade do relatório, clique em Sim, feche o relatório, salve suas alterações se solicitado e continue nas próximas etapas para testá-lo.

Testar sua macro

  • No Painel de Navegação, clique com o botão direito do mouse no relatório que contém a macro e clique em Imprimir. Dependendo das opções escolhidas, o Access exibe uma mensagem de alerta.

    Quando você clica em OK para fechar a mensagem, a ação CancelEvent interrompe a operação de impressão. Como você não especificou nenhum outro evento (como abrir o relatório para exibição), o relatório será fechado.

Início da Página

Usar o código VBA para cancelar a impressão

O código VBA descrito aqui funciona muito parecido com a macro descrita na seção anterior – ela exibe uma mensagem de alerta quando você abre um relatório em branco e cancela a operação de impressão quando você fecha a mensagem de alerta.

Adicionar código VBA

  1. No Painel de Navegação, clique com o botão direito do mouse no relatório que você deseja alterar e clique em Modo de Exibição de Design.

    Observação: Para concluir esse procedimento, use um relatório que não contém registros.

  2. Na guia Design, no grupo Mostrar/Ocultar, clique em Folha de Propriedades.

    –ou–

    Clique duas vezes na caixa no canto superior esquerdo ou direito do relatório, dependendo das configurações regionais e de idioma.

  3. Clique na guia Evento e, na caixa de propriedade On No Data , clique em Botão Construtor.

    A caixa de diálogo Escolher Construtor é exibida.

  4. Clique em Construtor de Código e clique em OK.

    O Editor do Visual Basic inicia e exibe um procedimento de evento em branco.

  5. Digite o seguinte código no Editor do Visual Basic para que o procedimento Report_NoData apareça exatamente assim quando terminar:

    Private Sub Report_NoData (Cancel As Integer)
    MsgBox "There are no records to report", vbExclamation, "No Records"
    Cancel = True
    End Sub
  6. Quando terminar, clique em Arquivo e clique em Salvar.

  7. Clique em Arquivo e clique em Fechar e Retornar ao Microsoft Access.

  8. Feche o relatório aberto e clique em Sim para confirmar a salvação.

  9. No Painel de Navegação, clique com o botão direito do mouse no relatório que você acabou de alterar e clique em Imprimir. Dependendo das opções escolhidas, o Access exibe uma mensagem de alerta.

O procedimento Report_NoData usa a função MsgBox para exibir o botão Não há registros para relatar a mensagem e um botão OK . Quando você clica em OK, a linha "Cancel=True" no procedimento instrui o Access a cancelar o relatório. Cancelar é um argumento que é passado automaticamente para o procedimento de evento e sempre é verificado pelo Access quando o procedimento de evento é concluído.

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.

Essas informações foram úteis?

Qual é o seu grau de satisfação com a qualidade do idioma?
O que afetou sua experiência?
Ao pressionar enviar, seus comentários serão usados para aprimorar os produtos e serviços da Microsoft. Seu administrador de TI poderá coletar esses dados. Política de Privacidade.

Agradecemos seus comentários!

×