In diesem Tipp zeigen wir Ihnen eine ganz einfache Möglichkeit, mathematische Ausdrücke (Formeln) zu berechnen, z.B.: (15 + 8) * 2 - (4 + 9) / 2 + 100 Die Idee ist es diese Berechnung direkt vom Datenbank-System erledigen zu lassen. Egal, ob SQL-Server oder MS-Access - innerhalb einer Datenbankabfrage kann man ja durchaus auch Berechnungen an die DB-Engine übergeben, die dann das Ergebnis zurückliefert. Was liegt also näher, für die Berechnung einfacher mathematischer Ausdrücke eine kleine Datenbankabfrage zu generieren? Voraussetzung: ' Mathematischen Term berechnen Dim oRs As ADODB.Recordset Dim Ergebnis As Double Dim sAusdruck As String ' Ausdruck, der berechnet werden soll sAusdruck = "(15 + 8) * 2 - (4 + 9) / 2 + 100" ' Ergebnis auf 1 Datensatz begrenzen (Id = 1) Set oRs = oConn.Execute("SELECT " & sAusdruck & " AS Formel FROM Tabelle1 WHERE Id=1") If Not oRs.EOF And Not oRs.BOF Then ' Ergebnis der Berechnung zurückgeben Ergebnis = oRs("Formel") Else ' Fehler ENd If oRs.Close Set oRs = Nothing |