サイトについて      連絡先   検索

VBA Hex 関数

はじめに

Excel VBA の Hex 関数を紹介します。

Hex 関数は、指定した数値を 16 進数の文字列にして返します。

16 進数を扱いたいときに使用します。

構文

Hex(数値)

名前 説明
引数「数値」Long 型の範囲の整数を指定します。
戻り値文字列型 (String)

16 進数は次のように 16 で桁が繰り上がります。

10 進数 16 進数
00
11
22
・・・
88
99
10A
11B
12C
13D
14E
15F
1610
1711

解説

引数「数値」に小数部を含む値を渡されたときは、自動で整数に偶数丸められてから変換されます。

数値以外や Long の範囲外の数値を渡されたときはエラーが発生します。

16 進数の数値をコードで書きたいときは&HFFのように、頭に &H を付けます。

16 進数を 10 進数に変換するには&HFFのように頭に &H を付けた文字列を「Val 関数」で変換します。

使用例


Dim s As String
 
s = Hex(9)
Debug.Print(s) ' 9

s = Hex(10)
Debug.Print(s) ' A

s = Hex(15)
Debug.Print(s) ' F

s = Hex(16)
Debug.Print(s) ' 10

s = Hex(255)
Debug.Print(s) ' FF

s = Hex(-1)
Debug.Print(s) ' FFFF

s = Hex(-2)
Debug.Print(s) ' FFFE

16 進数の値を入力する


Dim l As Long

l = &H9
Debug.Print(l) ' 9

l = &HA
Debug.Print(l) ' 10

l = &HFF
Debug.Print(l) ' 255

16 進数を 10 進数に変換する


Dim s As String
Dim l As Long

s = Hex(16) ' 10
l = Val("&H" & s)
Debug.Print (l) ' 10
 
s = Hex(255) ' FF
l = Val("&H" & s)
Debug.Print (l) ' 255

関連ページ