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 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。
