Supportnet / Forum / Datenbanken
QUERSUMME in ACC2002
Frage
Gibt´s in Access eigentlich eine Formel für die Quersumme einer Zahl und wie muss ich sie eintragen,wenn z.B. Feld A die Zahl enthält und in Feld B automatisch ihre Quersumme berechnet werden soll ?
Ich hab´die Datenbank wegen ihrer Grösse aus Excel in Access importiert,aber hier funktioniert die alte Formel nicht -- genausowenig wie viele Farben und ein grössenabhängiges Memofeld.
Danke für eure Hilfe
Moni
Antwort 1 von Koebi
Grüezi Moni
Hier 3 verschiedene Funktionen zur Errechnung der Quersumme:
********************
' Berechnet die Quersumme
' von Kurt aus Kienitz in http://www.ms-office-forum.net/forum/showthread.php?s=&threadid=44974&highlight=quersumme
Function Quersumme(iZahl As Integer) As Integer
Dim intI%
Dim strZahl As String
strZahl = Trim$(Str$(iZahl))
For intI = 1 To Len(strZahl)
Quersumme = Quersumme + CInt(Mid(strZahl, intI, 1))
Next
End Function
******************
' Berechnet die letzte Quersumme
' von FW in http://www.ms-office-forum.net/forum/showthread.php?s=&threadid=44974&highlight=quersumme
Function letzteQuersumme(ByVal lngVar As Long) As Byte
Dim bytSumme As Byte, bytVar As Byte
Dim strVar As String
strVar = CStr(lngVar)
Do
bytSumme = 0
For bytVar = 1 To Len(strVar)
bytSumme = bytSumme + val(Mid$(strVar, bytVar, 1))
Next bytVar
strVar = CStr(bytSumme)
Loop While Len(strVar) > 1
letzteQuersumme = bytSumme
End Function
*******************
' Berechnet die "einfache" Quersumme
' von FW in http://www.ms-office-forum.net/forum/showthread.php?s=&threadid=44974&highlight=quersumme
Function einfacheQuersumme(ByVal lngVar As Long) As Byte
Dim bytSumme As Byte, bytVar As Byte
Dim strVar As String
strVar = CStr(lngVar)
For bytVar = 1 To Len(strVar)
bytSumme = bytSumme + val(Mid$(strVar, bytVar, 1))
Next bytVar
einfacheQuersumme = bytSumme
End Function
Gruss
Köbi
Hier 3 verschiedene Funktionen zur Errechnung der Quersumme:
********************
' Berechnet die Quersumme
' von Kurt aus Kienitz in http://www.ms-office-forum.net/forum/showthread.php?s=&threadid=44974&highlight=quersumme
Function Quersumme(iZahl As Integer) As Integer
Dim intI%
Dim strZahl As String
strZahl = Trim$(Str$(iZahl))
For intI = 1 To Len(strZahl)
Quersumme = Quersumme + CInt(Mid(strZahl, intI, 1))
Next
End Function
******************
' Berechnet die letzte Quersumme
' von FW in http://www.ms-office-forum.net/forum/showthread.php?s=&threadid=44974&highlight=quersumme
Function letzteQuersumme(ByVal lngVar As Long) As Byte
Dim bytSumme As Byte, bytVar As Byte
Dim strVar As String
strVar = CStr(lngVar)
Do
bytSumme = 0
For bytVar = 1 To Len(strVar)
bytSumme = bytSumme + val(Mid$(strVar, bytVar, 1))
Next bytVar
strVar = CStr(bytSumme)
Loop While Len(strVar) > 1
letzteQuersumme = bytSumme
End Function
*******************
' Berechnet die "einfache" Quersumme
' von FW in http://www.ms-office-forum.net/forum/showthread.php?s=&threadid=44974&highlight=quersumme
Function einfacheQuersumme(ByVal lngVar As Long) As Byte
Dim bytSumme As Byte, bytVar As Byte
Dim strVar As String
strVar = CStr(lngVar)
For bytVar = 1 To Len(strVar)
bytSumme = bytSumme + val(Mid$(strVar, bytVar, 1))
Next bytVar
einfacheQuersumme = bytSumme
End Function
Gruss
Köbi

