Evento Report.NoData (Access)
O evento NoData ocorre depois que o Microsoft Access formata um relatório para impressão que não contém dados (o relatório está acoplado a um recordset vazio), mas antes do relatório é impresso. Use esse evento para cancelar a impressão de um relatório em branco.
Sintaxe
expressão. NoData (Cancelar)
Expressão Uma variável que representa um objeto Report .
Parâmetros
Nome | Obrigatório/Opcional | Tipo de dados | Descrição |
---|---|---|---|
Cancel | Obrigatório | Integer | A configuração determina se o relatório deve ser impresso. Definir o argumento Cancelar como True (1) impede a impressão do relatório. Também é possível usar o método CancelEvent do objeto DoCmd para cancelar a impressão do relatório. |
Comentários
Para executar uma macro ou procedimento de evento quando esse evento ocorrer, defina a propriedade OnNoData como o nome da macro ou como [Procedimento de Evento].
Se o relatório não estiver vinculado a uma tabela ou consulta (usando a propriedade RecordSource do relatório), o evento NoData não ocorrerá.
Esse evento ocorre após os eventos Format para o relatório, mas antes do primeiro evento Imprimir .
Esse evento não ocorrerá para sub-relatórios. Se você quiser ocultar controles em um sub-relatório quando o sub-relatório não tiver dados, para que os controles não imprimam nesse caso, você pode usar a propriedade HasData em um procedimento de macro ou evento que é executado quando o evento Format ou Print ocorrer.
O evento NoData ocorre antes do primeiro evento page do relatório.
Exemplo
O exemplo a seguir mostra como cancelar a impressão de um relatório quando ele não contiver dados. Uma caixa de mensagem também é exibida informando ao usuário que a impressão foi cancelada.
Para testar esse exemplo, adicione o seguinte procedimento de evento a um relatório. Tente executar o relatório quando ele não contiver dados.
Private Sub Report_NoData(Cancel As Integer)
MsgBox "The report has no data." & _
chr(13) & "Printing is canceled. " & _
chr(13) & "Check the data source for the " & _
chr(13) & "report. Make sure you entered " & _
chr(13) & "the correct criteria (for " & _
chr(13) & "example, a valid range of " & _
chr(13) & "dates),." vbOKOnly + vbInformation
Cancel = True
End Sub
O exemplo a seguir mostra como usar o evento NoData de um relatório para impedir que o relatório seja aberto quando não há dados a serem exibidos.
Private Sub Report_NoData(Cancel As Integer)
'Add code here that will be executed if no data
'was returned by the Report's RecordSource
MsgBox "No customers ordered this product this month. " & _
"The report will now close."
Cancel = True
End Sub
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.