自作クラスを作らずにVBAでビット列操作をするためには通常 Long型 (4 byte) を使用する。ただし、Long型の32bitのうち、1bitは符号ビットなので、実質簡単に使えるのは31bitなのだ。
そこで、「bを使用ビット数」とする「ビット反転関数 bturn」は次のようになるかね。
function bturn(x as Long, b as Integer) as Long 'x : 反転させたい値 'b : 使うビット数(桁数) bturn = x Xor (2 ^ b -1) End Function続きを読む