GO-AHEADの日記

GO-AHEADで出版した書籍の紹介をします

Re4:50歳から始めるラズベリーパイ-5

Re4:50歳から始めるラズベリーパイ

LibreOfficeVBAプログラミング入門

amazon kindleを出版しました。


 3.5 2進数、8進数、16進数
 2進数や8進数や16進数はVBAのプロパティ(命令)の中にはありません。しかし、エクセルやCalc内の関数には変換する関数が存在します。この関数を使うことができれば、10進数から2進数や8進数や16進数への変換は簡単にできます。このアプリケーションに付属しているワークシート関数を使うために次のようにプログラムします。

 

Option VBAsupport 1 'VBAと互換性

Sub Main

Dim x as Integer 'xを整数型として宣言

Range("A1").Value="x" 'Range("A1")にx表示
Range("A2").Value="2進数"
Range("A3").Value="8進数"
Range("A4").Value="16進数"

x=Range("B1").Value'xにRange("B1")の値を代入
'2進数へ変換
Range("B2").Value= Application.WorksheetFunction.DEC2BIN(Range("B1").Value)
'8進数へ変換
Range("B3").Value= Application.WorksheetFunction.DEC2OCT(Range("B1").Value) 
'16進数へ変換
Range("B4").Value= Application.WorksheetFunction.DEC2HEX(Range("B1").Value) 

End Sub

 

このように、2進数や8進数や16進数に変換できました。

f:id:GO-AHEAD:20200324144217p:plain

また、WorksheetFunction.は省略できます。

これは便利な機能です。ぜひ使えるようになりましょう。