Excelでは、さまざまな進数(2進数・8進数・16進数) の変換を簡単に行える関数が用意されています。
その中でも、10進数を8進数に変換 できるのが DEC2OCT関数 です。
たとえば、通常の数値(10進数)をコンピューターでよく使われる 8進数表記 に変換したいときに活躍します。数値の仕組みやシステム処理を理解したい人にも役立つ関数です。
DEC2OCT関数とは?
DEC2OCT関数 は、指定した10進数を8進数に変換して返す関数です。
2進数・16進数と同じく、基数変換の一種です。
書式
=DEC2OCT(数値, [桁数])
引数の説明
- 数値(必須):変換したい10進数を指定します。
- 桁数(省略可):返す8進数の桁数を指定します。桁数が足りない場合は先頭に0が付きます。
使用例①:10進数を8進数に変換する
=DEC2OCT(B3)

10進数の「8」は、8進数で「10」になります。同様に、「15」は「17」、「64」は「100」と変換されます。Excelが自動で計算してくれるため、手動での変換は不要です。
8進数とは?
「0」「1」「2」……「7」「10」のように、桁の数字が「8」になると1つ上の位に繰り上がる(桁上がりする)数の数え方のことです。
普段使っている10進数では「9」の次が「10」になるのに対して、
8進数では「7」の次が「10」になります。
このように、8進数は「0〜7」までの8種類の数字だけで数を表す仕組みになっています。
使用例②:桁数を指定して出力する
=DEC2OCT(B3,4)

第2引数に桁数(この例では4)を指定すると、不足分を自動で0で埋めた結果が返されます。コード番号や固定桁での管理をしたい場合に便利です。
使用例③:負の数を8進数に変換する
=DEC2OCT(B3)

負の数を指定した場合、結果は常に10桁の形式で返され、マイナス符号は表示されません。
注意点
| 注意点 | 内容 |
|---|---|
| 小数は切り捨て | 小数点以下は無視され、整数部分のみ変換されます。 |
| 結果は文字列として返される | 計算ではなく表示用として扱われます。 |
関連関数
| 関数 | 説明 |
|---|---|
| DEC2BIN | 10進数を2進数に変換する |
| DEC2HEX | 10進数を16進数に変換する |
| OCT2DEC | 8進数を10進数に変換する |
| OCT2HEX | 8進数を16進数に変換する |
まとめ
DEC2OCT関数 は、10進数を簡単に8進数へ変換できる関数です。
桁数を指定すれば、コード形式やビット演算の学習などにも応用できます。
また、負の数にも対応しており、Excelが内部で自動的に2の補数として処理してくれるため、専門的な変換ルールを意識せずに使えるのが魅力です。Excelで進数変換を扱うときの基本関数として、ぜひ覚えておきましょう。
