Hex関数:数値を16進数に変換し文字列として取得する
Hex 関数は Excel VBA で用意されている関数の一つで、引数に指定した数値または数値を表す文字列を 16 進数に変換した値を文字列として取得することができます。ここでは Excel VBA における Hex 関数の使い方について解説します。
(Last modified: )
Hex関数の定義と使い方
Hex
関数は引数に指定した数値または数値を表す文字列を 16 進数に変換し文字列として返します。
引数に指定する数値を 16 進数に変換し文字列として返します。なお数値が整数でなかった場合には、一番近い整数にまるめられてから変換されます。
次の例を見てください。
Debug.Print Hex(24) '18 Debug.Print Hex(-9) 'FFF7 Debug.Print Hex("255") 'FF
Hex
関数は引数に指定した数値や数値を表す文字列を 16 進数に変換して文字列として返しますので、それぞれ "18" 、 "FFF7" 、 "FF" とイミディエイトウィンドウに出力されます。
それでは簡単なサンプルを作成して試してみます。
Option Explicit Sub Hex関数() Range("C3").Value = Hex(Range("B3").Value) Range("C4").Value = Hex(Range("B4").Value) Range("C5").Value = Hex(Range("B5").Value) Range("C6").Value = Hex(Range("B6").Value) End Sub
このプログラムを実行すると Hex
関数を使って B3 セルから B6 セルに入力されている数値を 16 進数に変換し、戻り値を C3 セルから C6 セルにそれぞれ代入します。
数値を16進数で表示する
Excel VBA のプログラムの中で数値を 16 進数で表示する場合は数値の先頭に &H
を付けてください。
&H3F
次の例を見てください。
Debug.Print 8 + 14 '22 Debug.Print &H8 + &HE '22
最初の式では 10 進数の 8 と 14 を加算しているので結果は 22 となります。次の式では 16 進数の 8 と E を加算しています。これは 10 進数に変換すると 8 と 14 の加算になるのでこちらも結果は 22 となります。
このように VBA のプログラムの中で数値のまま 16 進数で記述する場合は数値の先頭に &H
を付けてください。
-- --
Excel VBA における Hex 関数の使い方について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。