<?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>カラーコード &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/%E3%82%AB%E3%83%A9%E3%83%BC%E3%82%B3%E3%83%BC%E3%83%89/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Thu, 04 Jun 2026 14:29:44 +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>カラーコード &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>スプレッドシートのDEC2HEX関数の使い方｜10進→16進</title>
		<link>https://mashukabu.com/spreadsheet-dec2hex-function/</link>
					<comments>https://mashukabu.com/spreadsheet-dec2hex-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 23 Apr 2026 11:31:22 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[10進数]]></category>
		<category><![CDATA[16進数]]></category>
		<category><![CDATA[DEC2HEX]]></category>
		<category><![CDATA[エンジニアリング関数]]></category>
		<category><![CDATA[カラーコード]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[基数変換]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6245</guid>

					<description><![CDATA[GoogleスプレッドシートのDEC2HEX関数の使い方を解説。10進数を16進数に変換する基本から、桁数指定（ゼロ埋め）、RGBカラーコード変換、負の数の扱い、エラー対処法まで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「RGB値（赤・緑・青の数値）をWebカラーコードに変換したいのに、計算が面倒&#8230;」</p>



<p class="wp-block-paragraph">スプレッドシートでデザインやWeb制作の作業をしていると、10進数の数値を16進数で表現したい場面が出てきます。255を「FF」、0を「00」に変換するといった作業を手計算でやるのは、慣れていないと大変ですよね。</p>



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



<p class="wp-block-paragraph">しかも桁数を指定してゼロ埋めできるので、RGBカラーコード（<code>#FF0000</code>のような形式）をスプレッドシート上で自動生成することも可能です。Excelとも互換性があるため、ファイルをやり取りする現場でも安心して使えますね。</p>



<p class="wp-block-paragraph">この記事では、DEC2HEX関数の基本から桁数指定・カラーコード生成・エラー対処法まで解説します。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">DEC2HEX関数とは？</a><ol><li><a href="#toc2" tabindex="0">関数名の由来</a></li><li><a href="#toc3" tabindex="0">DEC2HEX関数でできること</a></li></ol></li><li><a href="#toc4" tabindex="0">DEC2HEX関数の書き方（構文と引数）</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引数：変換する10進数</a></li><li><a href="#toc8" tabindex="0">第2引数：桁数（省略可）</a></li></ol></li><li><a href="#toc9" tabindex="0">10進数と16進数の対応表</a></li><li><a href="#toc10" tabindex="0">DEC2HEX関数の基本的な使い方</a><ol><li><a href="#toc11" tabindex="0">直接入力で変換する</a></li><li><a href="#toc12" tabindex="0">セル参照で変換する</a></li><li><a href="#toc13" tabindex="0">ARRAYFORMULAで一括変換する</a></li></ol></li><li><a href="#toc14" tabindex="0">桁数を指定して出力する（ゼロ埋め）</a><ol><li><a href="#toc15" tabindex="0">2桁固定フォーマット出力</a></li></ol></li><li><a href="#toc16" tabindex="0">実務活用例：RGBカラーコード変換</a><ol><li><a href="#toc17" tabindex="0">RGBからWebカラーコード（#RRGGBB）を作る</a></li></ol></li><li><a href="#toc18" tabindex="0">負の数の変換（2の補数・40ビット）</a><ol><li><a href="#toc19" tabindex="0">負の数の変換例</a></li><li><a href="#toc20" tabindex="0">16進数の2の補数の読み方</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></ol></li><li><a href="#toc25" tabindex="0">DEC2HEX関数とExcelの互換性</a></li><li><a href="#toc26" tabindex="0">DECシリーズ3関数の比較</a></li><li><a href="#toc27" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



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



<p class="wp-block-paragraph">16進数は0〜9の数字とA〜Fのアルファベット（合計16種類）で数値を表す方法です。10進数の「10」は16進数の「A」、「15」は「F」、「16」は「10」になります。</p>



<p class="wp-block-paragraph">WebデザインやCSS、データ通信の分野では16進数がよく登場します。特にWebカラーコード（<code>#FF0000</code>のような<code>#RRGGBB</code>形式）は、RGBそれぞれの数値を2桁の16進数で表したものです。DEC2HEX関数を使えば、この変換作業をスプレッドシートで自動化できますよ。</p>



<p class="wp-block-paragraph">たとえば <code>=DEC2HEX(255)</code> と入力すると、結果は「FF」です。10進数の255（1バイトの最大値）が、16進数ではたった2文字で表現されることがわかります。</p>



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



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



<ul class="wp-block-list"><li><strong>DEC</strong> = Decimal（デシマル、10進数）</li><li><strong>2</strong> = to（〜へ）</li><li><strong>HEX</strong> = Hexadecimal（ヘキサデシマル、16進数）</li></ul>



<p class="wp-block-paragraph">つまり「DECからHEXへ」、10進数を16進数に変換するという意味がそのまま名前になっています。逆変換のHEX2DEC関数とセットで覚えると便利ですよ。</p>



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



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



<ul class="wp-block-list"><li>10進数を16進数の文字列に変換する</li><li>変換できる範囲は -549,755,813,888〜549,755,813,887（40ビット符号付き整数）</li><li>桁数を指定して先頭にゼロ埋めできる</li><li>負の数は2の補数（40ビット）で返される</li><li>ExcelのDEC2HEX関数と仕様が同じで、ファイル共有でもそのまま動作する</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>DEC2HEX関数は<a href="https://mashukabu.com/spreadsheet-dec2bin-function/">DEC2BIN関数</a>（10進→2進）や<a href="https://mashukabu.com/spreadsheet-dec2oct-function/">DEC2OCT関数</a>（10進→8進）と同じ「DECシリーズ」の関数です。変換先の基数だけが違うので、一度覚えると他の変換関数も使いやすくなりますよ。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=DEC2HEX(数値, [桁数])</code></pre>



<p class="wp-block-paragraph">カッコの中に、変換したい10進数と、必要に応じて桁数を指定します。桁数は省略できますよ。</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>16進数に変換したい10進数。-549,755,813,888〜549,755,813,887の範囲で指定する</td></tr><tr><td>桁数</td><td>任意</td><td>結果の最小文字数（1〜10）。省略すると必要最小限の桁数で返される</td></tr></tbody></table></figure>



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



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



<ul class="wp-block-list"><li>-549,755,813,888以上 549,755,813,887以下の整数（40ビット符号付き整数の範囲）</li><li>直接入力でもセル参照でもOK</li><li>小数を指定した場合は切り捨てて処理される</li><li>範囲外は #NUM! エラー</li></ul>



<p class="wp-block-paragraph">DEC2BINが-512〜511の狭い範囲なのに対して、DEC2HEXは約5,500億という非常に広い範囲を扱えます。</p>



<h3 class="wp-block-heading"><span id="toc8">第2引数：桁数（省略可）</span></h3>



<p class="wp-block-paragraph">桁数のルールは、次のとおりです。</p>



<ul class="wp-block-list"><li>1〜10の範囲で指定する</li><li>結果の桁数より小さい値を指定すると #NUM! エラー</li><li>0や負の値を指定するとエラーになる</li><li><strong>負の数を変換した場合、桁数指定は無視されて常に10桁で返される</strong></li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>WARNING</strong></p><p>DEC2HEX関数の戻り値は数値ではなく「文字列」です。そのまま計算に使おうとすると文字列として扱われます。16進数を10進数に戻して計算したい場合はHEX2DEC関数を使ってくださいね。</p></blockquote>



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



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



<figure class="wp-block-table"><table><thead><tr><th>10進数</th><th>16進数（DEC2HEX）</th><th>備考</th></tr></thead><tbody><tr><td>0</td><td>0</td><td>&nbsp;</td></tr><tr><td>9</td><td>9</td><td>&nbsp;</td></tr><tr><td>10</td><td>A</td><td>Aが10を表す</td></tr><tr><td>15</td><td>F</td><td>Fが15を表す</td></tr><tr><td>16</td><td>10</td><td>16進数の繰り上がり</td></tr><tr><td>100</td><td>64</td><td>6×16 + 4</td></tr><tr><td>255</td><td>FF</td><td>1バイトの最大値</td></tr><tr><td>256</td><td>100</td><td>2バイト目に繰り上がり</td></tr><tr><td>65535</td><td>FFFF</td><td>2バイトの最大値</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">16進数は「16の累乗の足し算」で値が決まります。右から順に1、16、256、4096&#8230;と位が重みを持つイメージですね。</p>



<p class="wp-block-paragraph">たとえば10進数の「255」は、16×15 + 15 = 240+15 で、16進数にすると <code>FF</code> になります。Webカラーコードの <code>#FF0000</code>（純粋な赤）の「FF」がまさにこの値ですよ。</p>



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



<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>



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



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



<pre class="wp-block-code"><code>=DEC2HEX(255)</code></pre>



<p class="wp-block-paragraph">結果は「FF」です。1バイト（0〜255）の最大値を16進数で表すと、2文字で済みますね。</p>



<pre class="wp-block-code"><code>=DEC2HEX(100)</code></pre>



<p class="wp-block-paragraph">結果は「64」です。100 = 6×16 + 4 の計算から、16進数では「64」になります。</p>



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



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



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



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



<p class="wp-block-paragraph">結果は「FF」です。セル参照でも直接入力と同じように動作します。</p>



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



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



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



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



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



<figure class="wp-block-table"><table><thead><tr><th>A列: 10進数</th><th>B列: 数式</th><th>結果</th></tr></thead><tbody><tr><td>0</td><td>=ARRAYFORMULA(DEC2HEX(A2:A6))</td><td>0</td></tr><tr><td>100</td><td>↓</td><td>64</td></tr><tr><td>255</td><td>↓</td><td>FF</td></tr><tr><td>65535</td><td>↓</td><td>FFFF</td></tr><tr><td>16777215</td><td>↓</td><td>FFFFFF</td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc14">桁数を指定して出力する（ゼロ埋め）</span></h2>



<p class="wp-block-paragraph">DEC2HEX関数の第2引数「桁数」を使うと、出力の文字数を揃えられます。RGBカラーコード変換でとくに便利な機能ですよ。</p>



<h3 class="wp-block-heading"><span id="toc15">2桁固定フォーマット出力</span></h3>



<p class="wp-block-paragraph">Webカラーコードは「RGB各色を2桁の16進数」で表します。DEC2HEXで2桁固定にしておくと、コードが崩れません。</p>



<pre class="wp-block-code"><code>=DEC2HEX(5, 2)</code></pre>



<p class="wp-block-paragraph">結果は「05」です。桁数を省略すると「5」とだけ表示されますが、2を指定したことで先頭に「0」が追加されました。</p>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>結果</th><th>用途</th></tr></thead><tbody><tr><td>=DEC2HEX(0, 2)</td><td>00</td><td>最小値（カラーコードの色なし）</td></tr><tr><td>=DEC2HEX(5, 2)</td><td>05</td><td>2桁固定</td></tr><tr><td>=DEC2HEX(255, 2)</td><td>FF</td><td>最大値（最も強い色）</td></tr><tr><td>=DEC2HEX(128, 2)</td><td>80</td><td>中間値</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/spreadsheet-dec2hex-function/04_result_dec2hex-places.png/">_images/spreadsheet-dec2hex-function/04_result_dec2hex-places.png</a></p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>1バイト（0〜255）の16進数は必ず2桁以内に収まるので、桁数に「2」を指定すると安全に揃えられます。3桁以上のRGB値は通常存在しないので、2桁固定で問題ありませんよ。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc16">実務活用例：RGBカラーコード変換</span></h2>



<p class="wp-block-paragraph">DEC2HEX関数の最も身近な実務活用例が、RGBカラーコードの生成です。デザイン作業やCSSスタイル管理をスプレッドシートで行う場合に役立ちます。</p>



<h3 class="wp-block-heading"><span id="toc17">RGBからWebカラーコード（#RRGGBB）を作る</span></h3>



<p class="wp-block-paragraph">RGBの3つの数値（各0〜255）を16進数2桁に変換して連結すれば、Webカラーコードが完成します。</p>



<pre class="wp-block-code"><code>=&quot;#&quot;&amp;DEC2HEX(A2, 2)&amp;DEC2HEX(B2, 2)&amp;DEC2HEX(C2, 2)</code></pre>



<p class="wp-block-paragraph">A2に赤(R)、B2に緑(G)、C2に青(B)の数値が入っている場合、この数式でカラーコードを自動生成できます。</p>



<figure class="wp-block-table"><table><thead><tr><th>R（赤）</th><th>G（緑）</th><th>B（青）</th><th>カラーコード</th></tr></thead><tbody><tr><td>255</td><td>0</td><td>0</td><td>#FF0000（赤）</td></tr><tr><td>0</td><td>128</td><td>0</td><td>#008000（緑）</td></tr><tr><td>0</td><td>0</td><td>255</td><td>#0000FF（青）</td></tr><tr><td>255</td><td>165</td><td>0</td><td>#FFA500（オレンジ）</td></tr><tr><td>128</td><td>0</td><td>128</td><td>#800080（紫）</td></tr></tbody></table></figure>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/05_result_dec2hex-colorcode.png" alt="05 result dec2hex colorcode" /></figure>



<p class="wp-block-paragraph">デザインの色管理表をスプレッドシートで作っておけば、CSS作業のときにコピペするだけで済みますよ。</p>



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



<p class="wp-block-paragraph">DEC2HEX関数で負の数を変換すると、40ビット（10桁16進数）の2の補数表現が返されます。</p>



<h3 class="wp-block-heading"><span id="toc19">負の数の変換例</span></h3>



<pre class="wp-block-code"><code>=DEC2HEX(-1)</code></pre>



<p class="wp-block-paragraph">結果は「FFFFFFFFFF」（10桁すべてF）です。40ビットすべてが1になる、2の補数表現の特徴的な値です。</p>



<pre class="wp-block-code"><code>=DEC2HEX(-100)</code></pre>



<p class="wp-block-paragraph">結果は「FFFFFFFF9C」です。</p>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>結果</th><th>備考</th></tr></thead><tbody><tr><td>=DEC2HEX(-1)</td><td>FFFFFFFFFF</td><td>10桁固定</td></tr><tr><td>=DEC2HEX(-100)</td><td>FFFFFFFF9C</td><td>10桁固定</td></tr><tr><td>=DEC2HEX(-549755813888)</td><td>8000000000</td><td>負の最小値</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>負の数の変換では、第2引数の桁数指定は無視されます。常に10桁で返されるため、2桁や4桁を指定しても10桁の結果になりますよ。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc20">16進数の2の補数の読み方</span></h3>



<p class="wp-block-paragraph">先頭の16進数が「8」以上（8〜F）なら負の数を表しています。これはDEC2BINで先頭ビットが1なら負の数というのと同じ仕組みです。</p>



<ul class="wp-block-list"><li>正の数: 先頭が0〜7</li><li>負の数: 先頭が8〜F</li></ul>



<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>数値が範囲外（-549,755,813,888 未満または 549,755,813,887 超）</li><li>桁数に 0 以下の値を指定した</li><li>桁数に結果の桁数より少ない値を指定した</li></ul>



<pre class="wp-block-code"><code>=DEC2HEX(1000000000000)  → #NUM!（範囲外）
=DEC2HEX(255, 1)         → #NUM!（255のHEXは&quot;FF&quot;で2桁、1桁は不足）</code></pre>



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



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



<p class="wp-block-paragraph">数値や桁数に数値型でない値（文字列など）を直接指定すると #VALUE! エラーになります。</p>



<pre class="wp-block-code"><code>=DEC2HEX(&quot;abc&quot;)   → #VALUE!
=DEC2HEX(255, &quot;a&quot;) → #VALUE!</code></pre>



<p class="wp-block-paragraph">セル参照の場合はセルが空でも「0」として扱われることがありますが、文字列が入ったセルを直接参照した場合はエラーになります。</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(DEC2HEX(A2, 2), &quot;エラー&quot;)</code></pre>



<p class="wp-block-paragraph">A2に範囲外の値や文字列が入っていた場合でも、「エラー」と表示して処理が止まりません。</p>



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



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



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



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>Excelでは2007年以降は標準搭載ですが、2003以前のバージョンでは「分析ツールアドイン」の有効化が必要でした。現在のExcel環境では気にする必要はほぼありませんが、古いファイルを引き継ぐ場合は注意してください。</p></blockquote>



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



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



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>変換先</th><th>有効範囲（正）</th><th>負の数桁数</th><th>主な用途</th></tr></thead><tbody><tr><td>DEC2BIN</td><td>2進数</td><td>0〜511</td><td>10桁</td><td>ビットフラグ・IPアドレス</td></tr><tr><td>DEC2OCT</td><td>8進数</td><td>0〜536,870,911</td><td>10桁</td><td>Linuxパーミッション（chmod）</td></tr><tr><td>DEC2HEX</td><td>16進数</td><td>0〜549,755,813,887</td><td>10桁</td><td>カラーコード・メモリアドレス</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">DEC2HEXは3つの中でもっとも広い範囲を扱えます。メモリアドレスや大きな識別子を16進数で管理する場面でも使えますよ。</p>



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



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



<ul class="wp-block-list"><li>基本構文: <code>=DEC2HEX(数値, [桁数])</code></li><li>有効範囲: -549,755,813,888〜549,755,813,887</li><li>桁数を指定するとゼロ埋めで出力できる</li><li>負の数は常に10桁（40ビット2の補数）で返される</li><li>RGBカラーコード変換で最もよく活用される</li></ul>



<p class="wp-block-paragraph">特に <code>="#"&DEC2HEX(R, 2)&DEC2HEX(G, 2)&DEC2HEX(B, 2)</code> のカラーコード生成パターンは、デザイン管理やCSS作業で重宝しますよ。</p>



<p class="wp-block-paragraph">逆変換にはHEX2DEC関数を使います。またDEC2BINやDEC2OCTと組み合わせれば、さまざまな基数変換をスプレッドシート上で完結できますよ。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-dec2hex-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのDEC2HEX関数の使い方｜10進数を16進数に変換する方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-dec2hex/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-dec2hex/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 13 Aug 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[10進数]]></category>
		<category><![CDATA[16進数]]></category>
		<category><![CDATA[DEC2HEX]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[エンジニアリング関数]]></category>
		<category><![CDATA[カラーコード]]></category>
		<category><![CDATA[進数変換]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=2540</guid>

					<description><![CDATA[ExcelのDEC2HEX関数で10進数を16進数に変換する方法を解説。桁数指定によるゼロ埋め、RGB値からカラーコードへの応用、MACアドレス変換、#NUM!・#VALUE!エラーの対処法まで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「10進数を16進数に変換したいけど、手計算は面倒&#8230;」</p>



<p class="wp-block-paragraph">カラーコードやMACアドレスなど、16進数が必要になる場面は意外とありますよね。でもA〜Fが混ざる16進数の変換を手作業でやるのは大変です。</p>



<p class="wp-block-paragraph">ExcelのDEC2HEX関数を使えば、10進数から16進数への変換を一発で行えます。この記事では、<strong>DEC2HEX関数の使い方</strong>を基本からエラー対策まで解説しますよ。</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">ExcelのDEC2HEX関数とは？読み方と基本概要</a><ol><li><a href="#toc2" tabindex="0">読み方と意味</a></li><li><a href="#toc3" tabindex="0">どんなときに使うか（16進数の実務ユースケース）</a></li></ol></li><li><a href="#toc4" tabindex="0">DEC2HEX関数の書き方（構文と引数）</a><ol><li><a href="#toc5" tabindex="0">基本構文</a></li><li><a href="#toc6" tabindex="0">引数の説明</a></li><li><a href="#toc7" tabindex="0">変換できる数値の範囲（-549,755,813,888〜549,755,813,887）</a></li><li><a href="#toc8" tabindex="0">なぜDEC系関数で最も範囲が広いのか</a></li><li><a href="#toc9" tabindex="0">対応バージョン一覧</a></li></ol></li><li><a href="#toc10" tabindex="0">DEC2HEX関数の基本的な使い方</a><ol><li><a href="#toc11" tabindex="0">シンプルな変換例（0〜549,755,813,887）</a></li><li><a href="#toc12" tabindex="0">負の数の変換（2の補数表現）</a></li><li><a href="#toc13" tabindex="0">桁数を指定してゼロ埋めする</a></li></ol></li><li><a href="#toc14" tabindex="0">DEC2HEX関数のよくあるエラーと対処法</a><ol><li><a href="#toc15" tabindex="0">#NUM!エラー：範囲外と桁数の問題</a></li><li><a href="#toc16" tabindex="0">#VALUE!エラー：文字列・空白セルの混入</a></li><li><a href="#toc17" tabindex="0">エラーパターン早見表</a></li><li><a href="#toc18" tabindex="0">IFERROR関数と組み合わせてエラー回避</a></li></ol></li><li><a href="#toc19" tabindex="0">549,755,813,887を超える値を16進数に変換するテクニック</a><ol><li><a href="#toc20" tabindex="0">BASE関数を使う方法（Microsoft 365 / Excel 2013以降）</a></li><li><a href="#toc21" tabindex="0">分割結合で対応する方法</a></li></ol></li><li><a href="#toc22" tabindex="0">実用例：RGB値からカラーコードを一括生成する</a><ol><li><a href="#toc23" tabindex="0">カラーコード生成の数式</a></li><li><a href="#toc24" tabindex="0">代表色の対応表</a></li><li><a href="#toc25" tabindex="0">逆変換：カラーコードからRGB値を取り出す</a></li></ol></li><li><a href="#toc26" tabindex="0">実用例：MACアドレスと文字コードを16進数で管理する</a><ol><li><a href="#toc27" tabindex="0">MACアドレスのフォーマット変換</a></li><li><a href="#toc28" tabindex="0">文字コードの16進数変換（CODE関数との連携）</a></li></ol></li><li><a href="#toc29" tabindex="0">HEX2DEC関数で逆変換する（16進数→10進数）</a><ol><li><a href="#toc30" tabindex="0">往復変換で検算する</a></li><li><a href="#toc31" tabindex="0">DEC2HEXとHEX2DECの仕様比較</a></li></ol></li><li><a href="#toc32" tabindex="0">DEC系3関数を比較する（DEC2BIN・DEC2OCT・DEC2HEX）</a><ol><li><a href="#toc33" tabindex="0">変換先・有効範囲・主な用途の比較表</a></li><li><a href="#toc34" tabindex="0">どの関数を選ぶか</a></li></ol></li><li><a href="#toc35" tabindex="0">進数変換関数の全体マップ（全12関数）</a></li><li><a href="#toc36" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">DEC2HEX関数は、<strong>10進数を16進数に変換するExcelの関数</strong>です。エンジニアリング関数の1つで、進数変換を自動化してくれます。</p>



<p class="wp-block-paragraph">10進数は私たちが普段使っている0〜9の数字で表す方法です。一方、16進数は「0〜9」と「A〜F」の16種類の文字で数を表します。</p>



<h3 class="wp-block-heading"><span id="toc2">読み方と意味</span></h3>



<p class="wp-block-paragraph">読み方は「デック・ツー・ヘックス」です。</p>



<ul class="wp-block-list"><li><strong>DEC</strong> = Decimal（デシマル、10進数）</li><li><strong>2</strong> = to（〜へ）</li><li><strong>HEX</strong> = Hexadecimal（ヘクサデシマル、16進数）</li></ul>



<p class="wp-block-paragraph">つまり「10進数から16進数へ」という意味です。関数名がそのまま機能を表しているので覚えやすいですよ。</p>



<h3 class="wp-block-heading"><span id="toc3">どんなときに使うか（16進数の実務ユースケース）</span></h3>



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



<ul class="wp-block-list"><li><strong>カラーコード変換</strong>: RGB値（0〜255）を「#FF0000」のような16進数カラーコードに変換</li><li><strong>MACアドレス管理</strong>: ネットワーク機器のMACアドレスを16進数で整理・照合</li><li><strong>文字コード確認</strong>: CODE関数で取得した文字コード番号を16進数に変換</li><li><strong>メモリアドレス</strong>: プログラミングでメモリダンプの値を確認</li><li><strong>情報処理試験</strong>: 進数変換の練習や検算に活用</li></ul>



<p class="wp-block-paragraph">16進数は2進数4桁をちょうど1桁で表現できます。そのためIT分野ではデータを短く読みやすく表記する手段として広く使われていますよ。</p>



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



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



<pre class="wp-block-code"><code>=DEC2HEX(数値, [桁数])</code></pre>



<p class="wp-block-paragraph">引数は2つあります。必須なのは「数値」だけです。</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>16進数に変換したい10進数の整数。セル参照でもOK</td></tr><tr><td>桁数</td><td>任意</td><td>結果の文字数を指定。先頭をゼロで埋めて桁揃え</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><strong>引数1: 数値（必須）</strong></p>



<p class="wp-block-paragraph">16進数に変換したい10進数の整数を指定します。直接数値を入力しても、セル参照で指定してもOKです。</p>



<p class="wp-block-paragraph">小数を指定した場合は、小数点以下が切り捨てられます。たとえば <code>=DEC2HEX(255.9)</code> は「FF」になります。</p>



<p class="wp-block-paragraph"><strong>引数2: 桁数（省略可）</strong></p>



<p class="wp-block-paragraph">結果の文字数（桁数）を整数で指定します。省略すると、変換に必要な最小限の桁数で返されます。</p>



<p class="wp-block-paragraph">指定すると先頭にゼロを埋めて桁数を揃えてくれます。カラーコードの2桁固定など、見た目を統一したいときに便利ですよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>桁数に小数を指定すると小数点以下が切り捨てられます。0以下の値を指定すると#NUM!エラーになります。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc7">変換できる数値の範囲（-549,755,813,888〜549,755,813,887）</span></h3>



<p class="wp-block-paragraph">DEC2HEX関数が変換できるのは <strong>-549,755,813,888から549,755,813,887</strong> の整数です。</p>



<p class="wp-block-paragraph">この範囲は40ビットの符号付き整数に対応しています。</p>



<ul class="wp-block-list"><li><strong>正の最大値</strong>: 549,755,813,887 → 7FFFFFFFFF（10桁）</li><li><strong>負の最小値</strong>: -549,755,813,888 → 8000000000（10桁）</li></ul>



<p class="wp-block-paragraph">範囲外の数値を指定すると#NUM!エラーになります。</p>



<h3 class="wp-block-heading"><span id="toc8">なぜDEC系関数で最も範囲が広いのか</span></h3>



<p class="wp-block-paragraph">DEC系3関数の入力範囲は、変換先の進数に応じて異なります。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>ビット数</th><th>最大桁数</th><th>正の最大値</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/excel-function-howto-use-dec2bin/">DEC2BIN</a></td><td>10ビット</td><td>10桁</td><td>511</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-dec2oct/">DEC2OCT</a></td><td>30ビット</td><td>10桁</td><td>536,870,911</td></tr><tr><td><strong>DEC2HEX</strong></td><td>40ビット</td><td>10桁</td><td>549,755,813,887</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">3関数とも最大出力桁数は10桁で同じです。しかし16進数は1桁で4ビットを表現できるため、同じ10桁でも40ビット分の情報を扱えます。</p>



<p class="wp-block-paragraph">8進数は1桁で3ビット、2進数は1桁で1ビットなので、16進数のDEC2HEXが最も広い範囲を持つわけですね。</p>



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



<p class="wp-block-paragraph">DEC2HEX関数は、Excel 2007以降で標準搭載されています。</p>



<figure class="wp-block-table"><table><thead><tr><th>バージョン</th><th>対応状況</th></tr></thead><tbody><tr><td>Microsoft 365（Windows / Mac）</td><td>対応</td></tr><tr><td>Excel 2024 / 2021 / 2019 / 2016</td><td>対応</td></tr><tr><td>Excel for the web</td><td>対応</td></tr><tr><td>Excel 2007 / 2010 / 2013</td><td>対応</td></tr><tr><td>Excel 2003以前</td><td>分析ツールアドインが必要</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">現在の主要バージョンならアドイン不要でそのまま使えますよ。</p>



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



<h3 class="wp-block-heading"><span id="toc11">シンプルな変換例（0〜549,755,813,887）</span></h3>



<p class="wp-block-paragraph">まずは関数に直接値を入力してみましょう。</p>



<pre class="wp-block-code"><code>=DEC2HEX(255)</code></pre>



<p class="wp-block-paragraph">結果は「FF」です。10進数の255は、16進数でFFになります。</p>



<p class="wp-block-paragraph">変換の仕組みを確認しておきます。16進数では各桁に16のべき乗を対応させて合計します。</p>



<figure class="wp-block-table"><table><thead><tr><th>桁</th><th>2桁目</th><th>1桁目</th></tr></thead><tbody><tr><td>16進数</td><td>F (=15)</td><td>F (=15)</td></tr><tr><td>重み</td><td>16^1 = 16</td><td>16^0 = 1</td></tr><tr><td>計算</td><td>15 x 16 = 240</td><td>15 x 1 = 15</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">合計: 240 + 15 = <strong>255</strong> ですね。</p>



<p class="wp-block-paragraph">よく使う変換例をまとめておきます。</p>



<figure class="wp-block-table"><table><thead><tr><th>入力（10進数）</th><th>出力（16進数）</th><th>備考</th></tr></thead><tbody><tr><td>0</td><td>0</td><td>ゼロ</td></tr><tr><td>10</td><td>A</td><td>10以上はアルファベット</td></tr><tr><td>15</td><td>F</td><td>1桁の最大値</td></tr><tr><td>16</td><td>10</td><td>桁上がり</td></tr><tr><td>100</td><td>64</td><td>&nbsp;</td></tr><tr><td>255</td><td>FF</td><td>1バイトの最大値</td></tr><tr><td>256</td><td>100</td><td>&nbsp;</td></tr><tr><td>1000</td><td>3E8</td><td>&nbsp;</td></tr><tr><td>65535</td><td>FFFF</td><td>2バイトの最大値</td></tr><tr><td>16777215</td><td>FFFFFF</td><td>3バイトの最大値（RGB最大）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">セルの値を参照して変換することもできます。A1に「200」が入っているなら、次の数式です。</p>



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



<p class="wp-block-paragraph">結果は「C8」です。参照先の値を変えれば結果も自動で更新されますよ。</p>



<h3 class="wp-block-heading"><span id="toc12">負の数の変換（2の補数表現）</span></h3>



<p class="wp-block-paragraph">DEC2HEX関数に負の数を指定すると、2の補数（にのほすう）で表現された10桁の16進数が返ります。</p>



<p class="wp-block-paragraph">2の補数とは、コンピュータが負の整数を表す仕組みです。DEC2HEX関数では40ビット相当の2の補数で表現されます。</p>



<pre class="wp-block-code"><code>=DEC2HEX(-1)</code></pre>



<p class="wp-block-paragraph">結果は「FFFFFFFFFF」です。40ビット全部が1になる値です。</p>



<pre class="wp-block-code"><code>=DEC2HEX(-100)</code></pre>



<p class="wp-block-paragraph">結果は「FFFFFFFF9C」です。桁数の指定に関係なく、常に10桁で返されます。</p>



<p class="wp-block-paragraph">負の数の代表的な変換例です。</p>



<figure class="wp-block-table"><table><thead><tr><th>入力（10進数）</th><th>出力（16進数）</th><th>備考</th></tr></thead><tbody><tr><td>-1</td><td>FFFFFFFFFF</td><td>全桁F（40ビットすべて1）</td></tr><tr><td>-100</td><td>FFFFFFFF9C</td><td>10桁固定</td></tr><tr><td>-256</td><td>FFFFFFFF00</td><td>&nbsp;</td></tr><tr><td>-549,755,813,888</td><td>8000000000</td><td>負の最小値</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">負の数かどうかは先頭の文字で判断できます。先頭が「8」〜「F」なら負の数です。先頭が「0」〜「7」なら正の数になります。</p>



<h3 class="wp-block-heading"><span id="toc13">桁数を指定してゼロ埋めする</span></h3>



<p class="wp-block-paragraph">第2引数に桁数を指定すると、先頭にゼロを埋めて桁数を揃えられます。</p>



<pre class="wp-block-code"><code>=DEC2HEX(255, 4)</code></pre>



<p class="wp-block-paragraph">結果は「00FF」です。4桁に揃えてくれました。</p>



<p class="wp-block-paragraph">桁数を指定しない場合と比べてみましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>結果</th><th>備考</th></tr></thead><tbody><tr><td>=DEC2HEX(10)</td><td>A</td><td>最小桁数（1桁）</td></tr><tr><td>=DEC2HEX(10, 2)</td><td>0A</td><td>2桁にゼロ埋め</td></tr><tr><td>=DEC2HEX(255)</td><td>FF</td><td>最小桁数（2桁）</td></tr><tr><td>=DEC2HEX(255, 4)</td><td>00FF</td><td>4桁にゼロ埋め</td></tr><tr><td>=DEC2HEX(255, 8)</td><td>000000FF</td><td>8桁にゼロ埋め</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">カラーコードでは各色2桁固定が必要です。MACアドレスも各オクテット2桁固定です。桁数指定はこうした場面で欠かせませんよ。</p>



<h2 class="wp-block-heading"><span id="toc14">DEC2HEX関数のよくあるエラーと対処法</span></h2>



<p class="wp-block-paragraph">DEC2HEX関数で発生するエラーは主に2種類です。原因別に見ていきましょう。</p>



<h3 class="wp-block-heading"><span id="toc15">#NUM!エラー：範囲外と桁数の問題</span></h3>



<p class="wp-block-paragraph">#NUM!エラーが出る原因は3つあります。</p>



<p class="wp-block-paragraph"><strong>1. 数値が変換範囲外</strong></p>



<pre class="wp-block-code"><code>=DEC2HEX(549755813888)    → #NUM!エラー
=DEC2HEX(-549755813889)   → #NUM!エラー</code></pre>



<p class="wp-block-paragraph">変換できる範囲は-549,755,813,888〜549,755,813,887です。この範囲外の値を指定するとエラーになります。</p>



<p class="wp-block-paragraph"><strong>2. 桁数が結果より少ない</strong></p>



<pre class="wp-block-code"><code>=DEC2HEX(255, 1)   → #NUM!エラー</code></pre>



<p class="wp-block-paragraph">255を16進数にすると「FF」で2桁必要です。桁数に1を指定すると足りないためエラーになります。</p>



<p class="wp-block-paragraph"><strong>3. 桁数が0以下</strong></p>



<pre class="wp-block-code"><code>=DEC2HEX(255, 0)   → #NUM!エラー
=DEC2HEX(255, -1)  → #NUM!エラー</code></pre>



<p class="wp-block-paragraph">桁数は1以上の整数を指定してください。</p>



<h3 class="wp-block-heading"><span id="toc16">#VALUE!エラー：文字列・空白セルの混入</span></h3>



<p class="wp-block-paragraph">数値や桁数に文字列を指定すると#VALUE!エラーです。</p>



<pre class="wp-block-code"><code>=DEC2HEX(&quot;ABC&quot;)     → #VALUE!エラー
=DEC2HEX(255, &quot;A&quot;)  → #VALUE!エラー</code></pre>



<p class="wp-block-paragraph">セル参照で変換する場合は、参照先が数値型かどうか確認しましょう。文字列として入力された数字（左寄せで表示される数字）も#VALUE!エラーの原因になります。</p>



<p class="wp-block-paragraph">VALUE関数（文字列を数値に変換する関数）で事前に数値化すると安全ですよ。</p>



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



<h3 class="wp-block-heading"><span id="toc17">エラーパターン早見表</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>数値が範囲外</td><td>=DEC2HEX(549755813888)</td><td>値を範囲内に収める</td></tr><tr><td>#NUM!</td><td>桁数が0以下</td><td>=DEC2HEX(255, 0)</td><td>桁数を1以上にする</td></tr><tr><td>#NUM!</td><td>桁数が結果より少ない</td><td>=DEC2HEX(255, 1)</td><td>桁数を結果以上にする</td></tr><tr><td>#VALUE!</td><td>数値が文字列</td><td>=DEC2HEX(&#8220;ABC&#8221;)</td><td>数値型のデータを指定</td></tr><tr><td>#VALUE!</td><td>桁数が文字列</td><td>=DEC2HEX(255, &#8220;A&#8221;)</td><td>桁数に数値を指定</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc18">IFERROR関数と組み合わせてエラー回避</span></h3>



<p class="wp-block-paragraph">エラーが出る可能性がある場合は、IFERROR関数（エラー時に代替値を返す関数）で囲むと安全です。</p>



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



<p class="wp-block-paragraph">この数式なら、A1の値が範囲外でも「変換エラー」と表示されます。</p>



<p class="wp-block-paragraph">大量のデータを一括変換するときは、あらかじめIFERRORで囲んでおくと安心ですよ。</p>



<h2 class="wp-block-heading"><span id="toc19">549,755,813,887を超える値を16進数に変換するテクニック</span></h2>



<p class="wp-block-paragraph">DEC2HEX関数の上限は約5,497億です。それより大きな値を16進数にしたい場面もありますよね。</p>



<h3 class="wp-block-heading"><span id="toc20">BASE関数を使う方法（Microsoft 365 / Excel 2013以降）</span></h3>



<p class="wp-block-paragraph">Excel 2013以降なら、BASE関数（ベース関数）を使う方法があります。BASE関数は任意の基数（2〜36）に変換できる関数です。</p>



<pre class="wp-block-code"><code>=BASE(1000000000000, 16)</code></pre>



<p class="wp-block-paragraph">結果は「E8D4A51000」です。DEC2HEX関数の範囲外の値もそのまま変換できます。</p>



<p class="wp-block-paragraph">ただしBASE関数には注意点があります。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>DEC2HEX</th><th>BASE</th></tr></thead><tbody><tr><td>入力範囲</td><td>約-5,497億〜約5,497億</td><td>0〜2^53</td></tr><tr><td>負の数</td><td>2の補数で返す</td><td>非対応（エラー）</td></tr><tr><td>桁数指定</td><td>第2引数で指定</td><td>第3引数で指定</td></tr><tr><td>出力文字</td><td>大文字（A〜F）</td><td>大文字（A〜F）</td></tr><tr><td>対応バージョン</td><td>Excel 2007以降</td><td>Excel 2013以降</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">負の数の変換が必要ならDEC2HEX関数を使いましょう。正の大きな値だけならBASE関数が便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc21">分割結合で対応する方法</span></h3>



<p class="wp-block-paragraph">BASE関数が使えないExcel 2007〜2010の環境では、値を上位・下位に分割して結合する方法が使えます。</p>



<pre class="wp-block-code"><code>=DEC2HEX(INT(A1/65536), 4) &amp; DEC2HEX(MOD(A1, 65536), 4)</code></pre>



<p class="wp-block-paragraph">この数式は次の手順で動きます。</p>



<ol class="wp-block-list"><li><code>INT(A1/65536)</code> で上位16ビット（65536で割った商）を計算</li><li><code>MOD(A1, 65536)</code> で下位16ビット（65536で割った余り）を計算</li><li>それぞれをDEC2HEX関数で4桁にゼロ埋め変換</li><li><code>&</code> で文字列結合して8桁の16進数を生成</li></ol>



<p class="wp-block-paragraph">A1に100000を入れると、結果は「000186A0」です。</p>



<p class="wp-block-paragraph">ただし分割結合は正の数のみ対応です。負の数の2の補数が必要な場合はBASE関数を検討してください。</p>



<h2 class="wp-block-heading"><span id="toc22">実用例：RGB値からカラーコードを一括生成する</span></h2>



<p class="wp-block-paragraph">DEC2HEX関数の最もポピュラーな活用例が、RGB値からのカラーコード変換です。</p>



<p class="wp-block-paragraph">Webデザインで使うカラーコード（#FF0000など）は、R（赤）・G（緑）・B（青）の各値を16進数2桁で表したものです。各値は0〜255の10進数なので、DEC2HEX関数で変換できます。</p>



<h3 class="wp-block-heading"><span id="toc23">カラーコード生成の数式</span></h3>



<p class="wp-block-paragraph">RGB(255, 128, 0)をカラーコードに変換してみましょう。</p>



<pre class="wp-block-code"><code>=DEC2HEX(255, 2)   → FF（赤）
=DEC2HEX(128, 2)   → 80（緑）
=DEC2HEX(0, 2)     → 00（青）</code></pre>



<p class="wp-block-paragraph">1つのセルにまとめる場合は、次のように書きます。</p>



<pre class="wp-block-code"><code>=&quot;#&quot;&amp;DEC2HEX(A1, 2)&amp;DEC2HEX(B1, 2)&amp;DEC2HEX(C1, 2)</code></pre>



<p class="wp-block-paragraph">A1に255、B1に128、C1に0が入っていれば、結果は「#FF8000」（オレンジ色）です。</p>



<p class="wp-block-paragraph">IFERRORで囲んでおくと、RGB値が0〜255の範囲外だったときにも安心です。</p>



<pre class="wp-block-code"><code>=IFERROR(&quot;#&quot;&amp;DEC2HEX(A1,2)&amp;DEC2HEX(B1,2)&amp;DEC2HEX(C1,2), &quot;入力値エラー&quot;)</code></pre>



<h3 class="wp-block-heading"><span id="toc24">代表色の対応表</span></h3>



<p class="wp-block-paragraph">代表的な色のRGB値とカラーコードの対応です。</p>



<figure class="wp-block-table"><table><thead><tr><th>色</th><th>R</th><th>G</th><th>B</th><th>カラーコード</th></tr></thead><tbody><tr><td>赤</td><td>255</td><td>0</td><td>0</td><td>#FF0000</td></tr><tr><td>緑</td><td>0</td><td>128</td><td>0</td><td>#008000</td></tr><tr><td>青</td><td>0</td><td>0</td><td>255</td><td>#0000FF</td></tr><tr><td>白</td><td>255</td><td>255</td><td>255</td><td>#FFFFFF</td></tr><tr><td>黒</td><td>0</td><td>0</td><td>0</td><td>#000000</td></tr><tr><td>オレンジ</td><td>255</td><td>128</td><td>0</td><td>#FF8000</td></tr><tr><td>紫</td><td>128</td><td>0</td><td>128</td><td>#800080</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc25">逆変換：カラーコードからRGB値を取り出す</span></h3>



<p class="wp-block-paragraph">カラーコードからRGB値を取り出すには、<a href="https://mashukabu.com/excel-function-howto-use-hex2dec/">HEX2DEC関数</a>とMID関数を組み合わせます。</p>



<p class="wp-block-paragraph">A1に「#FF8000」が入っているとします。</p>



<pre class="wp-block-code"><code>=HEX2DEC(MID(A1, 2, 2))   → 255（赤）
=HEX2DEC(MID(A1, 4, 2))   → 128（緑）
=HEX2DEC(MID(A1, 6, 2))   → 0（青）</code></pre>



<p class="wp-block-paragraph">MID関数（文字列の途中から指定文字数を取り出す関数）で2文字ずつ抜き出し、HEX2DEC関数で10進数に戻す流れです。DEC2HEXとHEX2DECの往復変換が活きる場面ですね。</p>



<h2 class="wp-block-heading"><span id="toc26">実用例：MACアドレスと文字コードを16進数で管理する</span></h2>



<p class="wp-block-paragraph">カラーコード以外にも、DEC2HEX関数が活躍する実務シーンがあります。</p>



<h3 class="wp-block-heading"><span id="toc27">MACアドレスのフォーマット変換</span></h3>



<p class="wp-block-paragraph">MACアドレスは「AA:BB:CC:DD:EE:FF」のように、6つのオクテットを16進数2桁で表記します。機器管理台帳でMACアドレスを整理するときに便利です。</p>



<p class="wp-block-paragraph">たとえばA1〜F1に各オクテットの10進数値が入っている場合、次の数式でMACアドレス形式に変換できます。</p>



<pre class="wp-block-code"><code>=DEC2HEX(A1,2)&amp;&quot;:&quot;&amp;DEC2HEX(B1,2)&amp;&quot;:&quot;&amp;DEC2HEX(C1,2)&amp;&quot;:&quot;&amp;DEC2HEX(D1,2)&amp;&quot;:&quot;&amp;DEC2HEX(E1,2)&amp;&quot;:&quot;&amp;DEC2HEX(F1,2)</code></pre>



<p class="wp-block-paragraph">A1〜F1に「0, 26, 106, 63, 255, 1」と入っていれば、結果は「00:1A:6A:3F:FF:01」です。</p>



<p class="wp-block-paragraph">各オクテットは0〜255の範囲なので、DEC2HEX関数の範囲内に収まります。桁数を2に指定して「0A」のようにゼロ埋めするのがポイントですよ。</p>



<h3 class="wp-block-heading"><span id="toc28">文字コードの16進数変換（CODE関数との連携）</span></h3>



<p class="wp-block-paragraph">Excel のCODE関数（コード関数）は、文字の文字コード番号を10進数で返します。この値をDEC2HEX関数で16進数に変換すると、プログラミングでよく使う16進数表記が得られます。</p>



<pre class="wp-block-code"><code>=DEC2HEX(CODE(&quot;A&quot;))</code></pre>



<p class="wp-block-paragraph">結果は「41」です。ASCIIコードで「A」は10進数65、16進数で41になります。</p>



<p class="wp-block-paragraph">主な文字の対応表です。</p>



<figure class="wp-block-table"><table><thead><tr><th>文字</th><th>CODE関数の結果（10進数）</th><th>DEC2HEX変換（16進数）</th></tr></thead><tbody><tr><td>A</td><td>65</td><td>41</td></tr><tr><td>Z</td><td>90</td><td>5A</td></tr><tr><td>a</td><td>97</td><td>61</td></tr><tr><td>z</td><td>122</td><td>7A</td></tr><tr><td>0</td><td>48</td><td>30</td></tr><tr><td>9</td><td>57</td><td>39</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">プログラムのデバッグやデータ変換作業で、文字コードを確認したいときに試してみてください。</p>



<h2 class="wp-block-heading"><span id="toc29">HEX2DEC関数で逆変換する（16進数→10進数）</span></h2>



<p class="wp-block-paragraph">DEC2HEX関数の逆変換には<a href="https://mashukabu.com/excel-function-howto-use-hex2dec/">HEX2DEC関数</a>を使います。セットで覚えておくと便利です。</p>



<h3 class="wp-block-heading"><span id="toc30">往復変換で検算する</span></h3>



<p class="wp-block-paragraph">変換結果が正しいか確認するには、往復変換が有効です。</p>



<pre class="wp-block-code"><code>=HEX2DEC(DEC2HEX(100))</code></pre>



<p class="wp-block-paragraph">結果が「100」に戻れば変換が正確だと確認できます。負の数でも同様です。</p>



<pre class="wp-block-code"><code>=HEX2DEC(DEC2HEX(-100))</code></pre>



<p class="wp-block-paragraph">結果は「-100」です。2の補数で表現された10桁の16進数を、HEX2DEC関数が正しく負の数に戻してくれますよ。</p>



<h3 class="wp-block-heading"><span id="toc31">DEC2HEXとHEX2DECの仕様比較</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>DEC2HEX</th><th><a href="https://mashukabu.com/excel-function-howto-use-hex2dec/">HEX2DEC</a></th></tr></thead><tbody><tr><td>変換方向</td><td>10進数 → 16進数</td><td>16進数 → 10進数</td></tr><tr><td>入力</td><td>-549,755,813,888〜549,755,813,887の整数</td><td>最大10桁の16進数文字列</td></tr><tr><td>出力</td><td>テキスト文字列（0〜Fの大文字）</td><td>数値（約-5,497億〜約5,497億）</td></tr><tr><td>桁数指定</td><td>あり（第2引数）</td><td>なし</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">入力と出力の型が逆転する点に注意です。DEC2HEX関数はテキストを返し、HEX2DEC関数は数値を返します。</p>



<h2 class="wp-block-heading"><span id="toc32">DEC系3関数を比較する（DEC2BIN・DEC2OCT・DEC2HEX）</span></h2>



<p class="wp-block-paragraph">Excelには10進数から他の進数に変換するDEC系関数が3つあります。構文はすべて <code>関数名(数値, [桁数])</code> で同じです。</p>



<h3 class="wp-block-heading"><span id="toc33">変換先・有効範囲・主な用途の比較表</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th><a href="https://mashukabu.com/excel-function-howto-use-dec2bin/">DEC2BIN</a></th><th><a href="https://mashukabu.com/excel-function-howto-use-dec2oct/">DEC2OCT</a></th><th><strong>DEC2HEX</strong> ※この記事</th></tr></thead><tbody><tr><td>変換先</td><td>2進数</td><td>8進数</td><td>16進数</td></tr><tr><td>ビット数</td><td>10ビット</td><td>30ビット</td><td>40ビット</td></tr><tr><td>入力範囲（正）</td><td>0〜511</td><td>0〜536,870,911</td><td>0〜549,755,813,887</td></tr><tr><td>入力範囲（負）</td><td>-512〜-1</td><td>-536,870,912〜-1</td><td>-549,755,813,888〜-1</td></tr><tr><td>主な用途</td><td>ビット演算、ネットワーク</td><td>Unixパーミッション</td><td>カラーコード、MACアドレス</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">ビット数の違いには数学的な理由があります。3関数とも最大出力は10桁です。しかし1桁あたりのビット数が異なるため、扱える範囲に差が出ます。</p>



<ul class="wp-block-list"><li>2進数: 1桁 = 1ビット → 10桁 = 10ビット</li><li>8進数: 1桁 = 3ビット → 10桁 = 30ビット</li><li>16進数: 1桁 = 4ビット → 10桁 = 40ビット</li></ul>



<p class="wp-block-paragraph">3関数とも負の数は10桁の補数で返す点が共通しています。</p>



<h3 class="wp-block-heading"><span id="toc34">どの関数を選ぶか</span></h3>



<p class="wp-block-paragraph">迷ったときは、変換先の用途で選びましょう。</p>



<ul class="wp-block-list"><li><strong>ビット単位の操作が目的</strong> → <a href="https://mashukabu.com/excel-function-howto-use-dec2bin/">DEC2BIN</a>（2進数が直感的）</li><li><strong>Unixパーミッション（755など）を扱う</strong> → <a href="https://mashukabu.com/excel-function-howto-use-dec2oct/">DEC2OCT</a></li><li><strong>カラーコード（#FF0000）やMACアドレスを扱う</strong> → DEC2HEX</li></ul>



<p class="wp-block-paragraph">複数の進数を行き来するなら、まずDEC2HEXで16進数に変換し、そこから<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>



<h2 class="wp-block-heading"><span id="toc35">進数変換関数の全体マップ（全12関数）</span></h2>



<p class="wp-block-paragraph">Excelの進数変換関数は全部で12種類あります。関数名の規則は「変換元 + 2 + 変換先」です。</p>



<figure class="wp-block-table"><table><thead><tr><th>変換元＼変換先</th><th>→ 2進数（BIN）</th><th>→ 8進数（OCT）</th><th>→ 10進数（DEC）</th><th>→ 16進数（HEX）</th></tr></thead><tbody><tr><td>2進数（BIN）</td><td>&#8212;</td><td><a href="https://mashukabu.com/excel-function-howto-use-bin2oct/">BIN2OCT</a></td><td><a href="https://mashukabu.com/excel-function-howto-use-bin2dec/">BIN2DEC</a></td><td><a href="https://mashukabu.com/excel-function-howto-use-bin2hex/">BIN2HEX</a></td></tr><tr><td>8進数（OCT）</td><td><a href="https://mashukabu.com/excel-function-howto-use-oct2bin/">OCT2BIN</a></td><td>&#8212;</td><td><a href="https://mashukabu.com/excel-function-howto-use-oct2dec/">OCT2DEC</a></td><td><a href="https://mashukabu.com/excel-function-howto-use-oct2hex/">OCT2HEX</a></td></tr><tr><td>10進数（DEC）</td><td><a href="https://mashukabu.com/excel-function-howto-use-dec2bin/">DEC2BIN</a></td><td><a href="https://mashukabu.com/excel-function-howto-use-dec2oct/">DEC2OCT</a></td><td>&#8212;</td><td><strong>DEC2HEX</strong> ※この記事</td></tr><tr><td>16進数（HEX）</td><td><a href="https://mashukabu.com/excel-function-howto-use-hex2bin/">HEX2BIN</a></td><td><a href="https://mashukabu.com/excel-function-howto-use-hex2oct/">HEX2OCT</a></td><td><a href="https://mashukabu.com/excel-function-howto-use-hex2dec/">HEX2DEC</a></td><td>&#8212;</td></tr></tbody></table></figure>



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



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



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



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



<ul class="wp-block-list"><li>構文は <code>=DEC2HEX(数値, [桁数])</code> の最大2引数</li><li>変換できる範囲は約-5,497億〜約5,497億（DEC系で最も広い）</li><li>桁数を指定すると先頭をゼロで埋めて桁揃えできる</li><li>負の数は10桁の2の補数で返される</li><li>RGB値からカラーコードを一括生成できる</li><li>MACアドレスや文字コードの管理にも活用できる</li><li>#NUM!エラーは「範囲外」「桁数不足」「桁数ゼロ以下」が原因</li><li>#VALUE!エラーは「文字列の混入」が原因</li><li>範囲超過にはBASE関数や分割結合で対応</li><li>逆変換には<a href="https://mashukabu.com/excel-function-howto-use-hex2dec/">HEX2DEC関数</a>を使う</li><li>Excel 2007以降で標準搭載。アドイン不要</li></ul>



<p class="wp-block-paragraph">まずは <code>=DEC2HEX(255)</code> で「FF」が返ることを試してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-dec2hex/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
