Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!
Zitat von: Hondo am Mai 22, 2025, 15:03:52If rs.EOF Then
fcDomWert = Null
Das ist teilweise falsch. Für COUNT und SUM muss der Rückgabewert 0 sein und nicht NULL.Public Function fcDomWert(Expression As String, Domain As String, _
Optional Criteria As String, _
Optional ltDomArt As ltDomWert) As Variant
Dim bytWert As Byte
Dim strSQL As String
Dim rs As DAO.Recordset
If IsMissing(ltDomArt) Then
bytWert = 0
Else
bytWert = ltDomArt
End If
Select Case bytWert
Case 0: strSQL$ = "SELECT " & Expression$ & " FROM " & Domain$
Case 1: strSQL$ = "SELECT COUNT(" & Expression$ & ") FROM " & Domain$
Case 2: strSQL$ = "SELECT MAX(" & Expression$ & ") FROM " & Domain$
Case 3: strSQL$ = "SELECT SUM(" & Expression$ & ") FROM " & Domain$
Case 4: strSQL$ = "SELECT FIRST(" & Expression$ & ") FROM " & Domain$
Case 5: strSQL$ = "SELECT LAST(" & Expression$ & ") FROM " & Domain$
Case 6: strSQL$ = "SELECT SUM(" & Expression$ & ") FROM " & Domain$
Case 7: strSQL$ = "SELECT AVG(" & Expression$ & ") FROM " & Domain$
End Select
If Nz(Criteria$, "") <> "" Then strSQL$ = strSQL$ & " WHERE " & Criteria$
Set rs = CurrentDbC.OpenRecordset(strSQL$, dbOpenForwardOnly)
If rs.EOF Then
fcDomWert = Null
Else
fcDomWert = rs.Fields(0)
End If
rs.Close
Set rs = Nothing
End Function
Public Enum ltDomWert
ltDLookup = 0
ltDCount = 1
ltDMax = 2
ltDMin = 3
ltDFirst = 4
ltDLast = 5
ltDSum = 6
ltDAvg = 7
End Enum
Zitat von: kartler am Mai 19, 2025, 23:14:40Nun ist der Plan diesen Bericht nach jeder Eingabe einer Wertungszeit (oder auch voll Automatisch alle 60Sekunden) zu Exportieren als PDF oder noch besser HTML damit man es vollautomatisch auf eine Seite ins Netz laden kann.
Zitat von: Mokkie am Mai 21, 2025, 11:59:19Ist das so gemeint, dass ich das über eine StoredProcedur auf dem SQL server und in Access nur die entsprechenden Paramter an diese übergeben sollte?