<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>OCT2DEC &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/oct2dec/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Thu, 04 Jun 2026 14:27:12 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://mashukabu.com/wp-content/uploads/2022/04/cropped-site-icon-32x32.png</url>
	<title>OCT2DEC &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>スプレッドシートのOCT2DEC関数の使い方｜8進→10進</title>
		<link>https://mashukabu.com/spreadsheet-oct2dec-function/</link>
					<comments>https://mashukabu.com/spreadsheet-oct2dec-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 14:26:23 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[10進数]]></category>
		<category><![CDATA[8進数]]></category>
		<category><![CDATA[OCT2DEC]]></category>
		<category><![CDATA[エンジニアリング関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[基数変換]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6313</guid>

					<description><![CDATA[GoogleスプレッドシートのOCT2DEC関数の使い方を解説。8進数を10進数に変換する基本から、戻り値が数値型である利点を活かしたSUM/VLOOKUP活用、Linuxパーミッションの解析、ARRAYFORMULAでの一括変換、エラー対処法まで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「Linuxサーバーのアクセスログにずらっと並んでいるパーミッション値（755とか644）を、スプレッドシートで集計して権限の傾向を分析したい&#8230;」</p>



<p class="wp-block-paragraph">スプレッドシートで権限管理台帳やサーバー設定の記録を扱っていると、8進数のままでは並べ替えやSUM・VLOOKUPがうまく動かなくて困りますよね。電卓で1件ずつ10進数に変換するのは、件数が増えると大変です。</p>



<p class="wp-block-paragraph">そんなときに役立つのがGoogleスプレッドシートのOCT2DEC関数です。8進数の文字列を指定するだけで、10進数の数値に変換してくれますよ。</p>



<p class="wp-block-paragraph">OCT2BINやOCT2HEXと違い、桁数引数がなくシンプルな構文で使えます。しかも戻り値が数値型なので、そのままSUM関数やVLOOKUP検索に渡せますよ。Excelとも互換性があるため、ファイルをやり取りする現場でも安心ですね。</p>



<p class="wp-block-paragraph">この記事では、OCT2DEC関数の基本から戻り値の数値活用・Linuxパーミッション解析・エラー対処法まで解説します。ARRAYFORMULAでの一括変換や実務の活用例にも触れていきますよ。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-1" checked><label class="toc-title" for="toc-checkbox-1">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">OCT2DEC関数とは？</a><ol><li><a href="#toc2" tabindex="0">関数名の由来</a></li><li><a href="#toc3" tabindex="0">OCT2DEC関数でできること</a></li></ol></li><li><a href="#toc4" tabindex="0">OCT2DEC関数の書き方（構文と引数）</a><ol><li><a href="#toc5" tabindex="0">基本構文</a></li><li><a href="#toc6" tabindex="0">引数の説明</a></li><li><a href="#toc7" tabindex="0">第1引数：変換する8進数</a></li></ol></li><li><a href="#toc8" tabindex="0">8進数と10進数の対応表</a></li><li><a href="#toc9" tabindex="0">OCT2DEC関数の基本的な使い方</a><ol><li><a href="#toc10" tabindex="0">直接入力で変換する</a></li><li><a href="#toc11" tabindex="0">セル参照で変換する</a></li><li><a href="#toc12" tabindex="0">ARRAYFORMULAで一括変換する</a></li></ol></li><li><a href="#toc13" tabindex="0">戻り値は数値型（四則演算に直接使える）</a><ol><li><a href="#toc14" tabindex="0">SUM・AVERAGEで集計できる</a></li><li><a href="#toc15" tabindex="0">VLOOKUPの検索値として使える</a></li></ol></li><li><a href="#toc16" tabindex="0">実務活用例：Linuxパーミッションの解析</a><ol><li><a href="#toc17" tabindex="0">パーミッション3桁を1桁ずつ10進数に分解</a></li><li><a href="#toc18" tabindex="0">権限スコアの集計</a></li></ol></li><li><a href="#toc19" tabindex="0">負の数の変換（30ビット2の補数）</a><ol><li><a href="#toc20" tabindex="0">負の数の仕組み</a></li></ol></li><li><a href="#toc21" tabindex="0">エラーの種類と対処法</a><ol><li><a href="#toc22" tabindex="0">#NUM! エラー</a></li><li><a href="#toc23" tabindex="0">#VALUE! エラー</a></li><li><a href="#toc24" tabindex="0">エラー対処：IFERRORで包む</a></li><li><a href="#toc25" tabindex="0">エラー防止：正規表現で事前チェック</a></li></ol></li><li><a href="#toc26" tabindex="0">OCT2DEC関数とExcelの互換性</a></li><li><a href="#toc27" tabindex="0">OCT2シリーズ3関数の比較</a></li><li><a href="#toc28" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">OCT2DEC関数とは？</span></h2>



<p class="wp-block-paragraph">OCT2DEC関数（読み方: オクト・ツー・デック）は、<strong>8進数を10進数に変換するエンジニアリング関数</strong>です。Googleスプレッドシートに標準搭載されていて、追加設定なしで使えます。</p>



<p class="wp-block-paragraph">8進数は0〜7の数字（合計8種類）で数値を表す方法です。3ビットで1桁を表せるため、UnixやLinuxのファイルパーミッション（<code>chmod 755</code> など）でよく使われますね。スプレッドシートで権限値の集計や検索をしたい場面で、OCT2DEC関数を使えば10進数の数値に変換できますよ。</p>



<p class="wp-block-paragraph">たとえば <code>=OCT2DEC("54")</code> と入力すると、結果は「44」です。8進数の「54」（5×8+4=44）が10進数の44と同じだとわかります。</p>



<h3 class="wp-block-heading"><span id="toc2">関数名の由来</span></h3>



<p class="wp-block-paragraph">関数名を分解すると、次の意味になります。</p>



<ul class="wp-block-list"><li><strong>OCT</strong> = Octal（オクタル、8進数）</li><li><strong>2</strong> = to（〜へ）</li><li><strong>DEC</strong> = Decimal（デシマル、10進数）</li></ul>



<p class="wp-block-paragraph">つまり「OCTからDECへ」、8進数を10進数に変換するという意味がそのまま名前になっています。逆変換の<a href="https://mashukabu.com/spreadsheet-dec2oct-function/">DEC2OCT関数</a>とセットで覚えると便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc3">OCT2DEC関数でできること</span></h3>



<p class="wp-block-paragraph">OCT2DEC関数の特徴をまとめると、次のとおりです。</p>



<ul class="wp-block-list"><li>8進数を10進数の数値に変換する</li><li>変換できる範囲は -536,870,912〜536,870,911（30ビット符号付き整数）</li><li><strong>桁数引数がない</strong>（<a href="https://mashukabu.com/spreadsheet-oct2bin-function/">OCT2BIN関数</a>・OCT2HEX関数と異なる）</li><li><strong>戻り値は数値型</strong>（文字列ではない）→ SUM・AVERAGE・VLOOKUPにそのまま使える</li><li>ExcelのOCT2DEC関数と仕様が同じで、ファイル共有でもそのまま動作する</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>OCT2DEC関数は<a href="https://mashukabu.com/spreadsheet-dec2oct-function/">DEC2OCT関数</a>（10進→8進）と逆の変換を行います。また、<a href="https://mashukabu.com/spreadsheet-hex2dec-function/">HEX2DEC関数</a>（16進→10進）や<a href="https://mashukabu.com/spreadsheet-bin2dec-function/">BIN2DEC関数</a>（2進→10進）と合わせて、基数変換セットとして覚えておくと便利ですよ。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc4">OCT2DEC関数の書き方（構文と引数）</span></h2>



<h3 class="wp-block-heading"><span id="toc5">基本構文</span></h3>



<pre class="wp-block-code"><code>=OCT2DEC(数値)</code></pre>



<p class="wp-block-paragraph">カッコの中に、変換したい8進数を指定するだけです。OCT2BINやOCT2HEXと違い、<strong>桁数引数はありません</strong>。</p>



<h3 class="wp-block-heading"><span id="toc6">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>数値</td><td>必須</td><td>10進数に変換したい8進数（最大10文字）。-536,870,912〜536,870,911 に相当する値のみ有効</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">桁数を指定する第2引数はありません。シンプルに1つの引数だけで使えますよ。</p>



<h3 class="wp-block-heading"><span id="toc7">第1引数：変換する8進数</span></h3>



<p class="wp-block-paragraph">数値に指定できるのは、次の条件を満たす値です。</p>



<ul class="wp-block-list"><li>0〜7のみで構成された文字列（8や9は不可）</li><li>最大10文字（30ビット）まで</li><li>変換結果が -536,870,912〜536,870,911 の範囲に収まるもの<ul><li>正の数: 0〜3777777777（8進数、10進数では 0〜536,870,911）</li><li>負の数: 4000000000〜7777777777（30ビット2の補数表現）</li></ul></li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>WARNING</strong></p><p>OCT2DEC関数の引数には「8進数の文字列」または「8進数が入ったセル参照」を指定します。<code>=OCT2DEC(077)</code> のように先頭ゼロ付きの数値を直接書くと、スプレッドシートが先頭ゼロを落としてしまう場合があります。<code>=OCT2DEC("077")</code> のようにダブルクォートで文字列として指定するのが安全ですよ。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc8">8進数と10進数の対応表</span></h2>



<p class="wp-block-paragraph">OCT2DEC関数の動きをイメージしやすくするため、よく使われる8進数の対応を表にまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>8進数</th><th>10進数</th><th>備考</th></tr></thead><tbody><tr><td>0</td><td>0</td><td>ゼロ</td></tr><tr><td>7</td><td>7</td><td>1桁の最大値</td></tr><tr><td>10</td><td>8</td><td>2桁目に繰り上がり</td></tr><tr><td>17</td><td>15</td><td>&nbsp;</td></tr><tr><td>77</td><td>63</td><td>2桁の最大値</td></tr><tr><td>100</td><td>64</td><td>8²</td></tr><tr><td>755</td><td>493</td><td>Linuxパーミッション例</td></tr><tr><td>777</td><td>511</td><td>3桁の最大値（全権限）</td></tr><tr><td>3777777777</td><td>536,870,911</td><td>OCT2DEC の正の最大値</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">8進数の1桁は10進数の0〜7に対応します。2桁になると最大63（= 8²−1）、3桁になると最大511（= 8³−1）と、桁が増えるごとに8倍ずつ広がっていきますよ。</p>



<h2 class="wp-block-heading"><span id="toc9">OCT2DEC関数の基本的な使い方</span></h2>



<h3 class="wp-block-heading"><span id="toc10">直接入力で変換する</span></h3>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/03/spreadsheet-sumif-function_01_data_sample-table.png" alt="01 data sample table" /></figure>



<p class="wp-block-paragraph">もっともシンプルな使い方から見ていきましょう。</p>



<pre class="wp-block-code"><code>=OCT2DEC(&quot;7&quot;)</code></pre>



<p class="wp-block-paragraph">結果は「7」です。8進数の「7」は10進数でも7なので、そのままの値が返ります。</p>



<pre class="wp-block-code"><code>=OCT2DEC(&quot;10&quot;)</code></pre>



<p class="wp-block-paragraph">結果は「8」です。8進数の「10」は10進数で8（1×8+0）に当たります。</p>



<pre class="wp-block-code"><code>=OCT2DEC(&quot;755&quot;)</code></pre>



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/spreadsheet-oct2dec-function/02_formula_oct2dec-basic.png/">_images/spreadsheet-oct2dec-function/02_formula_oct2dec-basic.png</a></p>



<p class="wp-block-paragraph">結果は「493」です。各桁を計算すると、7×64 + 5×8 + 5 = 448+40+5 = 493 となります。</p>



<h3 class="wp-block-heading"><span id="toc11">セル参照で変換する</span></h3>



<p class="wp-block-paragraph">実務では、セルに入っている8進数を変換する場面が多いです。A2に「644」が入っている場合は次のように書きます。</p>



<pre class="wp-block-code"><code>=OCT2DEC(A2)</code></pre>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/03_result_oct2dec-basic.png" alt="03 result oct2dec basic" /></figure>



<p class="wp-block-paragraph">結果は「420」です。6×64 + 4×8 + 4 = 384+32+4 = 420 となります。</p>



<h3 class="wp-block-heading"><span id="toc12">ARRAYFORMULAで一括変換する</span></h3>



<p class="wp-block-paragraph">スプレッドシートならではの強みが、ARRAYFORMULA関数との組み合わせです。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(OCT2DEC(A2:A10))</code></pre>



<p class="wp-block-paragraph">A2からA10までの8進数データを、1つの数式で一気に10進数に変換できます。</p>



<figure class="wp-block-table"><table><thead><tr><th>A列: 8進数</th><th>B列: 数式</th><th>結果</th></tr></thead><tbody><tr><td>7</td><td>=ARRAYFORMULA(OCT2DEC(A2:A6))</td><td>7</td></tr><tr><td>10</td><td>↓</td><td>8</td></tr><tr><td>100</td><td>↓</td><td>64</td></tr><tr><td>755</td><td>↓</td><td>493</td></tr><tr><td>777</td><td>↓</td><td>511</td></tr></tbody></table></figure>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/04_result_oct2dec-arrayformula.png" alt="04 result oct2dec arrayformula" /></figure>



<h2 class="wp-block-heading"><span id="toc13">戻り値は数値型（四則演算に直接使える）</span></h2>



<p class="wp-block-paragraph">OCT2DEC関数の最大の特徴が、戻り値が<strong>数値型</strong>である点です。<a href="https://mashukabu.com/spreadsheet-oct2bin-function/">OCT2BIN関数</a>やOCT2HEX関数の戻り値がテキスト（文字列）であるのと異なります。</p>



<p class="wp-block-paragraph">数値型で返るため、そのまま計算やLOOKUP関数に使えますよ。</p>



<h3 class="wp-block-heading"><span id="toc14">SUM・AVERAGEで集計できる</span></h3>



<pre class="wp-block-code"><code>=SUM(ARRAYFORMULA(OCT2DEC(A2:A10)))</code></pre>



<p class="wp-block-paragraph">複数の8進数を一括変換して合計を出せます。たとえば A2:A10 にパーミッション値が並んでいれば、その合計値を一発で計算できますよ。</p>



<pre class="wp-block-code"><code>=AVERAGE(ARRAYFORMULA(OCT2DEC(A2:A10)))</code></pre>



<p class="wp-block-paragraph">平均値も同様に計算できます。</p>



<h3 class="wp-block-heading"><span id="toc15">VLOOKUPの検索値として使える</span></h3>



<p class="wp-block-paragraph">8進数の値で管理されている台帳から、10進数のIDテーブルを検索する場面では次のように書けます。</p>



<pre class="wp-block-code"><code>=VLOOKUP(OCT2DEC(A2), 権限マスタ!A:B, 2, FALSE)</code></pre>



<p class="wp-block-paragraph">A2の8進数パーミッション値を10進数に変換し、権限マスタ表の10進数列から対応する権限名を検索しています。</p>



<p class="wp-block-paragraph">OCT2BINやOCT2HEXで変換した場合はテキスト型なので、数値で管理されているマスタとは一致しません。OCT2DECを使うことで、このような数値前提のLOOKUPが自然に書けますよ。</p>



<h2 class="wp-block-heading"><span id="toc16">実務活用例：Linuxパーミッションの解析</span></h2>



<p class="wp-block-paragraph">OCT2DEC関数の代表的な実務活用が、Linuxサーバーのファイルパーミッション解析です。<code>755</code>や<code>644</code>のような3桁の8進数を、各桁ごとに分解して権限スコアを把握できます。</p>



<h3 class="wp-block-heading"><span id="toc17">パーミッション3桁を1桁ずつ10進数に分解</span></h3>



<p class="wp-block-paragraph">3桁のパーミッションは、左からオーナー・グループ・その他の3つの権限を表します。MID関数で1桁ずつ取り出してOCT2DECに渡すと、各カテゴリの権限スコアが10進数で見えますよ。</p>



<pre class="wp-block-code"><code>=OCT2DEC(MID(A2,1,1))   ← オーナー権限
=OCT2DEC(MID(A2,2,1))   ← グループ権限
=OCT2DEC(MID(A2,3,1))   ← その他権限</code></pre>



<p class="wp-block-paragraph">A2に「755」が入っている場合の結果です。</p>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>結果</th><th>意味</th></tr></thead><tbody><tr><td>=OCT2DEC(MID(&#8220;755&#8221;,1,1))</td><td>7</td><td>オーナー = 7（読＋書＋実行）</td></tr><tr><td>=OCT2DEC(MID(&#8220;755&#8221;,2,1))</td><td>5</td><td>グループ = 5（読＋実行）</td></tr><tr><td>=OCT2DEC(MID(&#8220;755&#8221;,3,1))</td><td>5</td><td>その他 = 5（読＋実行）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">8進数の各桁は、3ビットの権限フラグ（読4＋書2＋実行1）の合計です。たとえば「7」は4+2+1で全権限ありを意味しますよ。</p>



<h3 class="wp-block-heading"><span id="toc18">権限スコアの集計</span></h3>



<p class="wp-block-paragraph">パーミッション値を全体スコアとして集計したい場合は、3桁全体をOCT2DECに渡します。</p>



<pre class="wp-block-code"><code>=OCT2DEC(A2)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>パーミッション</th><th>10進スコア</th><th>意味</th></tr></thead><tbody><tr><td>777</td><td>511</td><td>全員フル権限（最も緩い）</td></tr><tr><td>755</td><td>493</td><td>オーナーフル、他は読＋実行</td></tr><tr><td>700</td><td>448</td><td>オーナーのみフル権限</td></tr><tr><td>644</td><td>420</td><td>オーナー読＋書、他は読のみ</td></tr><tr><td>600</td><td>384</td><td>オーナー読＋書のみ</td></tr><tr><td>400</td><td>256</td><td>オーナー読のみ（最も厳しい）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">10進数のスコアにすると、SUM・AVERAGE・並べ替えで「セキュリティが緩いファイルランキング」のような分析ができますよ。</p>



<h2 class="wp-block-heading"><span id="toc19">負の数の変換（30ビット2の補数）</span></h2>



<p class="wp-block-paragraph">OCT2DEC関数で負の数に相当する8進数を変換すると、負の10進数が返されます。</p>



<h3 class="wp-block-heading"><span id="toc20">負の数の仕組み</span></h3>



<p class="wp-block-paragraph">30ビット（10桁の8進数）の最上位ビットが1の場合、2の補数表現として負の数と解釈されます。8進数では、最上位の1桁が4以上（4・5・6・7）の場合に最上位ビット=1となり、負の数になりますよ。</p>



<pre class="wp-block-code"><code>=OCT2DEC(&quot;7777777777&quot;)</code></pre>



<p class="wp-block-paragraph">結果は「-1」です。30ビットすべてが1は、2の補数で -1 を表します。</p>



<pre class="wp-block-code"><code>=OCT2DEC(&quot;4000000000&quot;)</code></pre>



<p class="wp-block-paragraph">結果は「-536870912」です。OCT2DECの最小値（負の最大）に当たります。</p>



<figure class="wp-block-table"><table><thead><tr><th>入力（8進数）</th><th>結果（10進数）</th><th>備考</th></tr></thead><tbody><tr><td>7777777777</td><td>-1</td><td>30ビット全て1</td></tr><tr><td>7777777533</td><td>-165</td><td>任意の負の値</td></tr><tr><td>4000000000</td><td>-536,870,912</td><td>最小値</td></tr><tr><td>3777777777</td><td>536,870,911</td><td>最大値（正の最大）</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>通常の業務（パーミッション解析など）で扱う8進数は3〜4桁で正の数なので、負の数の変換が必要になる場面はほとんどありません。符号付きレジスタ値を扱う特殊なシステム管理でだけ意識すれば大丈夫ですよ。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc21">エラーの種類と対処法</span></h2>



<h3 class="wp-block-heading"><span id="toc22">#NUM! エラー</span></h3>



<p class="wp-block-paragraph">次のいずれかに当てはまると #NUM! エラーになります。</p>



<ul class="wp-block-list"><li>0〜7以外の文字を含む8進数を指定した（8、9、A〜Fなど）</li><li>入力が10文字を超えた</li><li>変換結果が -536,870,912〜536,870,911 の範囲外</li></ul>



<pre class="wp-block-code"><code>=OCT2DEC(&quot;89&quot;)        → #NUM!（8と9は8進数では無効）
=OCT2DEC(&quot;12345678901&quot;) → #NUM!（11文字は範囲外）</code></pre>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/05_error_num.png" alt="05 error num" /></figure>



<h3 class="wp-block-heading"><span id="toc23">#VALUE! エラー</span></h3>



<p class="wp-block-paragraph">引数に数値や論理値など、文字列でない型を直接指定した場合に #VALUE! エラーになる場合があります。セル参照では基本的に発生しません。</p>



<h3 class="wp-block-heading"><span id="toc24">エラー対処：IFERRORで包む</span></h3>



<p class="wp-block-paragraph">変換対象のデータが信頼できない場合は、IFERRORで包んでおくと安心です。</p>



<pre class="wp-block-code"><code>=IFERROR(OCT2DEC(A2), &quot;変換エラー&quot;)</code></pre>



<p class="wp-block-paragraph">A2に無効な8進数が入っていた場合でも、「変換エラー」と表示して処理が止まりません。</p>



<h3 class="wp-block-heading"><span id="toc25">エラー防止：正規表現で事前チェック</span></h3>



<p class="wp-block-paragraph">大量データを処理する前に、8進数として有効かどうかを確認しておくと安心です。</p>



<pre class="wp-block-code"><code>=REGEXMATCH(A2, &quot;^[0-7]+$&quot;)</code></pre>



<p class="wp-block-paragraph">TRUEならOCT2DECで変換できる可能性が高いです。8や9を含む入力を事前にはじけますよ。</p>



<h2 class="wp-block-heading"><span id="toc26">OCT2DEC関数とExcelの互換性</span></h2>



<p class="wp-block-paragraph">GoogleスプレッドシートのOCT2DEC関数は、ExcelのOCT2DEC関数と仕様が同じです。構文・引数・変換ルール・エラー条件のすべてが一致しています。</p>



<p class="wp-block-paragraph">ExcelファイルをGoogleスプレッドシートで開いた場合でも、OCT2DEC関数はそのまま動作します。逆にスプレッドシートで作成した数式をExcelで開いても問題ありませんよ。</p>



<p class="wp-block-paragraph">Excel側の使い方を確認したい場合は、<a href="https://mashukabu.com/excel-function-howto-use-oct2dec/">ExcelのOCT2DEC関数</a>の記事も参考にしてくださいね。</p>



<h2 class="wp-block-heading"><span id="toc27">OCT2シリーズ3関数の比較</span></h2>



<p class="wp-block-paragraph">OCTシリーズの変換関数（OCT2から始まる）を比較すると、変換先と扱える範囲が異なります。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>変換先</th><th>有効範囲（10進数換算）</th><th>桁数引数</th><th>戻り値型</th></tr></thead><tbody><tr><td>OCT2BIN</td><td>2進数</td><td>-512〜511</td><td>あり</td><td>テキスト</td></tr><tr><td>OCT2HEX</td><td>16進数</td><td>-536,870,912〜536,870,911</td><td>あり</td><td>テキスト</td></tr><tr><td>OCT2DEC</td><td>10進数</td><td>-536,870,912〜536,870,911</td><td><strong>なし</strong></td><td><strong>数値</strong></td></tr></tbody></table></figure>



<p class="wp-block-paragraph">OCT2DECだけが桁数引数を持たず、戻り値も数値型です。四則演算・VLOOKUP・集計関数に直接渡せるのはOCT2DECだけなので、変換後に計算が必要な場面ではOCT2DECを使いましょう。</p>



<p class="wp-block-paragraph">OCT2BINやOCT2HEXを使って変換後に計算したい場合は、さらにBIN2DEC・HEX2DEC関数を挟む必要があります。</p>



<h2 class="wp-block-heading"><span id="toc28">まとめ</span></h2>



<p class="wp-block-paragraph">OCT2DEC関数は、8進数を10進数に変換するエンジニアリング関数です。</p>



<ul class="wp-block-list"><li>基本構文: <code>=OCT2DEC(数値)</code> ← 引数は1つだけ</li><li>有効範囲: -536,870,912〜536,870,911（正: 0〜3777777777）</li><li>桁数引数なし（OCT2BIN・OCT2HEXとの違い）</li><li>戻り値は数値型 → SUM・VLOOKUP・四則演算に直接使える</li><li>Linuxパーミッション解析や権限スコア集計などの実務で活躍</li></ul>



<p class="wp-block-paragraph"><code>=OCT2DEC("755")</code> → 493 のように、8進数を10進数に変換してそのまま計算に使えるのがOCT2DECの最大の強みですよ。</p>



<p class="wp-block-paragraph">逆変換には<a href="https://mashukabu.com/spreadsheet-dec2oct-function/">DEC2OCT関数</a>を使います。また<a href="https://mashukabu.com/spreadsheet-hex2dec-function/">HEX2DEC関数</a>（16進→10進）や<a href="https://mashukabu.com/spreadsheet-bin2dec-function/">BIN2DEC関数</a>（2進→10進）、姉妹関数の<a href="https://mashukabu.com/spreadsheet-oct2bin-function/">OCT2BIN関数</a>（8進→2進）と組み合わせることで、さまざまな基数変換をスプレッドシート上で完結できますよ。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-oct2dec-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのOCT2DEC関数の使い方｜8進数を10進数に一発変換する方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-oct2dec/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-oct2dec/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Tue, 09 Aug 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[10進数]]></category>
		<category><![CDATA[8進数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[OCT2DEC]]></category>
		<category><![CDATA[エンジニアリング関数]]></category>
		<category><![CDATA[進数変換]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=2522</guid>

					<description><![CDATA[ExcelのOCT2DEC関数で8進数を10進数に変換する方法を実例付きで解説。構文・引数のルール、#NUM!・#VALUE!エラーの原因と対処法、Unixパーミッション集計の実例、OCT2BIN・OCT2HEXとの使い分けまで網羅します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「8進数のデータを10進数に変換したいけど、手計算は面倒…」</p>



<p class="wp-block-paragraph">Excelで8進数を扱う場面は意外とあります。Unixのファイルパーミッション（755や644など）の集計や、IoTセンサーデータの変換が代表例です。</p>



<p class="wp-block-paragraph">でも8進数から10進数への手計算は、桁ごとに8のべき乗をかけて合計する作業が必要です。桁数が増えるほどミスしやすいですよね。</p>



<p class="wp-block-paragraph">そこで便利なのが<strong>OCT2DEC関数</strong>です。Excelで8進数を入力するだけで、10進数に一発変換できます。この記事では、OCT2DEC関数の使い方からエラー対策、関連関数との使い分けまで解説します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">OCT2DEC関数とは？読み方と基本概要</a><ol><li><a href="#toc2" tabindex="0">「OCT→DEC」命名規則と読み方</a></li><li><a href="#toc3" tabindex="0">使う場面：Unixパーミッション・IoTデータ・進数検算</a></li><li><a href="#toc4" tabindex="0">対応バージョン一覧</a></li></ol></li><li><a href="#toc5" tabindex="0">OCT2DEC関数の構文と引数</a><ol><li><a href="#toc6" tabindex="0">構文は1引数のみ——桁数引数は存在しない</a></li><li><a href="#toc7" tabindex="0">引数「数値」の制約ルール（0〜7・最大10文字・範囲早見表）</a></li></ol></li><li><a href="#toc8" tabindex="0">基本の使い方と実例</a><ol><li><a href="#toc9" tabindex="0">直接入力・セル参照で変換する</a></li><li><a href="#toc10" tabindex="0">よく使う変換値早見表</a></li><li><a href="#toc11" tabindex="0">負の8進数（2の補数形式）を変換する</a></li></ol></li><li><a href="#toc12" tabindex="0">実務活用：Unixファイルパーミッション集計ワークフロー</a><ol><li><a href="#toc13" tabindex="0">主要パーミッション値の10進数早見表</a></li><li><a href="#toc14" tabindex="0">IFERRORと組み合わせた一括変換シートの作り方</a></li></ol></li><li><a href="#toc15" tabindex="0">エラーの原因と対処法（#NUM!・#VALUE!）</a><ol><li><a href="#toc16" tabindex="0">#NUM!エラーの3パターン</a></li><li><a href="#toc17" tabindex="0">#VALUE!エラーのパターン</a></li><li><a href="#toc18" tabindex="0">エラー早見表</a></li></ol></li><li><a href="#toc19" tabindex="0">OCT2BIN・OCT2DEC・OCT2HEX——3関数の選択ガイド</a><ol><li><a href="#toc20" tabindex="0">変換先ごとの使い分け表</a></li><li><a href="#toc21" tabindex="0">OCT2DECだけ桁数引数がない理由</a></li></ol></li><li><a href="#toc22" tabindex="0">DEC2OCTとの逆変換ペアで使う</a><ol><li><a href="#toc23" tabindex="0">往復変換で入力値を検算する方法</a></li></ol></li><li><a href="#toc24" tabindex="0">16進数関連の変換関数との組み合わせ</a></li><li><a href="#toc25" tabindex="0">Excelの進数変換12関数シリーズ一覧</a></li><li><a href="#toc26" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">OCT2DEC関数とは？読み方と基本概要</span></h2>



<p class="wp-block-paragraph">OCT2DEC関数は、<strong>8進数を10進数に変換するExcelの関数</strong>です。</p>



<p class="wp-block-paragraph">8進数は0から7の数字だけで数を表す方法です。10進数は普段の生活で使うおなじみの表記ですね。OCT2DEC関数を使えば、この変換を自動で行えます。</p>



<h3 class="wp-block-heading"><span id="toc2">「OCT→DEC」命名規則と読み方</span></h3>



<p class="wp-block-paragraph">読み方は「オクタル・ツー・デシマル」です。</p>



<ul class="wp-block-list"><li><strong>OCT</strong> = Octal（オクタル、8進数）</li><li><strong>2</strong> = to（〜へ）</li><li><strong>DEC</strong> = Decimal（デシマル、10進数）</li></ul>



<p class="wp-block-paragraph">「8進数から10進数へ」という意味です。Excelの進数変換関数は、すべてこの命名規則に従います。たとえば<a href="https://mashukabu.com/excel-function-howto-use-bin2dec/">BIN2DEC関数</a>なら「2進数から10進数へ」です。関数名がそのまま機能を表しているので覚えやすいですね。</p>



<h3 class="wp-block-heading"><span id="toc3">使う場面：Unixパーミッション・IoTデータ・進数検算</span></h3>



<p class="wp-block-paragraph">OCT2DEC関数は、次のような場面で活躍します。</p>



<ul class="wp-block-list"><li><strong>Unixファイルパーミッション</strong>の数値処理（755や644を集計する）</li><li><strong>IoTセンサーや通信機器</strong>からの8進数データを変換する</li><li><strong>進数変換の学習や検算</strong>に使う</li></ul>



<p class="wp-block-paragraph">特にファイルパーミッションの数値処理は実務でよくある用途です。サーバー管理の一覧表を作るときに重宝します。</p>



<h3 class="wp-block-heading"><span id="toc4">対応バージョン一覧</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>バージョン</th><th>対応状況</th></tr></thead><tbody><tr><td>Excel 2007以降</td><td>標準搭載（そのまま使える）</td></tr><tr><td>Excel 2003以前</td><td>分析ツールアドインの有効化が必要</td></tr><tr><td>Microsoft 365</td><td>対応（Windows / Mac / Web）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">現在使われているほとんどのExcelで、追加設定なしで利用できます。</p>



<h2 class="wp-block-heading"><span id="toc5">OCT2DEC関数の構文と引数</span></h2>



<h3 class="wp-block-heading"><span id="toc6">構文は1引数のみ——桁数引数は存在しない</span></h3>



<p class="wp-block-paragraph">基本構文は次のとおりです。</p>



<pre class="wp-block-code"><code>=OCT2DEC(数値)</code></pre>



<p class="wp-block-paragraph">引数は「数値」の1つだけです。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-oct2bin/">OCT2BIN関数</a>や<a href="https://mashukabu.com/excel-function-howto-use-oct2hex/">OCT2HEX関数</a>には「桁数」引数がありますが、OCT2DEC関数にはありません。変換先が10進数の場合、結果は一意に決まるため桁数の指定が不要だからです。</p>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>数値</td><td>必須</td><td>10進数に変換したい8進数を指定する</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc7">引数「数値」の制約ルール（0〜7・最大10文字・範囲早見表）</span></h3>



<p class="wp-block-paragraph">引数「数値」には次のルールがあります。</p>



<ul class="wp-block-list"><li>使える文字は<strong>0から7のみ</strong>（8・9やアルファベットは不可）</li><li>最大<strong>10文字</strong>まで指定できる（30ビット分）</li><li>直接入力でもセル参照でも指定できる</li></ul>



<p class="wp-block-paragraph">入力できる値の範囲を早見表にまとめます。</p>



<figure class="wp-block-table"><table><thead><tr><th>区分</th><th>8進数の範囲</th><th>10進数での値</th></tr></thead><tbody><tr><td>正の数</td><td>0 〜 3777777777</td><td>0 〜 536,870,911</td></tr><tr><td>負の数</td><td>4000000000 〜 7777777777</td><td>-536,870,912 〜 -1</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">正の最大値は約5.4億、負の最小値は約-5.4億です。実務で扱う値はほとんどこの範囲に収まります。</p>



<h2 class="wp-block-heading"><span id="toc8">基本の使い方と実例</span></h2>



<h3 class="wp-block-heading"><span id="toc9">直接入力・セル参照で変換する</span></h3>



<p class="wp-block-paragraph">まずはセルに直接値を入力する方法です。</p>



<pre class="wp-block-code"><code>=OCT2DEC(54)</code></pre>



<p class="wp-block-paragraph">結果は「44」です。8進数の54は10進数の44に対応します。</p>



<p class="wp-block-paragraph">変換の仕組みを確認しましょう。各桁に8のべき乗をかけて合計します。</p>



<figure class="wp-block-table"><table><thead><tr><th>桁</th><th>数字</th><th>計算</th><th>結果</th></tr></thead><tbody><tr><td>8の位（8の1乗）</td><td>5</td><td>5 × 8</td><td>40</td></tr><tr><td>1の位（8の0乗）</td><td>4</td><td>4 × 1</td><td>4</td></tr><tr><td><strong>合計</strong></td><td>&nbsp;</td><td>&nbsp;</td><td><strong>44</strong></td></tr></tbody></table></figure>



<p class="wp-block-paragraph">セル参照でも同様に使えます。A1に「175」が入っているとします。</p>



<pre class="wp-block-code"><code>=OCT2DEC(A1)</code></pre>



<p class="wp-block-paragraph">結果は「125」です。1×64 + 7×8 + 5×1 = 125 で検算もOKですね。参照先の値を変えれば結果も自動で更新されます。</p>



<h3 class="wp-block-heading"><span id="toc10">よく使う変換値早見表</span></h3>



<p class="wp-block-paragraph">実務でよく登場する値をまとめておきます。</p>



<figure class="wp-block-table"><table><thead><tr><th>入力（8進数）</th><th>出力（10進数）</th><th>用途・メモ</th></tr></thead><tbody><tr><td>7</td><td>7</td><td>1桁の最大値</td></tr><tr><td>10</td><td>8</td><td>2桁の最小値（8進数の繰り上がり）</td></tr><tr><td>100</td><td>64</td><td>3桁の最小値</td></tr><tr><td>644</td><td>420</td><td>Unixパーミッション（rw-r&#8211;r&#8211;）</td></tr><tr><td>755</td><td>493</td><td>Unixパーミッション（rwxr-xr-x）</td></tr><tr><td>777</td><td>511</td><td>Unixパーミッション（rwxrwxrwx）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">755や644はサーバー管理で頻出する値です。OCT2DEC関数で10進数に変換しておけば、SUM関数などで集計できますよ。</p>



<h3 class="wp-block-heading"><span id="toc11">負の8進数（2の補数形式）を変換する</span></h3>



<p class="wp-block-paragraph">OCT2DEC関数は「2の補数」（コンピュータで負の数を表す仕組み）にも対応しています。</p>



<p class="wp-block-paragraph">判定ルールはシンプルです。8進数が10桁のとき、<strong>最上位桁が4以上なら負の数</strong>になります。</p>



<pre class="wp-block-code"><code>=OCT2DEC(7777777777)</code></pre>



<p class="wp-block-paragraph">結果は「-1」です。最上位桁が「7」なので負の値です。</p>



<pre class="wp-block-code"><code>=OCT2DEC(4000000000)</code></pre>



<p class="wp-block-paragraph">結果は「-536,870,912」です。これが負の最小値です。</p>



<p class="wp-block-paragraph">最上位桁ごとの正負判定を表にまとめます。</p>



<figure class="wp-block-table"><table><thead><tr><th>最上位桁</th><th>正負</th><th>8進数の例</th><th>10進数の結果</th></tr></thead><tbody><tr><td>0〜3</td><td>正</td><td>3777777777</td><td>536,870,911</td></tr><tr><td>4〜7</td><td>負</td><td>4000000000</td><td>-536,870,912</td></tr><tr><td>7</td><td>負</td><td>7777777777</td><td>-1</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>「-54」のようにマイナス記号を付ける書き方はできません。負の数は2の補数形式で指定します。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc12">実務活用：Unixファイルパーミッション集計ワークフロー</span></h2>



<p class="wp-block-paragraph">OCT2DEC関数の実務活用として、Unixファイルパーミッションの集計シートを作る方法を紹介します。</p>



<h3 class="wp-block-heading"><span id="toc13">主要パーミッション値の10進数早見表</span></h3>



<p class="wp-block-paragraph">Unixでは各桁の数字が権限を表します。各桁は「読み取り(4)＋書き込み(2)＋実行(1)」の合計です。</p>



<figure class="wp-block-table"><table><thead><tr><th>8進数</th><th>パーミッション表記</th><th>10進数（OCT2DEC）</th><th>用途</th></tr></thead><tbody><tr><td>755</td><td>rwxr-xr-x</td><td>493</td><td>実行ファイル・ディレクトリの標準</td></tr><tr><td>644</td><td>rw-r&#8211;r&#8211;</td><td>420</td><td>一般ファイルの標準</td></tr><tr><td>777</td><td>rwxrwxrwx</td><td>511</td><td>全権限（テスト用）</td></tr><tr><td>600</td><td>rw&#8212;&#8212;-</td><td>384</td><td>秘密鍵ファイルなど</td></tr><tr><td>700</td><td>rwx&#8212;&#8212;</td><td>448</td><td>個人ディレクトリ</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">たとえば755の意味は次のとおりです。7（所有者: rwx）、5（グループ: r-x）、5（その他: r-x）。</p>



<h3 class="wp-block-heading"><span id="toc14">IFERRORと組み合わせた一括変換シートの作り方</span></h3>



<p class="wp-block-paragraph">サーバーから取得したパーミッション一覧を、まとめて変換するシートを作りましょう。A列に8進数のパーミッション値が並んでいるとします。</p>



<p class="wp-block-paragraph">B列に次の数式を入力して、下方向にコピーします。</p>



<pre class="wp-block-code"><code>=IFERROR(OCT2DEC(A1), &quot;入力エラー&quot;)</code></pre>



<p class="wp-block-paragraph">IFERROR関数（エラー時に代わりの値を返す関数）と組み合わせれば、不正な値が混ざってもシートが壊れません。「入力エラー」と表示されたセルだけ確認すれば済みますよ。</p>



<p class="wp-block-paragraph">さらに、C列で変換結果をチェックする数式を追加すると便利です。</p>



<pre class="wp-block-code"><code>=IF(ISNUMBER(B1), &quot;変換OK&quot;, &quot;要確認&quot;)</code></pre>



<p class="wp-block-paragraph">これで、変換結果の一覧とエラー箇所が一目でわかるシートが完成します。</p>



<h2 class="wp-block-heading"><span id="toc15">エラーの原因と対処法（#NUM!・#VALUE!）</span></h2>



<p class="wp-block-paragraph">OCT2DEC関数で発生するエラーは、#NUM!と#VALUE!の2種類です。それぞれの原因と対処法を解説します。</p>



<h3 class="wp-block-heading"><span id="toc16">#NUM!エラーの3パターン</span></h3>



<p class="wp-block-paragraph">#NUM!エラーが最も頻発します。原因は3つに分類できます。</p>



<h4 class="wp-block-heading">パターン1：8・9やアルファベットを含む</h4>



<p class="wp-block-paragraph">最も多いパターンです。8進数では0〜7の数字しか使えません。</p>



<pre class="wp-block-code"><code>=OCT2DEC(89)</code></pre>



<p class="wp-block-paragraph">この数式は#NUM!エラーになります。「8」も「9」も8進数の有効な文字ではないためです。</p>



<p class="wp-block-paragraph"><strong>対処法</strong>: 入力値に0〜7以外の文字がないか確認しましょう。</p>



<h4 class="wp-block-heading">パターン2：10文字超の入力</h4>



<p class="wp-block-paragraph">入力は最大10文字までという制限があります。</p>



<pre class="wp-block-code"><code>=OCT2DEC(12345678901)</code></pre>



<p class="wp-block-paragraph">11文字なので#NUM!エラーです。</p>



<p class="wp-block-paragraph"><strong>対処法</strong>: LEN関数（文字数を返す関数）で事前チェックできます。<code>=LEN(A1)<=10</code> がTRUEなら入力可能です。</p>



<h4 class="wp-block-heading">パターン3：空白・テキスト値の混入</h4>



<p class="wp-block-paragraph">セル参照先が空白や文字列の場合もエラーになります。</p>



<pre class="wp-block-code"><code>=OCT2DEC(&quot;ABC&quot;)</code></pre>



<p class="wp-block-paragraph">数値として認識できないため、エラーが発生します。</p>



<p class="wp-block-paragraph"><strong>対処法</strong>: ISNUMBER関数やISBLANK関数で事前に値を検証しましょう。大量データの一括変換では、前述のIFERROR関数との組み合わせが効果的です。</p>



<h3 class="wp-block-heading"><span id="toc17">#VALUE!エラーのパターン</span></h3>



<p class="wp-block-paragraph">#VALUE!エラーは、引数のデータ型が不正な場合に発生します。</p>



<pre class="wp-block-code"><code>=OCT2DEC(TRUE)</code></pre>



<p class="wp-block-paragraph">論理値（TRUE/FALSE）を渡すと#VALUE!エラーになります。数値や文字列として認識できない型が原因です。</p>



<p class="wp-block-paragraph"><strong>対処法</strong>: セル参照先のデータ型を確認しましょう。TYPE関数（セルのデータ型を数値で返す関数）を使えば、<code>=TYPE(A1)</code> が「1」（数値）か「2」（文字列）であることを事前にチェックできますよ。</p>



<h3 class="wp-block-heading"><span id="toc18">エラー早見表</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>例</th><th>対処法</th></tr></thead><tbody><tr><td>#NUM!</td><td>8・9やアルファベットを含む</td><td><code>=OCT2DEC(89)</code></td><td>0〜7のみか確認</td></tr><tr><td>#NUM!</td><td>10文字超の入力</td><td><code>=OCT2DEC(12345678901)</code></td><td>LEN関数で文字数チェック</td></tr><tr><td>#NUM!</td><td>空白・無効な値</td><td><code>=OCT2DEC("")</code></td><td>ISBLANK関数で事前検証</td></tr><tr><td>#VALUE!</td><td>論理値など不正な型</td><td><code>=OCT2DEC(TRUE)</code></td><td>TYPE関数でデータ型確認</td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc19">OCT2BIN・OCT2DEC・OCT2HEX——3関数の選択ガイド</span></h2>



<p class="wp-block-paragraph">Excelには「8進数から変換する」関数が3つあります。変換先が異なるだけで、入力ルールは共通です。</p>



<h3 class="wp-block-heading"><span id="toc20">変換先ごとの使い分け表</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>変換方向</th><th>桁数引数</th><th>正の入力上限</th><th>主な用途</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/excel-function-howto-use-oct2bin/">OCT2BIN</a></td><td>8進数→2進数</td><td>あり</td><td>777（=511）</td><td>ビットパターンの分析</td></tr><tr><td><strong>OCT2DEC</strong> ※この記事</td><td>8進数→10進数</td><td><strong>なし</strong></td><td>3777777777（=536,870,911）</td><td>集計・計算用の変換</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-oct2hex/">OCT2HEX</a></td><td>8進数→16進数</td><td>あり</td><td>3777777777（=536,870,911）</td><td>メモリアドレス・カラーコード</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">同じ8進数「53」を3つの関数で変換した例です。</p>



<pre class="wp-block-code"><code>=OCT2BIN(53)   → 101011
=OCT2DEC(53)   → 43
=OCT2HEX(53)   → 2B</code></pre>



<p class="wp-block-paragraph">OCT2BINだけ正の入力上限が777（10進数で511）と小さい点に注意してください。大きな値を2進数に変換したい場合は、OCT2DECで10進数に変換してから<a href="https://mashukabu.com/excel-function-howto-use-dec2bin/">DEC2BIN関数</a>を使う方法もあります。同様に、10進数から16進数への変換なら<a href="https://mashukabu.com/excel-function-howto-use-dec2hex/">DEC2HEX関数</a>が使えますよ。</p>



<h3 class="wp-block-heading"><span id="toc21">OCT2DECだけ桁数引数がない理由</span></h3>



<p class="wp-block-paragraph">OCT2BINとOCT2HEXには「桁数」引数があります。しかしOCT2DECにはありません。</p>



<p class="wp-block-paragraph">理由は、10進数では先頭のゼロに意味がないからです。2進数や16進数では「00101011」「002B」のように桁をそろえる場面があります。しかし10進数で「0043」と書く必要はありませんよね。そのため桁数引数が不要なのです。</p>



<h2 class="wp-block-heading"><span id="toc22">DEC2OCTとの逆変換ペアで使う</span></h2>



<p class="wp-block-paragraph">OCT2DEC関数の逆方向の変換を行うのが<a href="https://mashukabu.com/excel-function-howto-use-dec2oct/">DEC2OCT関数</a>です。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>変換方向</th><th>引数</th></tr></thead><tbody><tr><td><strong>OCT2DEC</strong></td><td>8進数 → 10進数</td><td>数値（1つのみ）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-dec2oct/">DEC2OCT</a></td><td>10進数 → 8進数</td><td>数値, [桁数]（2つ）</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc23">往復変換で入力値を検算する方法</span></h3>



<p class="wp-block-paragraph">両方の関数を組み合わせると、変換結果の検算ができます。</p>



<pre class="wp-block-code"><code>=DEC2OCT(OCT2DEC(A1))</code></pre>



<p class="wp-block-paragraph">この数式はA1の値を「8進数→10進数→8進数」と往復変換します。元の値と一致すれば、変換が正しいことを確認できますよ。</p>



<p class="wp-block-paragraph">逆方向の検算も同様です。B1に10進数が入っているとします。</p>



<pre class="wp-block-code"><code>=OCT2DEC(DEC2OCT(B1))</code></pre>



<p class="wp-block-paragraph">「10進数→8進数→10進数」と変換して元に戻ります。B1の値と一致すれば検算OKです。</p>



<p class="wp-block-paragraph">大量データを変換するときの品質チェックに役立ちます。IF関数と組み合わせれば、不一致のセルを自動検出できますよ。</p>



<h2 class="wp-block-heading"><span id="toc24">16進数関連の変換関数との組み合わせ</span></h2>



<p class="wp-block-paragraph">8進数を直接16進数に変換するには<a href="https://mashukabu.com/excel-function-howto-use-oct2hex/">OCT2HEX関数</a>を使います。しかし、OCT2DECで10進数に変換してから別の進数に変換する方法も便利です。</p>



<p class="wp-block-paragraph">10進数を経由する変換ルートをまとめます。</p>



<figure class="wp-block-table"><table><thead><tr><th>変換ルート</th><th>使う関数</th><th>例（8進数「53」の場合）</th></tr></thead><tbody><tr><td>8進数→10進数→16進数</td><td>OCT2DEC → <a href="https://mashukabu.com/excel-function-howto-use-dec2hex/">DEC2HEX</a></td><td>53 → 43 → 2B</td></tr><tr><td>8進数→10進数→2進数</td><td>OCT2DEC → <a href="https://mashukabu.com/excel-function-howto-use-dec2bin/">DEC2BIN</a></td><td>53 → 43 → 101011</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">逆方向の変換もあります。16進数から他の進数に変換したい場合は、<a href="https://mashukabu.com/excel-function-howto-use-hex2dec/">HEX2DEC関数</a>で10進数にしてから目的の進数に変換します。<a href="https://mashukabu.com/excel-function-howto-use-hex2bin/">HEX2BIN関数</a>や<a href="https://mashukabu.com/excel-function-howto-use-hex2oct/">HEX2OCT関数</a>を使えば直接変換もできますよ。</p>



<p class="wp-block-paragraph">10進数を中継点にすることで、どの進数間の変換にも対応できる柔軟性がOCT2DEC関数の強みです。</p>



<h2 class="wp-block-heading"><span id="toc25">Excelの進数変換12関数シリーズ一覧</span></h2>



<p class="wp-block-paragraph">Excelには2進数・8進数・10進数・16進数を相互変換する関数が全12種類あります。命名規則は「変換元の略称 + 2 + 変換先の略称」です。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>変換方向</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/excel-function-howto-use-bin2dec/">BIN2DEC</a></td><td>2進数 → 10進数</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-bin2oct/">BIN2OCT</a></td><td>2進数 → 8進数</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-bin2hex/">BIN2HEX</a></td><td>2進数 → 16進数</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-oct2bin/">OCT2BIN</a></td><td>8進数 → 2進数</td></tr><tr><td><strong>OCT2DEC</strong> ※この記事</td><td>8進数 → 10進数</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-oct2hex/">OCT2HEX</a></td><td>8進数 → 16進数</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-dec2bin/">DEC2BIN</a></td><td>10進数 → 2進数</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-dec2oct/">DEC2OCT</a></td><td>10進数 → 8進数</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-dec2hex/">DEC2HEX</a></td><td>10進数 → 16進数</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-hex2bin/">HEX2BIN</a></td><td>16進数 → 2進数</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-hex2dec/">HEX2DEC</a></td><td>16進数 → 10進数</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-hex2oct/">HEX2OCT</a></td><td>16進数 → 8進数</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">この命名規則を覚えておけば、どの関数を使うか迷いませんよ。</p>



<h2 class="wp-block-heading"><span id="toc26">まとめ</span></h2>



<p class="wp-block-paragraph">OCT2DEC関数は、8進数を10進数に変換するExcelの関数です。</p>



<p class="wp-block-paragraph">ポイントを整理します。</p>



<ul class="wp-block-list"><li>構文は <code>=OCT2DEC(数値)</code> で、引数は1つだけ</li><li>桁数引数はない（OCT2BIN・OCT2HEXとの違い）</li><li>入力は0〜7の数字で、最大10文字まで</li><li>正の数: 0〜536,870,911、負の数: -536,870,912〜-1</li><li>負の数は2の補数形式で指定する（最上位桁4以上が負）</li><li>#NUM!エラーは「8・9を含む」「10文字超」「無効な値」が原因</li><li>#VALUE!エラーは論理値など不正なデータ型が原因</li><li>IFERRORと組み合わせれば一括変換シートが作れる</li><li><a href="https://mashukabu.com/excel-function-howto-use-dec2oct/">DEC2OCT関数</a>との往復変換で検算できる</li></ul>



<p class="wp-block-paragraph">まずは <code>=OCT2DEC(755)</code> で「493」が返ることを試してみてください。Unixパーミッションの集計にすぐ活用できますよ。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-oct2dec/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
