Compartir a través de


Evento Report.NoData (Access)

El evento NoData se produce después de que Microsoft Access da formato a un informe para imprimirla que no tiene datos (el informe es dependiente de un objeto recordset vacío), pero antes de imprime el informe. Use este evento para cancelar la impresión de un informe en blanco.

Sintaxis

expresión. NoData (Cancelar)

Expresión Variable que representa un objeto Report .

Parameters

Nombre Obligatorio/opcional Tipo de datos Descripción
Cancel Obligatorio Integer El valor determina si se va a imprimir el informe. Establecer el argumento Cancel en True (1) impide que el informe se imprima. También puede usar el método CancelEvent del objeto DoCmd para cancelar la impresión del informe.

Comentarios

Para ejecutar una macro o un procedimiento de evento cuando se produzca este evento, establezca la propiedad OnNoData en el nombre de la macro o en [Procedimiento de evento].

Si el informe no está enlazado a una tabla o consulta (mediante la propiedad RecordSource del informe), no se produce el evento NoData .

Este evento se produce después de los eventos Format del informe, pero antes del primer evento Print .

Este evento no se produce en subinformes. Si desea ocultar controles en un subinforme cuando el subinforme no tiene datos, para que los controles no se impriman en este caso, puede usar la propiedad HasData en una macro o procedimiento de evento que se ejecute cuando se produzca el evento Format o Print .

El evento NoData se produce antes del primer evento Page del informe.

Ejemplo:

En el siguiente ejemplo se muestra cómo se cancela la impresión de un informe cuando no tiene datos. Se muestra asimismo un cuadro de mensaje en el que se notifica al usuario que se ha cancelado la impresión.

Para probar este ejemplo, agregue el siguiente procedimiento de evento a un informe. Intente ejecutar el informe cuando no contiene datos.

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 

En el ejemplo siguiente se muestra cómo usar el evento NoData de un informe para evitar que el informe se abra cuando no se muestre ningún dato.

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

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.