Tipp 3.8 - Daten vorhanden
Wie kann ich beim Öffnen eines Berichtes überprüfen, ob dieser Daten enthält?
Mit dieser Funktion können Sie beim Öffnen eines Berichtes überprüfen, ob dieser Daten enthält. Kopieren Sie einfach nachfolgenden Quellcode in die Zwischenablage und fügen Sie anschließend den Inhalt der Zwischenablage in ein neues Modul ein. Die Aufrufparameter finden Sie im Quellcode beschrieben.
Beispiel:
Public Function A2XRptHasData(prpt As Report) As Boolean '// ===================================================== '// Methode | Überprüft, ob ein Bericht Daten enthält '// ----------------------------------------------------- '// Parameter | prpt - Berichtsobjekt '// ----------------------------------------------------- '// Rückgabe | Boolean - True/False '// ----------------------------------------------------- '// Erstellt | Manuela Kulpa '// | EDV Innovation & Consulting - Dormagen '// ----------------------------------------------------- '// Beispielaufruf: Im Open-Ereignis des Berichts '// Private Sub Report_Open(Cancel As Integer) ' If A2XRptHasData(Me) = False Then ' MsgBox "Keine Daten vorhanden", vbInformation ' Cancel = True ' End If ' End Sub '// ===================================================== ' Verweis auf DAO 3.X Object Library muss gesetzt sein! Dim dbs As DAO.Database Dim rst As DAO.Recordset On Error GoTo A2XRptHasData_Error Set dbs = CurrentDb() ' Berichtsdaten an Recordset übergeben Set rst = dbs.OpenRecordset(prpt.RecordSource) ' Wenn mehr als 1 DS , dann sind Daten vorhanden A2XRptHasData = (rst.RecordCount > 0) A2XRptHasData_Exit: On Error GoTo 0 If Not rst Is Nothing Then rst.Close: Set rst = Nothing If Not dbs Is Nothing Then dbs.Close: Set dbs = Nothing Exit Function A2XRptHasData_Error: Select Case Err.Number Case Else MsgBox "Fehler " & Err.Number & ": " & _ Err.Description, vbCritical, _ "modRpt.A2XRptHasData" End Select Resume A2XRptHasData_Exit End Function