Na pewno gdzieś robię jakiś lamerski błąd ale nie mogę go znaleźć. Mam funkcję która zamienia liczbę dziesiętną na dwójkową i sama jako taka działa prawidłowo. Niestety przy wywołaniu z parametrem nie widzę efektu działania. Pomóżcie bo zabrakło mi już pomysłów.
Function dec_to_bin(ByVal dec As Byte)
Dim dec, bb1, bb2, bb3, bb4, bb5, bb6, bb7, bb8 As Byte
Dim bin As String
If dec \ 128 > 0 Then
bb1 = 1
dec = (dec - 128)
Else: bb1 = 0
End If
If dec \ 64 > 0 Then
bb2 = 1
dec = (dec - 64)
Else: bb2 = 0
End If
If dec \ 32 > 0 Then
bb3 = 1
dec = (dec - 32)
Else: bb3 = 0
End If
If dec \ 16 > 0 Then
bb4 = 1
dec = (dec - 16)
Else: bb4 = 0
End If
If dec \ 8 > 0 Then
bb5 = 1
dec = (dec - 8)
Else: bb5 = 0
End If
If dec \ 4 > 0 Then
bb6 = 1
dec = (dec - 4)
Else: bb6 = 0
End If
If dec \ 2 > 0 Then
bb7 = 1
dec = (dec - 2)
Else: bb7 = 0
End If
If dec \ 1 > 0 Then bb8 = 1 Else bb8 = 0
bin = (bb1) & (bb2) & (bb3) & (bb4) & (bb5) & (bb6) & (bb7) & (bb8)
End Function
i przy wywołaniu bin=dec_to_bin (x)
nic się nie dzieje |