Mit nachfolgender Funktion lässt sich die IBAN-Nummer nach der Standard IBAN-Berechnung für deutsche Bankverbindungen ermitteln. Tipp: Beschreibung der Parameter:
' IBAN-Nummer ermitteln Private Function IBANCalc(ByVal sLand As String, _ ByVal sBLZ As String, _ ByVal sKtoNr As String, _ Optional ByVal nBLZMaxLen As Integer = 8, _ Optional ByVal nKTOMaxLen As Integer = 10) As String Dim zahl As Variant Dim pz As Variant Dim sIBAN As String Dim sChar As String Dim sTemp As String Dim i As Integer sIBAN = sLand & "00" & _ Format$(sBLZ, String$(nBLZMaxLen, "0")) & _ Format$(sKtoNr, String$(nKTOMaxLen, "0")) sIBAN = Right$(sIBAN, Len(sIBAN) - 4) & Left$(sIBAN, 4) For i = 1 To Len(sIBAN) sChar = Mid$(sIBAN, i, 1) If Asc(sChar) > 64 And Asc(sChar) < 91 Then sChar = CStr(Asc(sChar) - 55) End If sTemp = sTemp & sChar Next i zahl = CDec(sTemp) pz = 98 - modDecimal(zahl, 97) sTemp = Left$(sTemp, Len(sTemp) - 2) & Trim$(Format(STR$(pz), "00")) sTemp = Right$(sTemp, 6) & Left$(sTemp, Len(sTemp) - 6) IBANCalc = Chr$(Val(Left$(sTemp, 2)) + 55) & _ Chr$(Val(Mid$(sTemp, 3, 2)) + 55) & _ Right$(sTemp, Len(sTemp) - 4) End Function Da es sich bei den Berechnungen um sehr große ganze Zahlen handelt, muss auf das Decimal-Format ausgewichen werden (mit CDec) und es braucht eine eigene Modulo-Funktion: ' Hilfsfunktion: Modulo für große Zahlen Public Function modDecimal(Dividend, Divisor) If Divisor = 0 Then modDecimal = -1 Else modDecimal = Dividend - Divisor * (Round(Dividend / Divisor)) If modDecimal < 0 Then modDecimal = Divisor + modDecimal End If End Function Aufrufbeispiel: ' Deutschland ' BLZ: 793 530 90 ' Konto-Nr.: 16303 ' ' offizielle IBAN-Nummer lautet: DE65793530900000016303 Dim sIBAN As String sIBAN = IBANCalc("DE", "79353090", "16303", 8, 10) Wichtiger Hinweis: Dieser Tipp wurde bereits 36.798 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
Neu! sevCoolbar 3.0 ![]() Professionelle Toolbars im modernen Design! Mit sevCoolbar erstellen Sie in wenigen Minuten ansprechende und moderne Toolbars und passen diese optimal an das Layout Ihrer Anwendung an (inkl. große Symbolbibliothek) - für VB und MS-Access Tipp des Monats TOP Entwickler-Paket ![]() TOP-Preis!! Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1866.50 EUR... |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |