Tipp 8.12 - Binär nach Dezimal
Wie kann ich eine Binärzahl in eine Dezimalzahl bzw. eine Dezimalzahl in eine Binärzahl umwandeln?
Mit dieser Funktion können Sie eine Binärzahl in eine Dezimalzahl bzw. eine Dezimalzahl in eine Binärzahl umwandeln. Kopieren Sie einfach nachfolgenden Quellcode in die Zwischenablage und fügen Sie anschließend den Inhalt der Zwischenablage in ein neues Modul ein. Die Aufrufparameter finden Sie im Quellcode beschrieben.
Beispiel:
Option Explicit Function Bin2Dec(ByVal sBinValue As String) As Long '// ----------------------------------------------------- '// Methode: | Binärwert in Dezimalzahl umwandeln '// ----------------------------------------------------- '// Parameter: | sBinValue - Binärwert als String '// ----------------------------------------------------- '// Rückgabe: | Errechneter Dezimalwert '// ----------------------------------------------------- '// Autor: | Stefan Kulpa '// | EDV Innovation & Consulting - Dormagen '// ----------------------------------------------------- Dim lLoop As Long Dim lLength As Long lLength = Len(sBinValue) For lLoop = lLength To 1 Step -1 Bin2Dec = _ Bin2Dec + IIf(Mid$(sBinValue, lLoop, 1) _ = "1", 2 ^ (lLength - lLoop), 0) Next lLoop End Function Function Dec2Bin(ByVal lDecValue As Long) As String '// ----------------------------------------------------- '// Methode: | Binärwert einer Dezimalzahl ermitteln '// ----------------------------------------------------- '// Parameter: | lDecValue - Dezimalzahl '// ----------------------------------------------------- '// Rückgabe: | Ermittelter Binärwert '// ----------------------------------------------------- '// Autor: | Stefan Kulpa '// | EDV Innovation & Consulting - Dormagen '// ----------------------------------------------------- Dim lRemainder As Long Do lRemainder = lDecValue Mod 2 Dec2Bin = lRemainder & Dec2Bin lDecValue = lDecValue \ 2 Loop Until lDecValue = 0 End Function