Beregn kontrolciffer til FIK kort.

Nedenstående makro beregner kontrolcifferet til betalingsidentifikationen på pengeinstitutternes fælles indbetalingskort, kortart 71. Beregningen udførtes ud fra 14 indtastede cifre, og det beregnede ciffer skal anbringes sidst. Funktionen fourdsætter at foranstillede 0'er håndteres ved indtastning med indledende enkeltapostrof, fx '00123456789012

Function Mod10(tl As String) As Byte

'Erklær nødvendige variable
    Dim c(13) As Integer
    Dim er As Integer

' Læg hvert ciffer ind i variabel og gang med 1 eller 2
    c(13) = Mid(tl, 14, 1) * 2
    c(12) = Mid(tl, 13, 1)
    c(11) = Mid(tl, 12, 1) * 2
    c(10) = Mid(tl, 11, 1)
    c(9) = Mid(tl, 10, 1) * 2
    c(8) = Mid(tl, 9, 1)
    c(7) = Mid(tl, 8, 1) * 2
    c(6) = Mid(tl, 7, 1)
    c(5) = Mid(tl, 6, 1) * 2
    c(4) = Mid(tl, 5, 1)
    c(3) = Mid(tl, 4, 1) * 2
    c(2) = Mid(tl, 3, 1)
    c(1) = Mid(tl, 2, 1) * 2
    c(0) = Mid(tl, 1, 1)

' Find tværsummen af variabler, større end 10
    For i = 0 To 13
        If c(i) > 9 Then
            c(i) = CInt(Left(c(i), 1)) + CInt(Right(c(i), 1))
        End If
    Next

' Find tværsummen af alle variable
    er = 0
    For i = 0 To 13
        er = er + c(i)
    Next

' Beregn 10 minus resten af tværsummen delt med 10
' Og skriv resultatet i regnearket

    Mod10 = 10 - er Mod 10

End Function


Funktionen bruges på samme måde som Excels indbyggede funktioner. Cellen med de 14 cifre skal angives som argument, fx =Mod10(A1)

- Tilbage til makroer -
- Tilbage til Excel -