Hier mal Funktionen die Binär in Dezimal, Hexa in Dezimal etc. umwandelt...
Viel Spass damit!
Viel Spass damit!
Visual Basic-Quellcode
- Option Explicit
- Function CheckDual(ByVal Dual As String) As Boolean
- Dim i As Integer
- Dim Value As Variant
- CheckDual = True
- For i = 0 To Len(Dual) - 1
- Value = UCase(Mid(Dual, i + 1, 1))
- If Value <> 0 And Value <> 1 Then CheckDual = False
- Next i
- End Function
- Function CheckHex(ByVal Hex As String) As Boolean
- Dim i As Integer
- CheckHex = True
- For i = 0 To Len(Hex) - 1
- Select Case UCase(Mid(Hex, i + 1, 1))
- Case 0 To 9, "A" To "F"
- Case Else
- CheckHex = False
- End Select
- Next i
- End Function
- Function HexToDez(ByVal VarHex As Variant) As Double
- Dim intHochzahl As Integer
- Dim intHexa As Integer
- Dim dblDez As Double
- VarHex = UCase(VarHex)
- For intHochzahl = 0 To (Len(VarHex) - 1)
- Select Case (Mid(VarHex, Len(VarHex) - intHochzahl, 1))
- Case 0 To 9
- intHexa = CInt((Mid(VarHex, Len(VarHex) - intHochzahl, 1)))
- Case "A"
- intHexa = 10
- Case "B"
- intHexa = 11
- Case "C"
- intHexa = 12
- Case "D"
- intHexa = 13
- Case "E"
- intHexa = 14
- Case "F"
- intHexa = 15
- Case Else
- HexToDez = 0
- Exit Function
- End Select
- dblDez = dblDez + intHexa * 16 ^ intHochzahl
- Next intHochzahl
- HexToDez = dblDez
- End Function
- Function DezToBinär(ByVal VarDez As Variant) As Double
- Dim dblDez As Double
- Dim intHochzahl As Integer
- Dim VarBin As Variant
- If IsNumeric(VarDez) Then
- dblDez = CDbl(VarDez)
- If dblDez >= 2 ^ 32 Then MsgBox "Zahl ist größer als 32 Bit": Exit Function
- Do
- If (dblDez And 2 ^ intHochzahl) Then
- VarBin = "1" & VarBin
- Else
- VarBin = "0" & VarBin
- End If
- intHochzahl = intHochzahl + 1
- Loop Until 2 ^ intHochzahl > dblDez
- Else
- MsgBox ("Bitte nur Zahlen"): Exit Function
- End If
- DezToBinär = VarBin
- End Function
- Function BinärToDez(ByVal VarBin As Variant) As Double
- Dim dblDez As Double
- Dim intHochzahl As Integer
- Dim intCounter As Integer
- If IsNumeric(VarBin) Then
- For intHochzahl = 0 To (Len(VarBin) - 1)
- intCounter = CInt((Mid(VarBin, Len(VarBin) - intHochzahl, 1)))
- If intCounter < 0 Or intCounter > 1 Then MsgBox ("Bitte nur 1 und 0"): Exit Function
- dblDez = dblDez + intCounter * 2 ^ intHochzahl
- Next intHochzahl
- Else
- MsgBox ("Bitte nur Zahlen"): Exit Function
- End If
- BinärToDez = dblDez
- End Function
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ValvePro“ ()