|
10進数から2進数(8桁)への変換するマクロは以下の様に作りました。
Function Dec2Bin(ByVal dec As Currency) As String
'8BIT対応(通常)
Dim tmp As String
Do Until dec < 1
tmp = dec / 2 - dec \ 2
If tmp = 0 Then
bin = "0" & bin
Else
bin = "1" & bin
End If
dec = dec \ 2
Loop
'-----------------------------------------------------------
If Len(bin) < 8 Then 'binが8文字より少ない場合
Do Until Len(bin) = 8
bin = "0" & bin '8文字になるまで"0"を付ける
Loop
End If
'-----------------------------------------------------------
Dec2Bin = bin
End Function
セルでDec2Bin(Dec1,8)でいいのですが、
元のデータを変えてはいけないので、
セルのデータが「0」なら「00000000」と
マクロの中で変換し、判断したいのでこの様な
回りくどいプログラムを作ってしまいました。
ですので、最初の質問に戻りますが、ANDが判断しないのは何故かな?
と思ったのです。
|
|