指定した数値を8進表記の文字列に変換する関数です。
関数仕様
構文 |
Oct(number) |
引数 |
引数 |
省略 |
説明 |
number |
不可 |
任意の有効な数値または文字列式を指定します。 |
|
戻り値 |
バリアント型(内部処理形式 String の Variant) |
この関数は、引数で指定した数値を 8 進表記の文字列に変換し、その値をバリアント型(内部処理形式 String の Variant)で返します。 指定できる数値の範囲は長整数型(Long)の範囲(-2,147,483,648 ~ 2,147,483,647)となります。 指定の数値が整数でない場合は、小数部分が偶数丸めによって処理されます。 なお、この関数は、引数に Null 値が含まれていた場合、エラーとはならず Null を返します。 また、値が未設定の変数が指定された場合は 0 を返します。
この関数は関数名に型宣言文字「$」を付けることで、戻り値を明示的に文字列型(String)にすることもできます。
strData = Oct$(10)
※ 型宣言文字「$」は関数名の最後に付けます
動作検証
条件 |
例 |
動作結果 |
引数に有効な数値を指定した場合
|
Oct(10)
|
12 |
引数に少数を含む数値を指定した場合
|
Oct(2.5)
|
2(※1) |
数値と評価できる文字列を指定した場合
|
Oct("12")
|
14 |
数値と評価できない文字列を指定した場合
|
Oct("test")
|
実行時エラー |
長整数型(Long)の範囲(-2,147,483,648 ~ 2,147,483,647)を
超える値を指定した場合
|
Oct(2147483648)
|
実行時エラー |
値が未設定の変数を指定した場合
|
Dim lngData As Long
Debug.Print Oct(lngData)
|
0(※2) |
Null 値を指定した場合
|
Oct(Null)
|
Null(※3) |
※1 小数部分は偶数丸めによって処理されます。
※2 値が未設定の変数を指定した場合、この関数は 0 を返します。
※3 この関数は Null 値を指定してもエラーとはなりません。
類似関数
この関数に類似する機能をもつ関数は、以下のものがあります。
関数 |
説明 |
Hex
|
指定した数値を16進表記の文字列に変換する。
|
サンプルコード
Sub Sample()
Debug.Print Oct(10.5) ' 文字列の「12」が返ります。
End Sub