進数変換リンク

他のn進数からn進数への変換は以下をご参照ください。

VBAで2進数から8進数へ変換する
VBAで2進数から10進数へ変換する
VBAで2進数から16進数へ変換する
VBAで8進数から2進数へ変換する
VBAで8進数から10進数へ変換する
VBAで8進数から16進数に変換する
VBAで10進数から2進数へ変換する
VBAで10進数から8進数へ変換する
VBAで10進数から16進数へ変換する

10進数から8進数へ変換する考え方

10進数から8進数への変換は、Oct関数が用意されているためそれを使います。

10進数から2進数に変換して、その2進数を8進数に変換する方法などでも構いませんが、用意されている関数を使った方が処理速度は速いです。

10進数から8進数に変換する関数

第一引数に変換元となる10進数文字列を指定し、第二引数が変換後の8進数文字列が返却されます。

例えば第一引数に”37″とセットした場合は第二引数に”45″がセットされて関数が終了します。

事前に引数のチェックをしていますが、変換処理はOct関数をそのまま使っています。

使い方

10進数文字列をいくつか持つ配列を作って、ループでDecToOct関数を呼び出し、変換結果をイミディエイトウィンドウに出力するサンプルです。

実行結果
1 1
2 2
3 3
4 4
5 5
6 6
7 7
10 12
11 13
12 14
13 15
14 16
15 17
16 20
17 21
20 24
21 25
22 26
23 27
24 30
25 31
26 32
27 33
30 36
31 37
32 40
33 41
34 42
35 43
36 44
37 45
40 50
41 51
42 52
43 53
44 54
45 55