<?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%83%87%e3%83%bc%e3%82%bf%e6%a4%9c%e8%a8%bc/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Thu, 04 Jun 2026 07:38:14 +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>ExcelのNA関数の使い方｜意図的に#N/Aエラーを返す4つの活用法</title>
		<link>https://mashukabu.com/excel-function-howto-use-na/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-na/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 07 May 2026 12:42:11 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[IFNA]]></category>
		<category><![CDATA[ISNA]]></category>
		<category><![CDATA[NA関数]]></category>
		<category><![CDATA[VLOOKUP]]></category>
		<category><![CDATA[エラー処理]]></category>
		<category><![CDATA[データ検証]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6540</guid>

					<description><![CDATA[ExcelのNA関数は、意図的に#N/Aエラーを返すための関数です。この記事ではNA関数の基本構文から、VLOOKUPの該当なし処理、グラフのプレースホルダー、データ未入力のフラグ表示まで、4つの実務シナリオで使い方を解説します。IFNA・ISNA・IFERRORとの違いも比較表で整理します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Excelで「#N/A」というエラーを見ると、何か間違えてしまったかな…と焦ってしまいますよね。</p>



<p class="wp-block-paragraph">でも実は、Excelには <strong>#N/Aエラーを意図的に発生させるための関数</strong> が用意されています。それが <strong>NA関数</strong> です。「エラーを出すための関数って、どんな場面で使うの？」と疑問に思いますよね。</p>



<p class="wp-block-paragraph">この記事では、ExcelのNA関数の基本から、グラフのプレースホルダー、VLOOKUPとの連携、データ未入力の可視化まで、4つの実務シーンで使い方を解説します。IFNA・ISNA・IFERRORとの違いも比較表でまとめるので、エラー処理関数の使い分けにも迷わなくなりますよ。</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">ExcelのNA関数とは？意図的に#N/Aエラーを返す関数</a><ol><li><a href="#toc2" tabindex="0">NA関数の基本概念</a></li><li><a href="#toc3" tabindex="0">なぜエラーを意図的に出す関数があるのか</a></li></ol></li><li><a href="#toc4" tabindex="0">ExcelのNA関数の基本的な使い方</a><ol><li><a href="#toc5" tabindex="0">構文</a></li><li><a href="#toc6" tabindex="0">=NA() を入力して#N/Aを返す</a></li><li><a href="#toc7" tabindex="0">対応バージョン</a></li></ol></li><li><a href="#toc8" tabindex="0">ExcelのNA関数を実務で使う4つのシーン</a><ol><li><a href="#toc9" tabindex="0">シーン1｜未入力データを「未入力」と明示する</a></li><li><a href="#toc10" tabindex="0">シーン2｜グラフでデータ抜けに線をつなぐ（プレースホルダー用途）</a></li><li><a href="#toc11" tabindex="0">シーン3｜VLOOKUP・MATCHの結果を分岐させる前処理</a></li><li><a href="#toc12" tabindex="0">シーン4｜計算前提が満たされていない場合の警告表示</a></li></ol></li><li><a href="#toc13" tabindex="0">NA関数とIFNA・ISNA・IFERRORの違い（4関数比較表）</a><ol><li><a href="#toc14" tabindex="0">役割で整理する4関数の立ち位置</a></li><li><a href="#toc15" tabindex="0">比較表</a></li></ol></li><li><a href="#toc16" tabindex="0">NA関数とIFNA・ISNAを組み合わせた実務パターン</a><ol><li><a href="#toc17" tabindex="0">パターン1｜NA() + IFNA で代替値を表示</a></li><li><a href="#toc18" tabindex="0">パターン2｜NA() + ISNA で条件分岐</a></li><li><a href="#toc19" tabindex="0">パターン3｜VLOOKUPの#N/Aを任意のセルに伝播させる</a></li></ol></li><li><a href="#toc20" tabindex="0">ExcelのNA関数でよくあるエラーと対処法</a><ol><li><a href="#toc21" tabindex="0">構文ミス（NA と入力すると#NAME?エラー）</a></li><li><a href="#toc22" tabindex="0">#N/A以外のエラーを返したい場合</a></li><li><a href="#toc23" tabindex="0">グラフで線がつながらない場合のチェック</a></li></ol></li><li><a href="#toc24" tabindex="0">まとめ｜NA関数で「エラーを味方にする」数式設計</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">ExcelのNA関数とは？意図的に#N/Aエラーを返す関数</span></h2>



<p class="wp-block-paragraph">NA関数は、セルに <strong>#N/Aエラーを意図的に発生させる</strong> 関数です。<code>#N/A</code> は「Not Available（情報がない・該当なし）」を意味するエラー値で、Excelの代表的なエラー7種のひとつです。</p>



<p class="wp-block-paragraph">「エラーを出すための関数なんて、何の役に立つの？」と思いますよね。実はこれ、データ分析やグラフ作成の現場ではとても重宝される関数なんです。</p>



<h3 class="wp-block-heading"><span id="toc2">NA関数の基本概念</span></h3>



<p class="wp-block-paragraph">NA関数は引数を取らず、<code>=NA()</code> と書くだけで <code>#N/A</code> を返します。読み方は「<strong>エヌエー</strong>」または「<strong>ナ</strong>」です。</p>



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



<p class="wp-block-paragraph">セルに上の数式を入れると、結果は <code>#N/A</code> になります。一見「ただエラーを表示するだけ」に見えますが、ここがミソです。</p>



<h3 class="wp-block-heading"><span id="toc3">なぜエラーを意図的に出す関数があるのか</span></h3>



<p class="wp-block-paragraph">NA関数は、もともと他の表計算ソフトとの互換性のために用意された関数です。ただ、現代のExcel運用では「<strong>エラーを意図的に発生させる</strong>」という独自の役割が確立しています。</p>



<p class="wp-block-paragraph">主な使いどころは次の3つです。</p>



<ul class="wp-block-list"><li>グラフのプロットを意図的にスキップしたい</li><li>未入力データを「未入力」と明示的に示したい</li><li>VLOOKUPやIFNAなどと組み合わせて条件分岐を作りたい</li></ul>



<p class="wp-block-paragraph">つまりNA関数は「<strong>エラーを味方につける</strong>」ための関数なんですよね。詳しい使い方は後ほど4つのシーンで解説します。</p>



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



<p class="wp-block-paragraph">それでは具体的な書き方を見ていきましょう。NA関数は引数なしで使える、Excel関数の中でもかなりシンプルな部類です。</p>



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



<p class="wp-block-paragraph">NA関数の構文はこれだけです。</p>



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



<p class="wp-block-paragraph">引数を取らないので、カッコの中は空のままにします。引数を渡すとエラーになるので注意してください。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>内容</th></tr></thead><tbody><tr><td>構文</td><td>=NA()</td></tr><tr><td>引数</td><td>なし</td></tr><tr><td>戻り値</td><td>#N/A</td></tr><tr><td>エラー値の意味</td><td>Not Available（情報なし・該当なし）</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc6">=NA() を入力して#N/Aを返す</span></h3>



<p class="wp-block-paragraph">実際にセルに <code>=NA()</code> と入力してみてください。結果は <code>#N/A</code> と表示されます。</p>



<pre class="wp-block-code"><code>A1: =NA()    → #N/A
A2: =NA()*2  → #N/A
A3: =A1+1    → #N/A</code></pre>



<p class="wp-block-paragraph">ここでポイントなのが、<strong>#N/A を含むセルを参照した計算結果も #N/A になる</strong> ことです。エラーが連鎖するので、後続の集計関数（SUM・AVERAGEなど）もエラーになります。これは欠点ではなく、後で紹介するように「未確定データを集計から除外する」用途で活躍する性質です。</p>



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



<p class="wp-block-paragraph">NA関数は古くから提供されており、Excel 2007以降のすべてのバージョンで使えます。Microsoft 365、Excel for Mac、Excel Online でも同じように動きます。互換性を気にせず使える、安心の標準関数ですよ。</p>



<h2 class="wp-block-heading"><span id="toc8">ExcelのNA関数を実務で使う4つのシーン</span></h2>



<p class="wp-block-paragraph">ここからが本題です。NA関数が「実は便利」と気づける4つの実務シーンを紹介します。</p>



<h3 class="wp-block-heading"><span id="toc9">シーン1｜未入力データを「未入力」と明示する</span></h3>



<p class="wp-block-paragraph">入力テンプレートで、まだ入力されていないセルがあったとします。空白のまま <code>*1.1</code> のような計算を続けると、結果が <code>0</code> になって紛らわしいですよね。</p>



<p class="wp-block-paragraph">そんなときは、未入力なら <code>#N/A</code> を返すように IF と組み合わせます。</p>



<pre class="wp-block-code"><code>=IF(A2=&quot;&quot;, NA(), A2*1.1)</code></pre>



<p class="wp-block-paragraph">A2が空白なら <code>#N/A</code>、入力済みなら <code>A2*1.1</code> が表示されます。<code>#N/A</code> が並んでいれば、未入力箇所が一目で分かりますよ。</p>



<p class="wp-block-paragraph">「0と未入力を区別したい」シーンでよく使うパターンです。集計セルもエラーになるので、未入力のまま誤って集計してしまうミスも防げます。</p>



<h3 class="wp-block-heading"><span id="toc10">シーン2｜グラフでデータ抜けに線をつなぐ（プレースホルダー用途）</span></h3>



<p class="wp-block-paragraph">折れ線グラフを作るとき、データが歯抜けだと困った経験はありませんか？空白セルや0が入ると、グラフの見た目が崩れます。</p>



<p class="wp-block-paragraph">NA関数を使うと、<strong>データ抜けの位置で線がつながる</strong> ようにできます。これは折れ線グラフ・面グラフのデータソースに <code>#N/A</code> が含まれると、Excelがそのセルをスキップして前後の点を直接結ぶためです。</p>



<figure class="wp-block-table"><table><thead><tr><th>データの値</th><th>グラフでの挙動</th></tr></thead><tbody><tr><td>空白セル</td><td>プロットされず、線が途切れる</td></tr><tr><td>0</td><td>0として線が落ちる（凹んで見える）</td></tr><tr><td>=NA()</td><td>スキップして前後の点を直接結ぶ</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">たとえば月次売上で、まだ確定していない月のセルに <code>=NA()</code> を入れておくと、その月をまたいで前後の確定月が滑らかにつながります。</p>



<pre class="wp-block-code"><code>1月: 100
2月: 120
3月: =NA()  ← 未確定月
4月: 150</code></pre>



<p class="wp-block-paragraph">このセル設定だと、グラフは1月→2月→4月と線がつながり、3月で凹みません。プレースホルダーとして使う、定番テクニックですよ。</p>



<h3 class="wp-block-heading"><span id="toc11">シーン3｜VLOOKUP・MATCHの結果を分岐させる前処理</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-vlookup/">VLOOKUP関数</a>や<a href="https://mashukabu.com/excel-function-howto-use-match/">MATCH関数</a>は、検索値が見つからないと自動で <code>#N/A</code> を返します。NA関数は、これと同じ「該当なし」のシグナルを意図的に発生させたいときに使います。</p>



<p class="wp-block-paragraph">たとえば、IF文で「特定の条件のときだけ検索を実行し、条件外なら未該当扱いにしたい」場合です。</p>



<pre class="wp-block-code"><code>=IF(B2=&quot;対象&quot;, VLOOKUP(A2, 商品マスタ, 2, FALSE), NA())</code></pre>



<p class="wp-block-paragraph">B2が「対象」のときだけVLOOKUPを実行し、それ以外は <code>#N/A</code> を返します。後続のISNA関数やIFNA関数で「該当なしのセル」をまとめて検出・処理できるので、条件分岐の前処理として便利です。</p>



<p class="wp-block-paragraph">VLOOKUPが出す <code>#N/A</code> も、NA関数が出す <code>#N/A</code> も、ISNAやIFNAは同じ「#N/Aエラー」として扱います。ここが大事なポイントですよ。</p>



<h3 class="wp-block-heading"><span id="toc12">シーン4｜計算前提が満たされていない場合の警告表示</span></h3>



<p class="wp-block-paragraph">複雑な計算式で、特定の前提条件が満たされていないと結果が信頼できない場面があります。そんなときは、計算結果の代わりに <code>#N/A</code> を返して「計算不能」を明示します。</p>



<pre class="wp-block-code"><code>=IF(分母=0, NA(), 分子/分母)</code></pre>



<p class="wp-block-paragraph">分母がゼロの場合、<code>#DIV/0!</code> が出る代わりに <code>#N/A</code> を返します。<code>#N/A</code> を返しておけば、ISNA関数で「計算前提が崩れているセル」だけを後から一括処理できますよね。</p>



<p class="wp-block-paragraph"><code>#DIV/0!</code> のような原因特定型エラーと違い、<code>#N/A</code> は「データが揃っていない」という意味合いを持つので、業務ロジックの分岐として使いやすい性質があります。</p>



<h2 class="wp-block-heading"><span id="toc13">NA関数とIFNA・ISNA・IFERRORの違い（4関数比較表）</span></h2>



<p class="wp-block-paragraph">エラー処理に関する関数は複数あって混乱しがちですよね。役割で整理すると、それぞれの立ち位置がはっきりします。</p>



<h3 class="wp-block-heading"><span id="toc14">役割で整理する4関数の立ち位置</span></h3>



<p class="wp-block-paragraph">エラー処理関数は、大きく4つの役割に分かれます。</p>



<ul class="wp-block-list"><li><strong>エラーを発生させる</strong>: NA関数</li><li><strong>エラーを判定する</strong>: <a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA関数</a></li><li><strong>エラーを置換する（#N/Aだけ）</strong>: <a href="https://mashukabu.com/excel-function-howto-use-ifna/">IFNA関数</a></li><li><strong>エラーを置換する（全エラー）</strong>: <a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数</a></li></ul>



<p class="wp-block-paragraph">NA関数は「エラーを作る側」、残り3つは「エラーを処理する側」と覚えるとシンプルです。</p>



<h3 class="wp-block-heading"><span id="toc15">比較表</span></h3>



<p class="wp-block-paragraph">4関数の特性を一覧で整理します。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>役割</th><th>構文</th><th>主な使い場面</th></tr></thead><tbody><tr><td>NA</td><td>#N/Aを発生させる</td><td>=NA()</td><td>データ未入力フラグ、グラフのプレースホルダー、計算前提エラーの明示</td></tr><tr><td>ISNA</td><td>#N/Aかどうか判定</td><td>=ISNA(値)</td><td>TRUE/FALSEで条件分岐、未入力セルのカウント</td></tr><tr><td>IFNA</td><td>#N/Aを別の値に置換</td><td>=IFNA(値, NAの場合の値)</td><td>VLOOKUPの#N/Aを空白や代替テキストに置換</td></tr><tr><td>IFERROR</td><td>全エラーを別の値に置換</td><td>=IFERROR(値, エラーの場合の値)</td><td>あらゆるエラーを一括で非表示にしたい場合</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IFNAとIFERRORは似ていますが、<strong>IFNAは#N/Aだけ、IFERRORは7種類すべてのエラー</strong> が対象です。「数式ミスは見逃したくないけど、#N/Aだけは隠したい」場合はIFNAが安全ですよ。詳しくは<a href="https://mashukabu.com/excel-if-ifs-iferror-ifna-comparison/">IF・IFS・IFERROR・IFNAの使い分け</a>も合わせてどうぞ。</p>



<h2 class="wp-block-heading"><span id="toc16">NA関数とIFNA・ISNAを組み合わせた実務パターン</span></h2>



<p class="wp-block-paragraph">NA関数の真価は、IFNAやISNAと組み合わせたときに発揮されます。3つの実務パターンを紹介します。</p>



<h3 class="wp-block-heading"><span id="toc17">パターン1｜NA() + IFNA で代替値を表示</span></h3>



<p class="wp-block-paragraph">NA関数で発生させた <code>#N/A</code> を、IFNA関数で読み手に分かる文言に置換するパターンです。</p>



<pre class="wp-block-code"><code>=IFNA(IF(A2=&quot;&quot;, NA(), A2*1.1), &quot;未入力です&quot;)</code></pre>



<p class="wp-block-paragraph">A2が空白なら、内側のNA関数が <code>#N/A</code> を返し、それをIFNA関数が「未入力です」というメッセージに置き換えます。エラーのままだと冷たい印象ですが、メッセージにすれば操作者にやさしい表示になりますよね。</p>



<h3 class="wp-block-heading"><span id="toc18">パターン2｜NA() + ISNA で条件分岐</span></h3>



<p class="wp-block-paragraph">ISNA関数は「セルが #N/A かどうか」を TRUE/FALSE で返します。NA関数で発生させた <code>#N/A</code> を別セルで検知して、自動で次のアクションを起こせます。</p>



<pre class="wp-block-code"><code>A列: =IF(B2=&quot;&quot;, NA(), B2*1.1)
C列: =IF(ISNA(A2), &quot;要確認&quot;, &quot;OK&quot;)</code></pre>



<p class="wp-block-paragraph">A列が <code>#N/A</code> のとき、C列に「要確認」と表示されます。データ入力チェックリストとしても活用できる、便利な組み合わせです。</p>



<h3 class="wp-block-heading"><span id="toc19">パターン3｜VLOOKUPの#N/Aを任意のセルに伝播させる</span></h3>



<p class="wp-block-paragraph">VLOOKUPで「該当なし」だった場合に、別の関連セルにも <code>#N/A</code> を反映させたいケースがあります。これも NA関数とIFNAの合わせ技で解決できます。</p>



<pre class="wp-block-code"><code>B列: =VLOOKUP(A2, マスタ, 2, FALSE)
C列: =IF(ISNA(B2), NA(), B2*1.1)</code></pre>



<p class="wp-block-paragraph">B列のVLOOKUPで該当なしになると、C列にもNA関数で <code>#N/A</code> が伝播します。後続の合計や平均が誤った値で計算されるのを防げますよ。</p>



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



<p class="wp-block-paragraph">NA関数はシンプルですが、ちょっとした書き間違いでエラーが出ることがあります。よくある3つのケースを押さえておきましょう。</p>



<h3 class="wp-block-heading"><span id="toc21">構文ミス（NA と入力すると#NAME?エラー）</span></h3>



<p class="wp-block-paragraph">最も多いミスが、カッコを忘れて <code>=NA</code> だけ入力してしまうケースです。これだとExcelが関数として認識せず、<code>#NAME?</code> エラーが出ます。</p>



<pre class="wp-block-code"><code>=NA   → #NAME?エラー
=NA() → #N/A（正しい）</code></pre>



<p class="wp-block-paragraph">NA関数は引数を取らない関数ですが、カッコ自体は省略できません。「<strong>カッコまで含めて関数名</strong>」と覚えておくと忘れにくいですよ。</p>



<h3 class="wp-block-heading"><span id="toc22">#N/A以外のエラーを返したい場合</span></h3>



<p class="wp-block-paragraph">NA関数が返せるのは <code>#N/A</code> だけです。<code>#VALUE!</code> や <code>#DIV/0!</code> を意図的に返したい場合、それぞれ専用の関数や数式で発生させます。</p>



<figure class="wp-block-table"><table><thead><tr><th>出したいエラー</th><th>発生方法</th></tr></thead><tbody><tr><td>#N/A</td><td>=NA()</td></tr><tr><td>#DIV/0!</td><td>=1/0</td></tr><tr><td>#VALUE!</td><td>文字列を数値計算（例: =&#8221;a&#8221;+1）</td></tr><tr><td>#REF!</td><td>削除済みセルの参照</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">ただし、業務で意図的にエラーを発生させる用途なら <code>#N/A</code> がもっとも汎用性が高いです。NA関数で十分なケースが大半ですよ。</p>



<h3 class="wp-block-heading"><span id="toc23">グラフで線がつながらない場合のチェック</span></h3>



<p class="wp-block-paragraph">NA関数で <code>#N/A</code> を入れたのに、折れ線グラフが途切れたままになる場合は、次の3点をチェックしてください。</p>



<ul class="wp-block-list"><li>グラフのデータソースが <code>#N/A</code> を含むセルを正しく参照しているか</li><li>「空白セル」のオプションが「データ要素を線で結ぶ」になっているか</li><li>折れ線グラフ・面グラフ以外（棒グラフなど）を使っていないか</li></ul>



<p class="wp-block-paragraph">特に2つ目はよく見落とすポイントです。グラフを右クリック→「データの選択」→「非表示および空白のセル」から設定できますよ。</p>



<h2 class="wp-block-heading"><span id="toc24">まとめ｜NA関数で「エラーを味方にする」数式設計</span></h2>



<p class="wp-block-paragraph">ExcelのNA関数は、<code>=NA()</code> と書くだけで <code>#N/A</code> エラーを発生させるシンプルな関数です。「エラーを出す関数なんて何に使うの？」と思いがちですが、4つの実務シーンで活躍する隠れた便利関数なんですよね。</p>



<p class="wp-block-paragraph">今回紹介した4つの活用シーンを振り返りましょう。</p>



<ul class="wp-block-list"><li><strong>シーン1</strong>: 未入力データを <code>#N/A</code> で明示してミスを防ぐ</li><li><strong>シーン2</strong>: グラフで未確定データの位置をスキップして線をつなぐ</li><li><strong>シーン3</strong>: VLOOKUP・MATCHと組み合わせて「該当なし」を意図的に発生</li><li><strong>シーン4</strong>: 計算前提が崩れているセルを後で一括検出できるようマーキング</li></ul>



<p class="wp-block-paragraph">そして、IFNA・ISNA・IFERRORと組み合わせれば、エラー処理の幅が一気に広がります。「エラーを発生させる→検知する→置換する」の流れを設計できると、堅牢な数式が書けるようになりますよ。</p>



<p class="wp-block-paragraph">エラー処理関連の関数についてもっと知りたい方は、関連記事もぜひチェックしてみてください。</p>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-ifna/">ExcelのIFNA関数の使い方｜#N/Aだけを処理</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isna/">ExcelのISNA関数の使い方｜#N/Aエラーだけをピンポイント判定</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-iferror/">ExcelのIFERROR関数の使い方｜エラー値を別の値に置き換える</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-vlookup/">ExcelのVLOOKUP関数の使い方｜表から検索して値を取り出す</a></li><li><a href="https://mashukabu.com/excel-if-ifs-iferror-ifna-comparison/">Excel IF・IFS・IFERROR・IFNAの使い分け完全ガイド</a></li></ul>



<p class="wp-block-paragraph">NA関数を使いこなして、「<strong>エラーを味方にする</strong>」数式設計をぜひ試してみてくださいね。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-na/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのISDATE関数の使い方｜セルが日付かどうかを判定する完全ガイド</title>
		<link>https://mashukabu.com/spreadsheet-isdate-function/</link>
					<comments>https://mashukabu.com/spreadsheet-isdate-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sun, 22 Mar 2026 01:13:48 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[ISDATE]]></category>
		<category><![CDATA[IS関数]]></category>
		<category><![CDATA[Sheets独自]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[データ検証]]></category>
		<category><![CDATA[日付判定]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4999</guid>

					<description><![CDATA[GoogleスプレッドシートのISDATE関数の使い方を初心者向けに解説。日付判定の基本構文から、IF関数との組み合わせ、データ入力チェック、FILTER関数による日付抽出、ExcelのISNUMBER関数による代替まで実例付きで紹介します。Excelにはない独自関数です。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「このセルに入っている値、日付として認識されている？」と気になったことはありませんか。</p>



<p class="wp-block-paragraph">見た目は日付っぽいのに、計算するとエラーになる。並べ替えたら順番がバラバラ。フィルターをかけても日付として絞り込めない。こうしたトラブルは、セルの値が<strong>本当に日付データ型</strong>かどうかを確認すれば防げます。</p>



<p class="wp-block-paragraph">スプレッドシートのISDATE関数を使えば、セルの値が日付かどうかを一発で判定できますよ。</p>



<p class="wp-block-paragraph">この記事では、ISDATE関数の基本構文から、IF関数・FILTER関数・ARRAYFORMULA関数との組み合わせ、データ入力チェック、Excelとの違いまでまとめて紹介します。</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">スプレッドシートのISDATE関数とは？</a></li><li><a href="#toc2" tabindex="0">ISDATE関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">ISDATE関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">値の種類ごとの判定結果</a></li><li><a href="#toc7" tabindex="0">セル参照で判定する</a></li><li><a href="#toc8" tabindex="0">直接値を判定する</a></li><li><a href="#toc9" tabindex="0">DATE関数の結果を判定する</a></li></ol></li><li><a href="#toc10" tabindex="0">ISDATE関数の実践的な使い方・応用例</a><ol><li><a href="#toc11" tabindex="0">IF関数と組み合わせて日付チェックする</a></li><li><a href="#toc12" tabindex="0">入力データのバリデーションに使う</a></li><li><a href="#toc13" tabindex="0">条件付き書式と組み合わせて目立たせる</a></li><li><a href="#toc14" tabindex="0">FILTER関数で日付データだけ抽出する</a></li><li><a href="#toc15" tabindex="0">ARRAYFORMULA関数で一括判定する</a></li><li><a href="#toc16" tabindex="0">DATEVALUE関数と組み合わせて文字列を日付に変換する</a></li></ol></li><li><a href="#toc17" tabindex="0">ISDATE関数でよくあるエラーと対処法</a></li><li><a href="#toc18" tabindex="0">ExcelとのISDATE関数の違い</a></li><li><a href="#toc19" tabindex="0">ISDATE関数とISNUMBER関数の違い</a></li><li><a href="#toc20" tabindex="0">ISDATE関数のよくある質問（FAQ）</a><ol><li><a href="#toc21" tabindex="0">Q. 「2026-03-22」と「2026/03/22」で結果が変わりますか？</a></li><li><a href="#toc22" tabindex="0">Q. ISDATE関数で時刻だけのセルもTRUEになるのを防ぎたい</a></li><li><a href="#toc23" tabindex="0">Q. ISDATE関数の処理が重いです。軽くする方法は？</a></li><li><a href="#toc24" tabindex="0">Q. ISDATE関数とDATEVALUE関数はどう使い分ける？</a></li><li><a href="#toc25" tabindex="0">Q. ISDATE関数の結果をTRUE/FALSEではなく日本語で表示したい</a></li><li><a href="#toc26" tabindex="0">Q. 株価やレートのデータを取り込んだら日付列がFALSEだらけになります</a></li></ol></li><li><a href="#toc27" tabindex="0">まとめ</a><ol><li><a href="#toc28" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのISDATE関数とは？</span></h2>



<p class="wp-block-paragraph">ISDATE関数（読み方: いず でいと）は、<strong>指定した値が日付かどうかを判定する関数</strong>です。</p>



<p class="wp-block-paragraph">名前は英語の「IS DATE（日付ですか？）」からきています。対象が日付データであれば <code>TRUE</code> を返し、日付でなければ <code>FALSE</code> を返します。日付だけでなく、日時（日付+時刻）の値も <code>TRUE</code> になります。</p>



<p class="wp-block-paragraph">ISDATE関数にできることをまとめると、次のとおりです。</p>



<ul class="wp-block-list"><li>セルの値が日付データかどうかを <code>TRUE</code>/<code>FALSE</code> で返す</li><li><a href="https://mashukabu.com/spreadsheet-if-function/">IF関数</a>と組み合わせて日付・非日付で処理を分岐する</li><li>入力データのバリデーション（日付チェック）に使う</li><li><a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>で日付データだけ抽出する</li><li><a href="https://mashukabu.com/spreadsheet-countif-function/">COUNTIF関数</a>と組み合わせて不正データの件数をカウントする</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>ISDATE関数は<strong>Googleスプレッドシート独自の関数</strong>です。Excelには存在しません。Excelでの代替方法は記事の後半で詳しく解説しています。</p></blockquote>



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



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



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



<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><th>説明</th></tr></thead><tbody><tr><td>値</td><td>必須</td><td>日付かどうか判定したい値またはセル参照</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は1つだけです。省略はできません。セル参照・直接値・数式の結果のいずれも指定できます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>ISDATE関数が判定するのは「セルの値が日付型かどうか」です。見た目が日付っぽい文字列（例: <code>"2026/3/22"</code> のような半角スラッシュ区切り文字列）でも、スプレッドシートが日付型として認識していなければ <code>FALSE</code> になります。</p></blockquote>



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



<p class="wp-block-paragraph">まずはシンプルな例で動きを確認してみましょう。</p>



<h3 class="wp-block-heading"><span id="toc6">値の種類ごとの判定結果</span></h3>



<p class="wp-block-paragraph">さまざまなデータをISDATE関数で判定すると、次のような結果になります。</p>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>A1 の中身</th><th>結果</th><th>理由</th></tr></thead><tbody><tr><td><code>=ISDATE(A1)</code></td><td>日付「2026/3/22」</td><td><strong>TRUE</strong></td><td>スプレッドシートが日付として認識している</td></tr><tr><td><code>=ISDATE(A1)</code></td><td>数値「100」</td><td><strong>FALSE</strong></td><td>数値は日付ではない</td></tr><tr><td><code>=ISDATE(A1)</code></td><td>文字列「こんにちは」</td><td><strong>FALSE</strong></td><td>文字列は日付ではない</td></tr><tr><td><code>=ISDATE(A1)</code></td><td>日時「2026/3/22 10:30」</td><td><strong>TRUE</strong></td><td>日時も日付型として扱われる</td></tr><tr><td><code>=ISDATE(A1)</code></td><td>空白</td><td><strong>FALSE</strong></td><td>空白セルは日付ではない</td></tr><tr><td><code>=ISDATE(A1)</code></td><td>文字列「3月22日」</td><td><strong>FALSE</strong></td><td>表示形式が日付風でも文字列ならFALSE</td></tr><tr><td><code>=ISDATE(A1)</code></td><td>エラー（#N/Aなど）</td><td><strong>エラー伝播</strong></td><td>エラー値はそのまま伝播する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">ポイントは「見た目」ではなく「データ型」で判定されることです。</p>



<h3 class="wp-block-heading"><span id="toc7">セル参照で判定する</span></h3>



<p class="wp-block-paragraph">セル参照を使えば、特定のセルの値が日付かどうかを確認できます。</p>



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



<p class="wp-block-paragraph">A1 にカレンダーから入力した日付や、<code>2026/3/22</code> のように自動的に日付認識された値が入っていれば <code>TRUE</code> を返します。文字列として手入力されたものは <code>FALSE</code> です。</p>



<h3 class="wp-block-heading"><span id="toc8">直接値を判定する</span></h3>



<p class="wp-block-paragraph">セル参照を使わず、ISDATE関数のカッコ内に値を直接書くこともできます。</p>



<pre class="wp-block-code"><code>=ISDATE(&quot;2026/3/22&quot;)</code></pre>



<p class="wp-block-paragraph">ただし、ダブルクォートで囲んだ値は<strong>文字列として扱われる</strong>ため、この式は <code>FALSE</code> を返します。直接値を使う場合は、後述の <a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数</a> で日付を作るのが確実です。</p>



<h3 class="wp-block-heading"><span id="toc9">DATE関数の結果を判定する</span></h3>



<p class="wp-block-paragraph">ISDATE関数の引数に数式を直接入れることもできます。</p>



<pre class="wp-block-code"><code>=ISDATE(DATE(2026,3,22))</code></pre>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数</a>は日付型の値を返すので、この結果は <code>TRUE</code> です。同じく <a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数</a> や <a href="https://mashukabu.com/spreadsheet-now-function/">NOW関数</a> の結果もすべて <code>TRUE</code> になります。</p>



<h2 class="wp-block-heading"><span id="toc10">ISDATE関数の実践的な使い方・応用例</span></h2>



<h3 class="wp-block-heading"><span id="toc11">IF関数と組み合わせて日付チェックする</span></h3>



<p class="wp-block-paragraph">データ入力が日付かどうかに応じてラベルを付けたい場面で使えます。</p>



<pre class="wp-block-code"><code>=IF(ISDATE(A2),&quot;OK&quot;,&quot;日付を入力してください&quot;)</code></pre>



<p class="wp-block-paragraph">A2 が日付なら「OK」と表示します。日付でなければ「日付を入力してください」と表示されます。</p>



<p class="wp-block-paragraph">申込フォームの回答チェックや、勤怠表の入力チェックに便利ですよ。複数条件を組みたい場合は <a href="https://mashukabu.com/spreadsheet-ifs-function/">IFS関数</a> と組み合わせると見通しがよくなります。</p>



<h3 class="wp-block-heading"><span id="toc12">入力データのバリデーションに使う</span></h3>



<p class="wp-block-paragraph">複数人で共有するシートでは、日付欄に文字列やおかしな値が入ることがあります。ISDATE関数で一括チェックできます。</p>



<ol class="wp-block-list"><li>B列に <code>=ISDATE(A2)</code> を入力します</li><li>下方向にコピーします</li><li><code>FALSE</code> が表示された行が「日付として認識されていない」データです</li></ol>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-countif-function/">COUNTIF関数</a>と組み合わせれば、不正データの件数もすぐわかります。</p>



<pre class="wp-block-code"><code>=COUNTIF(B2:B100,FALSE)</code></pre>



<p class="wp-block-paragraph">これで日付として認識されていないセルの数が出ます。データクレンジングの第一歩として活用してみてください。</p>



<h3 class="wp-block-heading"><span id="toc13">条件付き書式と組み合わせて目立たせる</span></h3>



<p class="wp-block-paragraph">ISDATE関数は条件付き書式のカスタム数式にも使えます。日付以外のセルだけ赤く塗ると、ミスがひと目で見つかります。</p>



<ol class="wp-block-list"><li>範囲 A2:A100 を選択する</li><li>「表示形式」→「条件付き書式」→「カスタム数式」を選ぶ</li><li>数式に <code>=NOT(ISDATE(A2))</code> を入力する</li><li>背景色を赤に設定する</li></ol>



<p class="wp-block-paragraph">これで「日付ではない＝赤」になります。チェック専用列を増やさずに済むので、シートがスッキリしますよ。</p>



<h3 class="wp-block-heading"><span id="toc14">FILTER関数で日付データだけ抽出する</span></h3>



<p class="wp-block-paragraph">日付が入っている行だけを取り出したい場面があります。<a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>と組み合わせると便利です。</p>



<pre class="wp-block-code"><code>=FILTER(A2:C20,ISDATE(A2:A20))</code></pre>



<p class="wp-block-paragraph">A列の値が日付のデータだけが抽出されます。日付と文字列が混在するリストの整理に役立ちますよ。</p>



<p class="wp-block-paragraph">逆に「日付<strong>ではない</strong>行」だけ抽出したい場合は、<code>NOT(ISDATE(...))</code> でラップします。</p>



<pre class="wp-block-code"><code>=FILTER(A2:C20,NOT(ISDATE(A2:A20)))</code></pre>



<p class="wp-block-paragraph">不正データの行だけを取り出せるので、修正担当者にそのまま渡せます。</p>



<h3 class="wp-block-heading"><span id="toc15">ARRAYFORMULA関数で一括判定する</span></h3>



<p class="wp-block-paragraph">大量のデータを一括で判定したいときは、<a href="https://mashukabu.com/spreadsheet-arrayformula-function/">ARRAYFORMULA関数</a>と組み合わせます。</p>



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



<p class="wp-block-paragraph">A2からA100まで、すべてのセルに対して日付判定が一括で実行されます。1つずつ数式をコピーする手間が省けます。データの追加に強い「動的な数式」を作りたいときの定番パターンです。</p>



<h3 class="wp-block-heading"><span id="toc16">DATEVALUE関数と組み合わせて文字列を日付に変換する</span></h3>



<p class="wp-block-paragraph">「ISDATE で <code>FALSE</code> だったら、<a href="https://mashukabu.com/spreadsheet-datevalue-function/">DATEVALUE関数</a> で日付に変換する」という処理もよく使われます。</p>



<pre class="wp-block-code"><code>=IF(ISDATE(A2),A2,DATEVALUE(A2))</code></pre>



<p class="wp-block-paragraph">A2 がすでに日付ならそのまま、文字列なら日付に変換した値を返します。Webからコピーしてきた日付文字列を一気に正規化したいときに便利です。</p>



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



<p class="wp-block-paragraph">ISDATE関数で「思った結果にならない」ケースをまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>日付っぽいのに <code>FALSE</code> になる</td><td>セルの値が文字列として入力されている</td><td>セルを選択して「表示形式」→「数値」→「日付」に変更する。または<a href="https://mashukabu.com/spreadsheet-datevalue-function/">DATEVALUE関数</a>で日付型に変換する</td></tr><tr><td>数値なのに <code>TRUE</code> になる</td><td>セルの表示形式が「日付」に設定されている</td><td>表示形式を「数値」に戻す。ISDATE関数はセルの内部型を見るため、表示形式によっては数値でも <code>TRUE</code> になる</td></tr><tr><td>時刻だけ入力したセルが <code>TRUE</code> になる</td><td>時刻のみ（例: <code>10:30</code>）も内部では日付+時刻として扱われる</td><td>時刻のみのセルもTRUEになることがある。日付だけを判定したい場合は <code>=AND(ISDATE(A1),A1>=DATE(2000,1,1))</code> のように範囲を絞る</td></tr><tr><td>空白セルで <code>FALSE</code> になる</td><td>空白は日付ではない</td><td>仕様どおりの動作。空白を許容したい場合は <code>=IF(A1="","未入力",IF(ISDATE(A1),"OK","日付ではありません"))</code></td></tr><tr><td><code>2026/13/01</code> で <code>FALSE</code> になる</td><td>存在しない月のため、スプレッドシートが日付として認識しない</td><td>正しい日付を入力し直す</td></tr><tr><td>インポートしたCSVの日付が全部 <code>FALSE</code></td><td>テキスト形式で取り込まれている</td><td>A列を選択し「データ」→「列を分割」→「自動検出」、または<a href="https://mashukabu.com/spreadsheet-datevalue-function/">DATEVALUE関数</a>で一括変換</td></tr><tr><td><code>#N/A</code> などのエラーが返る</td><td>引数のセルがエラー値</td><td><a href="https://mashukabu.com/spreadsheet-iferror-function/">IFERROR関数</a>でラップする: <code>=IFERROR(ISDATE(A1),FALSE)</code></td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc18">ExcelとのISDATE関数の違い</span></h2>



<p class="wp-block-paragraph">ISDATE関数は<strong>Googleスプレッドシート独自の関数</strong>です。Excelには存在しません。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>Googleスプレッドシート</th><th>Excel</th></tr></thead><tbody><tr><td>ISDATE関数</td><td>使える</td><td><strong>存在しない</strong></td></tr><tr><td>構文</td><td><code>=ISDATE(値)</code></td><td>―</td></tr><tr><td>代替方法</td><td>―</td><td>ISNUMBER関数で代用する</td></tr><tr><td>結果がエラー値の挙動</td><td>エラー伝播</td><td>―</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Excelで同じことをしたい場合は、<a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER関数</a>を使って代用できます。</p>



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



<p class="wp-block-paragraph">日付はExcel内部でもシリアル値（数値）として管理されています。そのため、ISNUMBER関数が <code>TRUE</code> を返せば日付の可能性があります。</p>



<p class="wp-block-paragraph">ただし、ISNUMBER関数は普通の数値でも <code>TRUE</code> を返すため、日付だけを正確に判定することはできません。より厳密に日付かどうかを判定したい場合は、次の数式を使います。</p>



<pre class="wp-block-code"><code>=AND(ISNUMBER(A1),A1&gt;=1,A1&lt;=2958465)</code></pre>



<p class="wp-block-paragraph">この数式は、数値でありかつExcelの日付範囲（1900/1/1～9999/12/31）に収まるかを判定します。完璧ではありませんが、ISDATEの代わりとして実用的ですよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>Googleスプレッドシートで作成したISDATE関数入りのファイルをExcelで開くと、ISDATE関数の部分は <code>#NAME?</code> エラーになります。Excel環境との共有が前提のファイルでは、ISNUMBER関数による代替式を使いましょう。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc19">ISDATE関数とISNUMBER関数の違い</span></h2>



<p class="wp-block-paragraph">ISDATE関数と<a href="https://mashukabu.com/spreadsheet-isnumber-function/">ISNUMBER関数</a>は、どちらもデータ型を判定するIS系関数です。判定する対象が異なります。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>ISDATE関数</th><th>ISNUMBER関数</th></tr></thead><tbody><tr><td>判定対象</td><td>日付型かどうか</td><td>数値型かどうか</td></tr><tr><td>日付セルに対して</td><td><code>TRUE</code></td><td><code>TRUE</code>（日付はシリアル値=数値）</td></tr><tr><td>数値セルに対して</td><td><code>FALSE</code></td><td><code>TRUE</code></td></tr><tr><td>文字列セルに対して</td><td><code>FALSE</code></td><td><code>FALSE</code></td></tr><tr><td>Excel互換</td><td>なし（Sheets独自）</td><td>あり</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">注目すべきポイントは、日付セルに対する動作の違いです。ISNUMBER関数は日付セルでも <code>TRUE</code> を返します。日付はスプレッドシート内部で数値（シリアル値）として管理されているためです。</p>



<p class="wp-block-paragraph">「日付かどうか」だけを判定したい場合はISDATE関数を使いましょう。「数値全般（日付含む）かどうか」を判定したい場合はISNUMBER関数が適しています。</p>



<p class="wp-block-paragraph">ほかのIS系関数として <a href="https://mashukabu.com/spreadsheet-istext-function/">ISTEXT関数</a>（文字列判定）、<a href="https://mashukabu.com/spreadsheet-isblank-function/">ISBLANK関数</a>（空白判定）も合わせて覚えておくと、データ検証のレパートリーが広がります。</p>



<h2 class="wp-block-heading"><span id="toc20">ISDATE関数のよくある質問（FAQ）</span></h2>



<h3 class="wp-block-heading"><span id="toc21">Q. 「2026-03-22」と「2026/03/22」で結果が変わりますか？</span></h3>



<p class="wp-block-paragraph">スプレッドシートの設定ロケール（言語と地域）によって変わります。日本ロケールでは両方とも自動的に日付として認識されることが多いですが、英語ロケールでは <code>2026-03-22</code> が引き算と解釈されるケースがあります。「ファイル」→「設定」→「言語と地域」を日本に揃えておくと安全です。</p>



<h3 class="wp-block-heading"><span id="toc22">Q. ISDATE関数で時刻だけのセルもTRUEになるのを防ぎたい</span></h3>



<p class="wp-block-paragraph">時刻のみ（例: <code>10:30:00</code>）はシリアル値として 0以上1未満の小数になります。次の式で「整数部分があるか」をチェックすれば、純粋な時刻を除外できます。</p>



<pre class="wp-block-code"><code>=AND(ISDATE(A1),INT(A1)&gt;0)</code></pre>



<h3 class="wp-block-heading"><span id="toc23">Q. ISDATE関数の処理が重いです。軽くする方法は？</span></h3>



<p class="wp-block-paragraph">ISDATE関数自体は軽量ですが、何千行に対して個別の数式を入れると再計算が遅くなります。<a href="https://mashukabu.com/spreadsheet-arrayformula-function/">ARRAYFORMULA関数</a>でまとめて1つの数式にする、または列ごとフィルターで対象を絞ってから判定するのがおすすめです。</p>



<h3 class="wp-block-heading"><span id="toc24">Q. ISDATE関数とDATEVALUE関数はどう使い分ける？</span></h3>



<p class="wp-block-paragraph">ISDATE関数は「<strong>判定</strong>するだけ」、<a href="https://mashukabu.com/spreadsheet-datevalue-function/">DATEVALUE関数</a>は「<strong>変換</strong>する」関数です。文字列を日付に変えたいときはDATEVALUE、現状の型を確認したいときはISDATEを使います。両者を <code>IF</code> で組み合わせると「すでに日付ならそのまま、違うなら変換」という処理が書けます。</p>



<h3 class="wp-block-heading"><span id="toc25">Q. ISDATE関数の結果をTRUE/FALSEではなく日本語で表示したい</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-if-function/">IF関数</a>でラップするのが定番です。</p>



<pre class="wp-block-code"><code>=IF(ISDATE(A1),&quot;日付&quot;,&quot;日付ではない&quot;)</code></pre>



<p class="wp-block-paragraph">これで <code>TRUE</code>/<code>FALSE</code> ではなく日本語ラベルで表示できます。社内の共有シートでは日本語表示にしておくと、他の人にも伝わりやすいですよ。</p>



<h3 class="wp-block-heading"><span id="toc26">Q. 株価やレートのデータを取り込んだら日付列がFALSEだらけになります</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-googlefinance-function/">GOOGLEFINANCE関数</a>や外部CSVから取り込んだ日付は、まれにテキストとして扱われることがあります。<code>DATEVALUE</code> で正規化するか、列を選択して「データ」→「列を分割」→「自動検出」で再認識させてください。</p>



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



<p class="wp-block-paragraph">ISDATE関数は、セルの値が日付かどうかを判定するシンプルな関数です。</p>



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



<ul class="wp-block-list"><li>構文は <code>=ISDATE(値)</code> で、引数は1つだけ</li><li>日付型なら <code>TRUE</code>、それ以外は <code>FALSE</code> を返す</li><li>「見た目」ではなく「データ型」で判定される</li><li>日時（日付+時刻）の値も <code>TRUE</code> になる</li><li><a href="https://mashukabu.com/spreadsheet-if-function/">IF関数</a>と組み合わせて入力データのバリデーションに使うのが定番</li><li><a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>や<a href="https://mashukabu.com/spreadsheet-arrayformula-function/">ARRAYFORMULA関数</a>との組み合わせも便利</li><li>条件付き書式の「カスタム数式」でミスを色分け表示できる</li><li><strong>Googleスプレッドシート独自の関数</strong>でExcelには存在しない</li><li>Excelでの代替は<a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER関数</a>を使う</li></ul>



<p class="wp-block-paragraph">まずは <code>=ISDATE(A1)</code> で、セルの値が日付として認識されているか確認してみてください。日付計算がうまくいかないときの「最初の一手」として覚えておくと、データクレンジングのスピードがぐっと上がりますよ。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc28">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/spreadsheet-isnumber-function/">スプレッドシートのISNUMBER関数の使い方｜数値判定</a></li><li><a href="https://mashukabu.com/spreadsheet-istext-function/">スプレッドシートのISTEXT関数の使い方｜テキスト判定</a></li><li><a href="https://mashukabu.com/spreadsheet-isblank-function/">スプレッドシートのISBLANK関数の使い方｜空白判定</a></li><li><a href="https://mashukabu.com/spreadsheet-datevalue-function/">スプレッドシートのDATEVALUE関数の使い方｜文字列→日付変換</a></li><li><a href="https://mashukabu.com/spreadsheet-date-function/">スプレッドシートのDATE関数の使い方｜月末日・Nヶ月後も自動計算</a></li><li><a href="https://mashukabu.com/spreadsheet-filter-function/">スプレッドシートのFILTER関数の使い方｜条件で抽出する完全ガイド</a></li><li><a href="https://mashukabu.com/spreadsheet-arrayformula-function/">スプレッドシートのARRAYFORMULA関数の使い方｜一括処理の決定版</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ExcelのISNUMBER関数の使い方｜数値と文字列型数字の見分け方も解説</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-isdate-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのTYPE関数の使い方｜データ型取得</title>
		<link>https://mashukabu.com/spreadsheet-type-function/</link>
					<comments>https://mashukabu.com/spreadsheet-type-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sun, 22 Mar 2026 01:13:32 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[ISNUMBER]]></category>
		<category><![CDATA[IS関数]]></category>
		<category><![CDATA[TYPE]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[データ型]]></category>
		<category><![CDATA[データ検証]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4993</guid>

					<description><![CDATA[GoogleスプレッドシートのTYPE関数の使い方を初心者向けに解説。データ型を数値コードで取得する基本構文から、IF関数との組み合わせ、データ検証、ISNUMBERなどIS系関数との違い、Excelとの相違点まで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「このセルに入っているのは数値？ テキスト？」と手作業で確認していませんか。</p>



<p class="wp-block-paragraph">数件ならセルをクリックすれば書式バーの右寄せ・左寄せでだいたい見分けがつきますが、データが数百行になると一つひとつ目で追うのは現実的ではありません。</p>



<p class="wp-block-paragraph">数値に見えて実はテキストだった、というミスは集計エラーや SUM 関数の結果がゼロになる原因になりがちですよね。そんなときに便利なのが<strong>TYPE関数</strong>です。</p>



<p class="wp-block-paragraph">この記事では、TYPE関数の基本から実務で役立つ活用パターン、よくあるエラーの対処法、ISNUMBER関数などIS系関数との使い分けまでまとめて紹介します。データチェックの作業をぐっと効率化できますよ。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-3" checked><label class="toc-title" for="toc-checkbox-3">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">スプレッドシートのTYPE関数とは？</a></li><li><a href="#toc2" tabindex="0">TYPE関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">TYPE関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">値の種類ごとの判定結果</a></li><li><a href="#toc7" tabindex="0">セル参照で確認する</a></li><li><a href="#toc8" tabindex="0">空白セルの場合</a></li></ol></li><li><a href="#toc9" tabindex="0">TYPE関数の実践的な使い方・応用例</a><ol><li><a href="#toc10" tabindex="0">IF関数と組み合わせてデータ型を日本語で表示する</a></li><li><a href="#toc11" tabindex="0">数値であるべきセルにテキストが混入していないかチェックする</a></li><li><a href="#toc12" tabindex="0">ARRAYFORMULA と組み合わせて列全体を一括チェックする</a></li><li><a href="#toc13" tabindex="0">条件付き書式でテキスト混入を可視化する</a></li><li><a href="#toc14" tabindex="0">エラー値の検出に使う</a></li></ol></li><li><a href="#toc15" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc16" tabindex="0">TYPE関数とIS系関数の使い分け</a></li><li><a href="#toc17" tabindex="0">Excelとの違い</a></li><li><a href="#toc18" tabindex="0">TYPE関数のFAQ</a><ol><li><a href="#toc19" tabindex="0">Q1. TYPE関数は数式そのものの種類を判定できますか？</a></li><li><a href="#toc20" tabindex="0">Q2. なぜ空白セルで 1（数値）が返るのですか？</a></li><li><a href="#toc21" tabindex="0">Q3. 文字列の数字（&#8221;100&#8243; など）を数値に変換するにはどうすればよいですか？</a></li><li><a href="#toc22" tabindex="0">Q4. ARRAYFORMULA で TYPE 関数を使うときの注意点は？</a></li><li><a href="#toc23" tabindex="0">Q5. 数値か日付かを区別したいときは？</a></li><li><a href="#toc24" tabindex="0">Q6. TYPE関数の結果を条件付き書式で活用できますか？</a></li></ol></li><li><a href="#toc25" tabindex="0">まとめ</a><ol><li><a href="#toc26" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのTYPE関数とは？</span></h2>



<p class="wp-block-paragraph">TYPE関数は、<strong>指定した値のデータ型を数値コードで返す関数</strong>です。</p>



<p class="wp-block-paragraph">セルの中身が数値なのかテキストなのか、論理値なのかエラーなのかを 1 桁から 2 桁の番号で教えてくれます。</p>



<p class="wp-block-paragraph">TYPE関数が返す数値コードは次の5種類です。</p>



<figure class="wp-block-table"><table><thead><tr><th>返り値</th><th>データ型</th><th>具体例</th></tr></thead><tbody><tr><td>1</td><td>数値</td><td>100、3.14、日付（シリアル値）、時刻</td></tr><tr><td>2</td><td>テキスト</td><td>&#8220;こんにちは&#8221;、&#8221;123&#8243;（文字列の数字）、空文字 &#8220;&#8221;</td></tr><tr><td>4</td><td>論理値</td><td>TRUE、FALSE</td></tr><tr><td>16</td><td>エラー値</td><td>#VALUE!、#REF!、#N/A、#DIV/0! など</td></tr><tr><td>64</td><td>配列</td><td>{1,2,3}、ARRAYFORMULA の結果</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">TYPE関数にできることをまとめると、次のとおりです。</p>



<ul class="wp-block-list"><li>セルのデータ型を数値コード（1/2/4/16/64）で返す</li><li>IF関数やSWITCH関数と組み合わせてデータ型ごとに処理を分岐する</li><li>入力データの検証（数値であるべきセルにテキストが入っていないかチェック）</li><li>エラー値の検出と分類</li><li>条件付き書式と組み合わせて型違いのセルをハイライト</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>TYPE関数はGoogleスプレッドシートの全バージョンで使えます。Excelにも同名の関数があり、返り値のコードも完全に同じなので、ファイルのやり取りでも安心です。</p></blockquote>



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



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



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



<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><th>説明</th></tr></thead><tbody><tr><td>値</td><td>必須</td><td>データ型を調べたい値、セル参照、または数式の結果</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は1つだけです。省略はできません。セル参照・直接値・数式の結果のいずれも指定できます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>TYPE関数はエラー値を渡しても自身はエラーにならず、必ず 16 を返します。<code><a href="https://mashukabu.com/spreadsheet-iserror-function/">ISERROR関数</a></code> と違い、エラーの種類にかかわらず一律で検出できますよ。エラー処理の前段として使うと数式がシンプルになります。</p></blockquote>



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



<p class="wp-block-paragraph">まずはシンプルな例で動きを確認してみましょう。実際にセルに入力すると感覚がつかめます。</p>



<h3 class="wp-block-heading"><span id="toc6">値の種類ごとの判定結果</span></h3>



<p class="wp-block-paragraph">さまざまなデータをTYPE関数で調べると、次のような結果になります。</p>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>結果</th><th>理由</th></tr></thead><tbody><tr><td>=TYPE(100)</td><td>1</td><td>整数の数値</td></tr><tr><td>=TYPE(3.14)</td><td>1</td><td>小数の数値</td></tr><tr><td>=TYPE(&#8220;こんにちは&#8221;)</td><td>2</td><td>テキスト</td></tr><tr><td>=TYPE(&#8220;123&#8221;)</td><td>2</td><td>文字列として入力された数字</td></tr><tr><td>=TYPE(TRUE)</td><td>4</td><td>論理値</td></tr><tr><td>=TYPE(#N/A)</td><td>16</td><td>エラー値</td></tr><tr><td>=TYPE({1,2,3})</td><td>64</td><td>配列リテラル</td></tr><tr><td>=TYPE(TODAY())</td><td>1</td><td>日付はシリアル値（数値）として扱われる</td></tr><tr><td>=TYPE(NOW())</td><td>1</td><td>時刻も数値（小数）として扱われる</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">日付と時刻の扱いに注意しましょう。スプレッドシートでは日付は内部的に数値（シリアル値）で管理されています。たとえば 2026/3/22 は内部的には 46107 という数値で、見た目だけが日付フォーマットになっています。そのためTYPE関数は 1（数値）を返します。</p>



<h3 class="wp-block-heading"><span id="toc7">セル参照で確認する</span></h3>



<p class="wp-block-paragraph">セル参照を使えば、特定のセルのデータ型を調べられます。</p>



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



<p class="wp-block-paragraph">A1 に「100」が入っていれば 1 を返します。「こんにちは」なら 2 です。データが入っているシートを直接調べたいときはこちらの形式が便利です。</p>



<h3 class="wp-block-heading"><span id="toc8">空白セルの場合</span></h3>



<p class="wp-block-paragraph">空白セルを指定すると、TYPE関数は 1（数値）を返します。空白は内部的に 0 として扱われるためです。これは少し意外ですが、計算式での扱いを考えるとつじつまが合っています。</p>



<pre class="wp-block-code"><code>=TYPE(A1)  → A1が空白なら 1 を返す</code></pre>



<p class="wp-block-paragraph">空白セルと数値を区別したい場合は、IF関数で先に空白チェックをしましょう。次のように書けば「空白」と表示されます。</p>



<pre class="wp-block-code"><code>=IF(A1=&quot;&quot;,&quot;空白&quot;,TYPE(A1))</code></pre>



<p class="wp-block-paragraph">ISBLANK関数を使う方法もあります。<code><a href="https://mashukabu.com/spreadsheet-isblank-function/">ISBLANK関数</a></code> は完全に空のセルだけを TRUE と判定するので、より厳密に空白を見分けたいときに役立ちますよ。</p>



<h2 class="wp-block-heading"><span id="toc9">TYPE関数の実践的な使い方・応用例</span></h2>



<p class="wp-block-paragraph">実務でよく使うパターンを 5 つ紹介します。コピペして列名やセル範囲だけ書き換えれば、すぐ使えます。</p>



<h3 class="wp-block-heading"><span id="toc10">IF関数と組み合わせてデータ型を日本語で表示する</span></h3>



<p class="wp-block-paragraph">数値コードだけでは分かりにくいので、日本語ラベルに変換すると便利です。レビュー作業や引き継ぎ資料で重宝します。</p>



<pre class="wp-block-code"><code>=IF(TYPE(A2)=1,&quot;数値&quot;,IF(TYPE(A2)=2,&quot;テキスト&quot;,IF(TYPE(A2)=4,&quot;論理値&quot;,IF(TYPE(A2)=16,&quot;エラー&quot;,&quot;配列&quot;))))</code></pre>



<p class="wp-block-paragraph">ちょっと長い数式に見えますが、やっていることはシンプルです。TYPE関数の返り値（1/2/4/16/64）に応じて対応するラベルを返しているだけですよ。</p>



<p class="wp-block-paragraph">SWITCH関数を使うともっとすっきり書けます。</p>



<pre class="wp-block-code"><code>=SWITCH(TYPE(A2),1,&quot;数値&quot;,2,&quot;テキスト&quot;,4,&quot;論理値&quot;,16,&quot;エラー&quot;,64,&quot;配列&quot;)</code></pre>



<p class="wp-block-paragraph">SWITCH関数は値ごとに結果を切り替えられるので、IFのネストを避けたいときに便利です。条件が増えても見通しが良いまま保てます。</p>



<h3 class="wp-block-heading"><span id="toc11">数値であるべきセルにテキストが混入していないかチェックする</span></h3>



<p class="wp-block-paragraph">売上データや数量の列に、数値に見えるテキスト（&#8221;100&#8243; など）が混ざっていると集計がズレます。CSVをインポートしたときによくある事故です。TYPE関数で一括チェックできます。</p>



<pre class="wp-block-code"><code>=IF(TYPE(B2)&lt;&gt;1,&quot;要確認&quot;,&quot;OK&quot;)</code></pre>



<p class="wp-block-paragraph">B2 のデータ型が数値（1）でなければ「要確認」と表示します。これを列全体にコピーすれば、テキスト混入をまとめて検出できますよ。</p>



<p class="wp-block-paragraph">数値かどうかを判定するなら <code><a href="https://mashukabu.com/spreadsheet-isnumber-function/">ISNUMBER関数</a></code> のほうが直感的ですが、TYPE関数なら他のデータ型と一緒にチェックできるのが強みです。</p>



<h3 class="wp-block-heading"><span id="toc12">ARRAYFORMULA と組み合わせて列全体を一括チェックする</span></h3>



<p class="wp-block-paragraph">1行ずつ数式をコピーする代わりに、ARRAYFORMULAで列全体を一括処理できます。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(IF(B2:B100=&quot;&quot;,&quot;&quot;,IF(TYPE(B2:B100)&lt;&gt;1,&quot;要確認&quot;,&quot;OK&quot;)))</code></pre>



<p class="wp-block-paragraph">B2からB100まで一気にデータ型をチェックします。空白セルはスキップしているので、不要な「要確認」が出ないようになっています。</p>



<p class="wp-block-paragraph">データ件数が変わるシートなら範囲を <code>B2:B</code> に広げてもよいでしょう。大量のデータを扱うときに便利な方法です。</p>



<h3 class="wp-block-heading"><span id="toc13">条件付き書式でテキスト混入を可視化する</span></h3>



<p class="wp-block-paragraph">「要確認」と表示するだけでなく、セルの色を変えて目立たせる方法もあります。条件付き書式で次のカスタム数式を設定します。</p>



<pre class="wp-block-code"><code>=AND(B2&lt;&gt;&quot;&quot;,TYPE(B2)&lt;&gt;1)</code></pre>



<p class="wp-block-paragraph">数値以外のセルが薄い赤色になり、ぱっと見で問題箇所がわかります。データ入力チームと共有するシートに仕込んでおくと、間違いに気づいてもらいやすくなります。</p>



<h3 class="wp-block-heading"><span id="toc14">エラー値の検出に使う</span></h3>



<p class="wp-block-paragraph">TYPE関数はエラー値を渡しても自身はエラーにならないという特徴があります。これを利用して、エラーの有無を判定できます。</p>



<pre class="wp-block-code"><code>=IF(TYPE(A2)=16,&quot;エラーあり&quot;,&quot;正常&quot;)</code></pre>



<p class="wp-block-paragraph"><code><a href="https://mashukabu.com/spreadsheet-iserror-function/">ISERROR関数</a></code> でも同じことができます。ただしTYPE関数なら、エラー判定と他のデータ型判定を1つの数式でまとめられるのが利点です。</p>



<p class="wp-block-paragraph">たとえば「エラーなら『エラー』、テキストなら『要数値化』、それ以外は空白」のように複数条件を組み合わせたいときに便利です。</p>



<pre class="wp-block-code"><code>=SWITCH(TYPE(A2),16,&quot;エラー&quot;,2,&quot;要数値化&quot;,&quot;&quot;)</code></pre>



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



<p class="wp-block-paragraph">TYPE関数で「思った結果にならない」ケースをまとめました。ほとんどは TYPE 関数の仕様を理解すれば解決できます。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>数値のはずなのに 2（テキスト）が返る</td><td>セルにテキスト形式の数字（&#8221;100&#8243;）が入っている</td><td>VALUE関数で数値に変換する。<code>=VALUE(A1)</code></td></tr><tr><td>日付セルで 1 が返る</td><td>日付はシリアル値（数値）で管理されている</td><td>仕様どおりの動作。日付かどうかを調べるなら <code><a href="https://mashukabu.com/spreadsheet-isdate-function/">ISDATE関数</a></code> を使う</td></tr><tr><td>空白セルで 1 が返る</td><td>空白は 0（数値）として扱われる</td><td>空白を区別するなら <code>=IF(A1="","空白",TYPE(A1))</code></td></tr><tr><td>配列で 64 が返らない</td><td>セルに配列数式の結果が表示されている場合、個々のセルは要素の型を返す</td><td>配列全体を確認するには <code>=TYPE({1,2,3})</code> のように直接指定する</td></tr><tr><td>ハイパーリンクで 2 が返る</td><td>ハイパーリンクは内部的にテキストとして扱われる</td><td>URL を判定したいなら <code><a href="https://mashukabu.com/spreadsheet-isurl-function/">ISURL関数</a></code> を使う</td></tr><tr><td>数式そのものを判定したい</td><td>TYPE関数は数式の結果のみを判定する</td><td>数式かどうかは <code><a href="https://mashukabu.com/spreadsheet-isformula-function/">ISFORMULA関数</a></code> を使う</td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc16">TYPE関数とIS系関数の使い分け</span></h2>



<p class="wp-block-paragraph">スプレッドシートにはデータ型を判定する関数が複数あります。TYPE関数との違いを整理しましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>返り値</th><th>用途</th></tr></thead><tbody><tr><td>TYPE</td><td>数値コード（1/2/4/16/64）</td><td>データ型を数値で分類したいとき</td></tr><tr><td>ISNUMBER</td><td>TRUE/FALSE</td><td>数値かどうかだけを判定したいとき</td></tr><tr><td>ISTEXT</td><td>TRUE/FALSE</td><td>テキストかどうかだけを判定したいとき</td></tr><tr><td>ISERROR</td><td>TRUE/FALSE</td><td>エラーかどうかだけを判定したいとき</td></tr><tr><td>ISLOGICAL</td><td>TRUE/FALSE</td><td>論理値かどうかだけを判定したいとき</td></tr><tr><td>ISDATE</td><td>TRUE/FALSE</td><td>日付として認識できるかを判定したいとき</td></tr><tr><td>ISBLANK</td><td>TRUE/FALSE</td><td>完全に空のセルかを判定したいとき</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><strong>使い分けのポイント</strong>は次の3つです。</p>



<ol class="wp-block-list"><li><strong>単一の型をチェックするだけなら IS 系関数</strong>: 「数値かどうかだけ知りたい」なら <code><a href="https://mashukabu.com/spreadsheet-isnumber-function/">ISNUMBER関数</a></code> のほうがシンプルで読みやすいです。</li><li><strong>複数のデータ型を一度に分岐したいときは TYPE 関数</strong>: 「数値なら計算、テキストならそのまま表示、エラーなら警告」のように 3 つ以上に分岐する場合は、TYPE関数とSWITCH関数の組み合わせがすっきり書けます。</li><li><strong>日付やURLなど特殊な型は専用関数を使う</strong>: 日付なら <code><a href="https://mashukabu.com/spreadsheet-isdate-function/">ISDATE関数</a></code>、URL なら <code><a href="https://mashukabu.com/spreadsheet-isurl-function/">ISURL関数</a></code>、数式そのものを判定するなら <code><a href="https://mashukabu.com/spreadsheet-isformula-function/">ISFORMULA関数</a></code> が便利です。</li></ol>



<p class="wp-block-paragraph">迷ったら「型を 1 つだけチェック → IS 系」「複数の型で分岐 → TYPE」と覚えておけばOKです。</p>



<h2 class="wp-block-heading"><span id="toc17">Excelとの違い</span></h2>



<p class="wp-block-paragraph">TYPE関数はExcelとGoogleスプレッドシートでほぼ同じ動作です。コピー＆ペーストでも互換性で困ることはありません。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>Excel</th><th>Googleスプレッドシート</th></tr></thead><tbody><tr><td>構文</td><td>=TYPE(値)</td><td>=TYPE(値)</td></tr><tr><td>数値</td><td>1</td><td>1</td></tr><tr><td>テキスト</td><td>2</td><td>2</td></tr><tr><td>論理値</td><td>4</td><td>4</td></tr><tr><td>エラー値</td><td>16</td><td>16</td></tr><tr><td>配列</td><td>64</td><td>64</td></tr><tr><td>引数の数</td><td>1（必須）</td><td>1（必須）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">返り値のコードも完全に同じです。Excelファイルとして共有してもTYPE関数の挙動はそのまま維持されます。安心して使ってください。</p>



<h2 class="wp-block-heading"><span id="toc18">TYPE関数のFAQ</span></h2>



<h3 class="wp-block-heading"><span id="toc19">Q1. TYPE関数は数式そのものの種類を判定できますか？</span></h3>



<p class="wp-block-paragraph">いいえ、TYPE関数は<strong>数式の結果</strong>を判定するだけです。たとえば <code>=A1+1</code> というセルを TYPE 関数で調べると、計算結果が数値なら 1、エラーなら 16 が返ります。「そのセルに数式が入っているかどうか」を判定したい場合は <code><a href="https://mashukabu.com/spreadsheet-isformula-function/">ISFORMULA関数</a></code> を使ってください。</p>



<h3 class="wp-block-heading"><span id="toc20">Q2. なぜ空白セルで 1（数値）が返るのですか？</span></h3>



<p class="wp-block-paragraph">スプレッドシートでは空白セルは内部的に 0（数値）として扱われるためです。SUM関数で空白セルが含まれていてもエラーにならないのと同じ理由です。空白を厳密に区別したい場合は IF関数で <code>=""</code> のチェックを先に行うか、<code><a href="https://mashukabu.com/spreadsheet-isblank-function/">ISBLANK関数</a></code> を使いましょう。</p>



<h3 class="wp-block-heading"><span id="toc21">Q3. 文字列の数字（&#8221;100&#8243; など）を数値に変換するにはどうすればよいですか？</span></h3>



<p class="wp-block-paragraph">VALUE関数を使います。<code>=VALUE("100")</code> と書けば数値の 100 が返ります。CSVインポートで数字がテキスト扱いになってしまった列は、別の列で <code>=VALUE(A2)</code> を行ってから値貼り付けで上書きするのが定番のテクニックです。TYPE関数で 2 が返ったセルが対象、と覚えておくと作業しやすいですね。</p>



<h3 class="wp-block-heading"><span id="toc22">Q4. ARRAYFORMULA で TYPE 関数を使うときの注意点は？</span></h3>



<p class="wp-block-paragraph">ARRAYFORMULA の中で TYPE 関数を使う場合、範囲全体に対して一括で評価されます。<code>=ARRAYFORMULA(TYPE(A2:A))</code> のように書けば各セルの型コードがずらっと返ります。ただし配列の中身を 64 として扱いたい場合は、配列リテラル <code>{1,2,3}</code> のように直接指定する必要があります。</p>



<h3 class="wp-block-heading"><span id="toc23">Q5. 数値か日付かを区別したいときは？</span></h3>



<p class="wp-block-paragraph">TYPE関数では区別できません。日付はシリアル値（数値）として扱われるためです。日付かどうかを判定するなら <code><a href="https://mashukabu.com/spreadsheet-isdate-function/">ISDATE関数</a></code> を使うか、書式や値の範囲で判定するロジックを組む必要があります。「2020年以降の日付か」のように厳密にチェックしたい場合は、シリアル値の数値範囲（例: <code>>=43831</code>）で比較する方法もありますよ。</p>



<h3 class="wp-block-heading"><span id="toc24">Q6. TYPE関数の結果を条件付き書式で活用できますか？</span></h3>



<p class="wp-block-paragraph">はい、できます。条件付き書式の「カスタム数式」に <code>=TYPE(A1)<>1</code> のように指定すれば、数値以外のセルだけ色をつけられます。データ入力ミスを発見したいシートに仕込んでおくと、目視チェックの手間が大きく減りますよ。</p>



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



<p class="wp-block-paragraph">TYPE関数は、セルのデータ型を数値コードで返すシンプルな関数です。シンプルですが、データ検証や型分岐のロジックを組むときの土台になる便利な関数です。</p>



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



<ul class="wp-block-list"><li>構文は <code>=TYPE(値)</code> で、引数は1つだけ</li><li>返り値は 1（数値）、2（テキスト）、4（論理値）、16（エラー）、64（配列）の5種類</li><li>日付や時刻はシリアル値として扱われるため 1（数値）を返す</li><li>空白セルは 0（数値）として扱われるため 1 を返す</li><li>IF関数やSWITCH関数と組み合わせてデータ型ごとに処理を分岐できる</li><li>「数値かどうかだけ」なら ISNUMBER関数、複数型の分岐なら TYPE関数</li><li>日付やURLなど特殊な型は IS 系の専用関数を使うとよい</li><li>ExcelのTYPE関数と完全に同じ動作で、互換性も安心</li></ul>



<p class="wp-block-paragraph">まずは <code>=TYPE(A1)</code> で手元のデータの型を調べるところから試してみてください。データ集計の前段にこの一手間を入れるだけで、ミスが大幅に減らせますよ。</p>



<h3 class="wp-block-heading"><span id="toc26">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/spreadsheet-isnumber-function/">スプレッドシートのISNUMBER関数の使い方｜数値判定</a></li><li><a href="https://mashukabu.com/spreadsheet-istext-function/">スプレッドシートのISTEXT関数の使い方｜テキスト判定</a></li><li><a href="https://mashukabu.com/spreadsheet-iserror-function/">スプレッドシートのISERROR関数の使い方｜エラー判定</a></li><li><a href="https://mashukabu.com/spreadsheet-islogical-function/">スプレッドシートのISLOGICAL関数の使い方｜論理値判定</a></li><li><a href="https://mashukabu.com/spreadsheet-isblank-function/">スプレッドシートのISBLANK関数の使い方｜空白判定</a></li><li><a href="https://mashukabu.com/spreadsheet-isdate-function/">スプレッドシートのISDATE関数の使い方｜日付判定</a></li><li><a href="https://mashukabu.com/spreadsheet-isformula-function/">スプレッドシートのISFORMULA関数の使い方｜数式判定</a></li><li><a href="https://mashukabu.com/spreadsheet-isurl-function/">スプレッドシートのISURL関数の使い方｜URL判定</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-type-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのCODE関数の使い方｜文字を文字コード番号に変換する方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-code/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-code/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Wed, 21 Sep 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[CODE関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[データ検証]]></category>
		<category><![CDATA[文字コード]]></category>
		<category><![CDATA[文字列関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=2477</guid>

					<description><![CDATA[ExcelのCODE関数の使い方を解説。文字から文字コード番号を取得する基本から、データ分類・不可視文字の検出など実務テクニック、CHAR関数との違いまで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「このセルに入っている文字、見た目は同じなのに検索でヒットしない&#8230;」。<br>こんな経験、ありませんか？</p>



<p class="wp-block-paragraph">実は、見た目が同じでも文字コードが違う文字は別物として扱われます。<br>ExcelのCODE関数を使えば、文字の正体を文字コード番号で確認できます。<br>この記事では、基本の使い方からデータ検証の実務テクニックまで紹介します。<br><a href="https://mashukabu.com/excel-function-howto-use-char/">CHAR関数</a>との違いもまとめたので、ぜひ参考にしてください。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-4" checked><label class="toc-title" for="toc-checkbox-4">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">CODE関数とは？</a></li><li><a href="#toc2" tabindex="0">CODE関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">CODE関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">文字列を直接指定して番号を調べる</a></li><li><a href="#toc7" tabindex="0">セル参照で文字列を指定する</a></li></ol></li><li><a href="#toc8" tabindex="0">主要な文字コード早見表</a></li><li><a href="#toc9" tabindex="0">CODE関数の実務活用パターン</a><ol><li><a href="#toc10" tabindex="0">パターン1：先頭文字がアルファベットか数字かを判定する</a></li><li><a href="#toc11" tabindex="0">パターン2：大文字と小文字を判定する</a></li><li><a href="#toc12" tabindex="0">パターン3：見えない文字（不可視文字）を検出する</a></li><li><a href="#toc13" tabindex="0">パターン4：CHAR関数と組み合わせてアルファベット連番を作る</a></li></ol></li><li><a href="#toc14" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc15" tabindex="0">似た関数との違い・使い分け</a><ol><li><a href="#toc16" tabindex="0">CHAR関数（逆変換）</a></li><li><a href="#toc17" tabindex="0">UNICODE関数（Unicode対応版）</a></li><li><a href="#toc18" tabindex="0">文字変換関数の全体像</a></li></ol></li><li><a href="#toc19" tabindex="0">まとめ</a><ol><li><a href="#toc20" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">CODE（コード）関数は、<strong>文字列の先頭1文字に対応する文字コード番号を返す</strong>関数です。</p>



<p class="wp-block-paragraph">たとえば <code>=CODE("A")</code> と入力すると「65」が返ります。<br>65はアルファベット大文字Aの文字コード番号です。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-char/">CHAR関数</a>が「番号→文字」の変換なら、CODE関数は「文字→番号」の逆変換にあたります。<br>ペアで覚えておくと便利ですよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>CODE関数はExcel 2007以降すべてのバージョンで使えます。Googleスプレッドシートでも同じ書き方で利用可能です。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=CODE(文字列)</code></pre>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</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>文字コード番号を調べたい文字列を指定</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数はたったの1つです。<br>文字列を直接入力するか、セル参照で指定します。</p>



<p class="wp-block-paragraph">文字列が2文字以上の場合は、<strong>先頭の1文字だけ</strong>が対象になります。<br>たとえば <code>=CODE("ABC")</code> は先頭の「A」の番号「65」を返します。</p>



<p class="wp-block-paragraph">Windows版ExcelではANSI文字セット、Mac版ではMacintosh文字セットが使われます。<br>アルファベットや数字、基本的な記号は共通なので、通常の業務では違いを意識する必要はありません。</p>



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



<h3 class="wp-block-heading"><span id="toc6">文字列を直接指定して番号を調べる</span></h3>



<p class="wp-block-paragraph">アルファベットの文字コード番号を調べてみましょう。</p>



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



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



<p class="wp-block-paragraph">同じように <code>=CODE("B")</code> なら「66」、<code>=CODE("Z")</code> なら「90」が返ります。<br>小文字は97から始まります。</p>



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



<p class="wp-block-paragraph">結果は「97」です。<br>大文字と小文字では文字コード番号が異なる点がポイントです。</p>



<h3 class="wp-block-heading"><span id="toc7">セル参照で文字列を指定する</span></h3>



<p class="wp-block-paragraph">セルに入力した文字をそのまま引数に使うこともできます。<br>セルA1に「Hello」が入っている場合、次のように書きます。</p>



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



<p class="wp-block-paragraph">結果は「72」です。<br>先頭の「H」の文字コード番号が返ります。</p>



<p class="wp-block-paragraph">A列にいろいろな文字を入力して、B列でCODE関数を使えば文字コード一覧表が作れますよ。</p>



<h2 class="wp-block-heading"><span id="toc8">主要な文字コード早見表</span></h2>



<p class="wp-block-paragraph">よく使う文字と文字コード番号をまとめました。<br>CODE関数の結果と照らし合わせて確認するときに便利です。</p>



<figure class="wp-block-table"><table><thead><tr><th>文字</th><th>CODE関数の結果</th><th>用途・備考</th></tr></thead><tbody><tr><td>タブ文字</td><td>9</td><td>列の区切り（TSV形式）</td></tr><tr><td>改行（LF）</td><td>10</td><td>セル内改行</td></tr><tr><td>半角スペース</td><td>32</td><td>空白文字</td></tr><tr><td>! &#8221; # $ % &#038; &#8216; ( ) * + , &#8211; . /</td><td>33〜47</td><td>記号</td></tr><tr><td>0〜9</td><td>48〜57</td><td>数字</td></tr><tr><td>A〜Z</td><td>65〜90</td><td>大文字アルファベット</td></tr><tr><td>a〜z</td><td>97〜122</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>アルファベットの大文字は65〜90、小文字は97〜122で、差は常に32です。<code>=CODE("a")-CODE("A")</code> は「32」になります。この規則性を利用すると、大文字・小文字の判定にも使えます。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc9">CODE関数の実務活用パターン</span></h2>



<p class="wp-block-paragraph">CODE関数は文字の種類を判別するのに便利です。<br>文字コード番号のルールを使って、データの分類や検証を自動化できます。</p>



<h3 class="wp-block-heading"><span id="toc10">パターン1：先頭文字がアルファベットか数字かを判定する</span></h3>



<p class="wp-block-paragraph">商品コードや顧客IDの先頭文字によってデータを分類するパターンです。<br>A2にデータが入っているとします。</p>



<pre class="wp-block-code"><code>=IF(AND(CODE(A2)&gt;=65, CODE(A2)&lt;=90), &quot;英字&quot;, IF(AND(CODE(A2)&gt;=48, CODE(A2)&lt;=57), &quot;数字&quot;, &quot;その他&quot;))</code></pre>



<p class="wp-block-paragraph">先頭がA〜Zなら「英字」、0〜9なら「数字」、それ以外は「その他」と表示します。<br>大文字小文字の両方をチェックしたい場合は、条件を追加してください。</p>



<pre class="wp-block-code"><code>=IF(OR(AND(CODE(A2)&gt;=65, CODE(A2)&lt;=90), AND(CODE(A2)&gt;=97, CODE(A2)&lt;=122)), &quot;英字&quot;, IF(AND(CODE(A2)&gt;=48, CODE(A2)&lt;=57), &quot;数字&quot;, &quot;その他&quot;))</code></pre>



<h3 class="wp-block-heading"><span id="toc11">パターン2：大文字と小文字を判定する</span></h3>



<p class="wp-block-paragraph">アルファベットが大文字か小文字かをCODE関数で判別するパターンです。<br>EXACT関数でも判定できますが、CODE関数なら番号で判定するので仕組みがわかりやすいです。</p>



<pre class="wp-block-code"><code>=IF(AND(CODE(A2)&gt;=65, CODE(A2)&lt;=90), &quot;大文字&quot;, IF(AND(CODE(A2)&gt;=97, CODE(A2)&lt;=122), &quot;小文字&quot;, &quot;英字以外&quot;))</code></pre>



<p class="wp-block-paragraph">A2の先頭がA〜Z（65〜90）なら「大文字」、a〜z（97〜122）なら「小文字」と返します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>大文字・小文字の変換には<a href="https://mashukabu.com/excel-function-howto-use-upper/">UPPER関数</a>や<a href="https://mashukabu.com/excel-function-howto-use-lower/">LOWER関数</a>が便利です。CODE関数はあくまで「判定」に使い、「変換」は専用の関数に任せるのがおすすめです。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc12">パターン3：見えない文字（不可視文字）を検出する</span></h3>



<p class="wp-block-paragraph">見た目では判別できない文字をCODE関数で見つけるパターンです。<br>VLOOKUP関数やCOUNTIF関数で一致しないとき、原因の特定に役立ちます。</p>



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



<p class="wp-block-paragraph">結果が「32」なら半角スペース、「160」ならノーブレークスペース（NBSP）です。<br>見た目は同じ空白でも、文字コードが違えばExcelは別の文字として扱います。</p>



<p class="wp-block-paragraph">ノーブレークスペースが原因でデータが一致しない場合は、<a href="https://mashukabu.com/excel-function-howto-use-substitute/">SUBSTITUTE関数</a>で置換しましょう。</p>



<pre class="wp-block-code"><code>=SUBSTITUTE(A2, CHAR(160), &quot; &quot;)</code></pre>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-char/">CHAR関数</a>のCHAR(160)でノーブレークスペースを指定し、半角スペースに置き換えています。</p>



<h3 class="wp-block-heading"><span id="toc13">パターン4：CHAR関数と組み合わせてアルファベット連番を作る</span></h3>



<p class="wp-block-paragraph">CODE関数で取得した番号に1を足してCHAR関数で文字に戻すと、次のアルファベットが得られます。<br>A2に「A」が入っているとします。</p>



<pre class="wp-block-code"><code>=CHAR(CODE(A2)+1)</code></pre>



<p class="wp-block-paragraph">結果は「B」です。<br>CODE関数で「A」の番号65を取得し、1を足した66を<a href="https://mashukabu.com/excel-function-howto-use-char/">CHAR関数</a>で文字に戻しています。</p>



<p class="wp-block-paragraph">この仕組みを使えば、列のアルファベット連番を自動生成できます。</p>



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



<p class="wp-block-paragraph">CODE関数は引数が1つだけのシンプルな関数ですが、いくつか注意点があります。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>#VALUE!</td><td>引数が空文字（&#8221;&#8221;）</td><td>空文字にはコード番号がないためエラーになります。IF関数で空判定を追加してください</td></tr><tr><td>#VALUE!</td><td>参照セルが空（未入力）</td><td>上と同じ。<code>=IF(A2="", "", CODE(A2))</code> で空セルを回避できます</td></tr><tr><td>#NAME?</td><td>関数名のスペルミス</td><td>「CODE」のスペルを確認してください</td></tr><tr><td>想定外の数値</td><td>全角文字やUnicode文字</td><td>CODE関数はANSI文字セット（1〜255）が対象です。日本語の文字コードを調べたい場合はUNICODE関数を使いましょう</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>CODE関数に空文字を渡すと#VALUE!エラーになります。一覧表でCODE関数を使うときは <code>=IF(A2="", "", CODE(A2))</code> のようにIF関数を組み合わせるのがおすすめです。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc15">似た関数との違い・使い分け</span></h2>



<h3 class="wp-block-heading"><span id="toc16">CHAR関数（逆変換）</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-char/">CHAR関数</a>は、CODE関数と逆の働きをします。<br>CODE関数が「文字→番号」なら、CHAR関数は「番号→文字」です。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>動作</th><th>使用例</th><th>結果</th></tr></thead><tbody><tr><td><strong>CODE</strong></td><td>文字→番号</td><td>=CODE(&#8220;A&#8221;)</td><td>65</td></tr><tr><td><strong><a href="https://mashukabu.com/excel-function-howto-use-char/">CHAR</a></strong></td><td>番号→文字</td><td>=CHAR(65)</td><td>A</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">CODE関数とCHAR関数はセットで覚えておくと便利です。<br>たとえばCODE関数で文字の番号を調べ、計算した番号をCHAR関数で別の文字に変換する、といった使い方ができます。</p>



<h3 class="wp-block-heading"><span id="toc17">UNICODE関数（Unicode対応版）</span></h3>



<p class="wp-block-paragraph">UNICODE関数は、CODE関数のUnicode対応版です。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>CODE関数</th><th>UNICODE関数</th></tr></thead><tbody><tr><td>対応範囲</td><td>1〜255（ANSI）</td><td>1〜1,114,111（Unicode）</td></tr><tr><td>日本語</td><td>文字セット依存</td><td>対応</td></tr><tr><td>絵文字</td><td>非対応</td><td>対応</td></tr><tr><td>対応バージョン</td><td>Excel 2007以降</td><td>Excel 2013以降</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">アルファベットや基本記号の番号を調べるならCODE関数で十分です。<br>日本語の文字コードを調べたい場合は、UNICODE関数を使いましょう。</p>



<h3 class="wp-block-heading"><span id="toc18">文字変換関数の全体像</span></h3>



<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>CODE</td><td>文字→文字コード番号</td><td>この記事</td></tr><tr><td>CHAR</td><td>文字コード番号→文字</td><td><a href="https://mashukabu.com/excel-function-howto-use-char/">CHAR関数の使い方</a></td></tr><tr><td>UNICHAR</td><td>Unicode番号→文字</td><td><a href="https://mashukabu.com/excel-function-howto-use-unichar/">UNICHAR関数の使い方</a></td></tr><tr><td>ASC</td><td>全角を半角に変換</td><td><a href="https://mashukabu.com/excel-function-howto-use-asc/">ASC関数の使い方</a></td></tr><tr><td>JIS</td><td>半角を全角に変換</td><td><a href="https://mashukabu.com/excel-function-howto-use-jis/">JIS関数の使い方</a></td></tr><tr><td>SUBSTITUTE</td><td>指定文字を置換</td><td><a href="https://mashukabu.com/excel-function-howto-use-substitute/">SUBSTITUTE関数の使い方</a></td></tr></tbody></table></figure>



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



<p class="wp-block-paragraph">CODE関数は <code>=CODE(文字列)</code> と書くだけで、文字の文字コード番号を調べられるシンプルな関数です。</p>



<ul class="wp-block-list"><li>引数は<strong>文字列</strong>の1つだけ（先頭の1文字が対象）</li><li><strong>データ分類や不可視文字の検出</strong>など、文字の種類を判定する場面で活躍</li><li>空文字を渡すと#VALUE!エラーになるのでIF関数でガードする</li><li>CHAR関数は逆変換（番号→文字）のペア関数</li><li>Unicode対応が必要ならUNICODE関数を使う</li></ul>



<h3 class="wp-block-heading"><span id="toc20">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-char/">ExcelのCHAR関数の使い方｜文字コードから文字を取得する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-asc/">ExcelのASC関数の使い方｜全角を半角に一括変換する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-jis/">ExcelのJIS関数の使い方｜半角を全角に一括変換する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-substitute/">ExcelのSUBSTITUTE関数の使い方｜文字列を置き換える方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-unichar/">UNICHAR関数でUNICODEの番号を指定して文字を表示する</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-code/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのISERR関数の使い方｜#N/A以外のエラーだけを判定する方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-iserr/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-iserr/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Tue, 12 Apr 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[ISERROR]]></category>
		<category><![CDATA[ISERR関数]]></category>
		<category><![CDATA[IS関数]]></category>
		<category><![CDATA[VLOOKUP]]></category>
		<category><![CDATA[エラー判定]]></category>
		<category><![CDATA[データ検証]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=1600</guid>

					<description><![CDATA[ExcelのISERR関数の使い方を初心者向けに解説。#N/Aを除くエラーだけを判定する基本構文から、VLOOKUP/XLOOKUPでの精緻なエラーハンドリング、ISERROR・ISNA・IFERRORとの違い、エラー種類ごとの判定結果まで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">VLOOKUPで「#N/A」が出るのは想定どおり。でも「#VALUE!」や「#REF!」が出たら、それは数式の構造ミスかもしれません。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数</a>ですべてまとめて処理してしまうと、こうした構造ミスに気づけなくなります。そんなときに頼りになるのがISERR関数です。</p>



<p class="wp-block-paragraph">この記事では、ISERR関数の基本から実務で役立つ活用パターンまでまとめて紹介します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>この記事は次のような人におすすめ</p><p>&#8211; #VALUE! や #REF! などのエラーを検知したいが、#N/A は除外したい<br>&#8211; VLOOKUPで「値が見つからない」と「数式の構造ミス」を区別したい<br>&#8211; ISERROR関数やISNA関数との違いを知りたい</p></blockquote>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-5" checked><label class="toc-title" for="toc-checkbox-5">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ISERR関数とは？</a></li><li><a href="#toc2" tabindex="0">ISERR関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">ISERR関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">エラー種類ごとの判定結果</a></li></ol></li><li><a href="#toc7" tabindex="0">ISERR関数の実務活用パターン</a><ol><li><a href="#toc8" tabindex="0">パターン1: VLOOKUPで「見つからない」と「数式ミス」を区別する</a></li><li><a href="#toc9" tabindex="0">パターン2: ISNA + ISERRでエラーの種類に応じたメッセージを出す</a></li><li><a href="#toc10" tabindex="0">パターン3: 条件付き書式で数式エラーだけをハイライトする</a></li><li><a href="#toc11" tabindex="0">パターン4: SUMPRODUCTで構造エラーをカウントする</a></li><li><a href="#toc12" tabindex="0">パターン5: XLOOKUPで構造エラーを先に処理する</a></li></ol></li><li><a href="#toc13" tabindex="0">ISERR関数と似た関数との違い・使い分け</a><ol><li><a href="#toc14" tabindex="0">ISERROR・ISNA・ISERRの対応範囲を比較</a></li><li><a href="#toc15" tabindex="0">IFERRORとの使い分け</a></li><li><a href="#toc16" tabindex="0">使い分けの判断フロー</a></li></ol></li><li><a href="#toc17" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc18" tabindex="0">IS系12関数の違い・使い分け</a></li><li><a href="#toc19" tabindex="0">まとめ</a><ol><li><a href="#toc20" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">ISERR（いず えらー）関数は、指定した値が <strong>#N/A 以外のエラー値</strong>かどうかを判定する関数です。</p>



<p class="wp-block-paragraph">対象が #N/A 以外のエラーであれば TRUE を返します。数値・文字列・論理値・空白、そして #N/A エラーはすべて FALSE です。</p>



<p class="wp-block-paragraph"><strong>#N/A だけを除外する</strong>のが最大の特徴です。#VALUE!、#REF!、#DIV/0!、#NAME?、#NUM!、#NULL! の6種類で TRUE を返しますが、#N/A では FALSE になります。</p>



<p class="wp-block-paragraph">IS系（情報関数）の1つで、セルに入っているデータの種類を確認するための関数ファミリーに属しています。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>ISERR関数は Excel 2003 以降のすべてのバージョンで使用できます。Microsoft 365 や Googleスプレッドシートでも同じ書き方で使えます。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=ISERR(テストの対象)</code></pre>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</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>#N/A以外のエラーかどうか判定したい値またはセル参照</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は1つだけです。省略はできません。セル参照・直接値・数式の結果のいずれも指定できます。</p>



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



<p class="wp-block-paragraph">まずはシンプルな例で動きを確認してみましょう。</p>



<h3 class="wp-block-heading"><span id="toc6">エラー種類ごとの判定結果</span></h3>



<p class="wp-block-paragraph">さまざまなエラーをISERR関数で判定すると、次のような結果になります。</p>



<figure class="wp-block-table"><table><thead><tr><th>A列の値</th><th>数式</th><th>ISERR の結果</th><th>理由</th></tr></thead><tbody><tr><td>=10/0 (#DIV/0!)</td><td>=ISERR(A2)</td><td>TRUE</td><td>ゼロ除算エラー</td></tr><tr><td>=&#8221;あ&#8221;+1 (#VALUE!)</td><td>=ISERR(A3)</td><td>TRUE</td><td>データ型が不正</td></tr><tr><td>#REF!</td><td>=ISERR(A4)</td><td>TRUE</td><td>参照先が無効</td></tr><tr><td>=ABC (#NAME?)</td><td>=ISERR(A5)</td><td>TRUE</td><td>関数名が不正</td></tr><tr><td>=SQRT(-1) (#NUM!)</td><td>=ISERR(A6)</td><td>TRUE</td><td>数値が範囲外</td></tr><tr><td>=VLOOKUP(&#8220;Z&#8221;,D:E,2,0) (#N/A)</td><td>=ISERR(A7)</td><td><strong>FALSE</strong></td><td>#N/A は対象外</td></tr><tr><td>100</td><td>=ISERR(A8)</td><td>FALSE</td><td>正常な数値</td></tr><tr><td>東京</td><td>=ISERR(A9)</td><td>FALSE</td><td>正常な文字列</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">#N/A のときだけ FALSE になっているのがポイントです。ISERR関数は #N/A <strong>以外</strong>の6種類のエラーに反応します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>#N/A も含めてすべてのエラーを判定したい場合は <a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR関数</a> を使いましょう。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc7">ISERR関数の実務活用パターン</span></h2>



<h3 class="wp-block-heading"><span id="toc8">パターン1: VLOOKUPで「見つからない」と「数式ミス」を区別する</span></h3>



<p class="wp-block-paragraph">VLOOKUPは「検索値が見つからない」ときも「数式の構造に問題がある」ときもエラーを返します。ISERRを使えば、この2つを区別できます。</p>



<pre class="wp-block-code"><code>=IF(ISERR(VLOOKUP(B2,商品マスタ!A:C,2,FALSE)),&quot;数式エラー&quot;,IF(ISNA(VLOOKUP(B2,商品マスタ!A:C,2,FALSE)),&quot;該当なし&quot;,VLOOKUP(B2,商品マスタ!A:C,2,FALSE)))</code></pre>



<p class="wp-block-paragraph">#VALUE! や #REF! なら「数式エラー」、#N/A なら「該当なし」、正常ならVLOOKUPの結果を返します。</p>



<p class="wp-block-paragraph">これがISERR関数の真価です。<a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数</a>ではすべてのエラーがまとめて処理されるため、この区別ができません。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>「見つからない」だけでなく「列番号が範囲外（#REF!）」「検索値のデータ型が不正（#VALUE!）」なども発生しうるのがVLOOKUPです。IFERRORで全部まとめてしまうと、数式の構造ミスに気づけなくなりますよ。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc9">パターン2: ISNA + ISERRでエラーの種類に応じたメッセージを出す</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA関数</a>と組み合わせれば、エラーの種類に応じて処理を完全に分岐できます。</p>



<pre class="wp-block-code"><code>=IF(ISERR(A2),&quot;構造エラー: 数式を見直してください&quot;,IF(ISNA(A2),&quot;検索エラー: データを確認してください&quot;,A2))</code></pre>



<p class="wp-block-paragraph">この数式は3つの状態を区別します。</p>



<ul class="wp-block-list"><li>#VALUE! や #REF! → 「構造エラー: 数式を見直してください」</li><li>#N/A → 「検索エラー: データを確認してください」</li><li>正常値 → そのまま表示</li></ul>



<p class="wp-block-paragraph">VLOOKUPやXLOOKUPの結果列に設定しておくと、エラーの原因を一目で判別できます。運用担当者への引き継ぎ資料にも便利ですよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>この「ISERR + ISNA」パターンは、<a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR関数</a>1つでは実現できない精緻なエラー分岐です。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc10">パターン3: 条件付き書式で数式エラーだけをハイライトする</span></h3>



<p class="wp-block-paragraph">数式が入った列で #VALUE! や #REF! などの構造的なエラーだけを目立たせたい場合に使えます。#N/A は「該当なし」の正常な結果として扱いたいケースです。</p>



<ol class="wp-block-list"><li>対象範囲を選択します</li><li>「ホーム」タブ →「条件付き書式」→「新しいルール」を選択します</li><li>「数式を使用して、書式設定するセルを決定」を選びます</li><li>数式欄に <code>=ISERR(C2)</code> と入力します</li><li>好きな書式（赤い塗りつぶしなど）を設定します</li></ol>



<p class="wp-block-paragraph">#VALUE! や #REF! のセルだけが色付きになります。#N/A は色が付かないので、「見つからない」と「壊れている」を視覚的に区別できます。</p>



<h3 class="wp-block-heading"><span id="toc11">パターン4: SUMPRODUCTで構造エラーをカウントする</span></h3>



<p class="wp-block-paragraph">大量のデータ範囲で、#N/A 以外の「修正が必要なエラー」が何件あるか確認できます。</p>



<pre class="wp-block-code"><code>=SUMPRODUCT(ISERR(C2:C100)*1)</code></pre>



<p class="wp-block-paragraph">C2:C100 の中で #VALUE!、#REF!、#DIV/0! などが何セルあるかを返します。#N/A は数えないので、「数式の問題だけ」を把握できます。</p>



<h3 class="wp-block-heading"><span id="toc12">パターン5: XLOOKUPで構造エラーを先に処理する</span></h3>



<p class="wp-block-paragraph">XLOOKUPには第4引数（見つからない場合の値）がありますが、これで処理されるのは #N/A だけです。#VALUE! や #REF! は第4引数では処理されません。</p>



<pre class="wp-block-code"><code>=IF(ISERR(XLOOKUP(B2,商品マスタ!A:A,商品マスタ!B:B)),&quot;数式を確認&quot;,XLOOKUP(B2,商品マスタ!A:A,商品マスタ!B:B,&quot;該当なし&quot;))</code></pre>



<p class="wp-block-paragraph">まずISERRで構造エラーを先に判定します。構造エラーでなければ、XLOOKUPの第4引数で #N/A を「該当なし」に置き換えます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>XLOOKUPの第4引数は <a href="https://mashukabu.com/excel-function-howto-use-ifna/">IFNA関数</a> に近い動作です。#N/A しか処理しないため、構造エラーの検知にはISERR関数が必要です。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc13">ISERR関数と似た関数との違い・使い分け</span></h2>



<p class="wp-block-paragraph">エラー判定に使える関数は複数あります。それぞれの違いを把握しておくと、場面に応じて最適な関数を選べます。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>対象エラー</th><th>戻り値</th><th>主な用途</th></tr></thead><tbody><tr><td>ISERR（この記事）</td><td>#N/A 以外のエラー</td><td>TRUE / FALSE</td><td>#N/A を除くエラーを判定する</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR</a></td><td>すべてのエラー</td><td>TRUE / FALSE</td><td>エラーかどうかをTRUE/FALSEで返す</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA</a></td><td>#N/A のみ</td><td>TRUE / FALSE</td><td>#N/A だけを判定する</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR</a></td><td>すべてのエラー</td><td>代替値</td><td>エラー時に指定した値を返す</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-ifna/">IFNA</a></td><td>#N/A のみ</td><td>代替値</td><td>#N/A 時に指定した値を返す</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc14">ISERROR・ISNA・ISERRの対応範囲を比較</span></h3>



<p class="wp-block-paragraph">3つの関数がどのエラーに反応するかを一覧にまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー値</th><th>ISERROR</th><th>ISNA</th><th>ISERR</th></tr></thead><tbody><tr><td>#N/A</td><td>TRUE</td><td>TRUE</td><td>FALSE</td></tr><tr><td>#VALUE!</td><td>TRUE</td><td>FALSE</td><td>TRUE</td></tr><tr><td>#REF!</td><td>TRUE</td><td>FALSE</td><td>TRUE</td></tr><tr><td>#DIV/0!</td><td>TRUE</td><td>FALSE</td><td>TRUE</td></tr><tr><td>#NAME?</td><td>TRUE</td><td>FALSE</td><td>TRUE</td></tr><tr><td>#NUM!</td><td>TRUE</td><td>FALSE</td><td>TRUE</td></tr><tr><td>#NULL!</td><td>TRUE</td><td>FALSE</td><td>TRUE</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">ISERROR = ISNA + ISERR です。つまり <code>=OR(ISNA(A1), ISERR(A1))</code> と <code>=ISERROR(A1)</code> は同じ結果になります。</p>



<h3 class="wp-block-heading"><span id="toc15">IFERRORとの使い分け</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>ISERR</th><th>IFERROR</th></tr></thead><tbody><tr><td>戻り値</td><td>TRUE / FALSE</td><td>正常値 or 代替値</td></tr><tr><td>#N/A への反応</td><td>FALSE（除外）</td><td>代替値を返す（含む）</td></tr><tr><td>エラーの区別</td><td>ISNA と組み合わせて可能</td><td>できない</td></tr><tr><td>主な用途</td><td>エラー種類の判定・分岐</td><td>エラー表示の回避</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IFERROR ですべてのエラーをまとめて処理するのが手軽です。一方、「#N/A とそれ以外を区別したい」場面では ISERR + ISNA の組み合わせが必要です。</p>



<h3 class="wp-block-heading"><span id="toc16">使い分けの判断フロー</span></h3>



<ol class="wp-block-list"><li><strong>すべてのエラーを隠したい</strong> → <a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数</a></li><li><strong>すべてのエラーをTRUE/FALSEで判定したい</strong> → <a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR関数</a></li><li><strong>#N/A だけを隠したい</strong> → <a href="https://mashukabu.com/excel-function-howto-use-ifna/">IFNA関数</a></li><li><strong>#N/A だけをTRUE/FALSEで判定したい</strong> → <a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA関数</a></li><li><strong>#N/A 以外のエラーを判定したい</strong> → <strong>ISERR関数</strong>（この記事）</li></ol>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>「エラーを代替値に置き換えたいだけ」なら IFERROR や IFNA のほうがシンプルです。IF/IFS/IFERROR/IFNAの使い分けは <a href="https://mashukabu.com/excel-if-ifs-iferror-ifna-comparison/">こちらの比較記事</a> でもくわしく解説しています。</p></blockquote>



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



<p class="wp-block-paragraph">ISERR関数自体がエラーを返すことはほとんどありません。ただし「思った結果にならない」ケースがあります。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>#N/A で TRUE が返らない</td><td>ISERR は #N/A を除外する</td><td>#N/A を判定するには <a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA関数</a> を使う</td></tr><tr><td>すべてのエラーで TRUE にしたい</td><td>ISERR は #N/A のみ除外する</td><td>すべて判定したいなら <a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR関数</a> を使う</td></tr><tr><td>空白セルで FALSE が返る</td><td>空白はエラーではない</td><td>空白判定には <a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK関数</a> を使う</td></tr><tr><td>数式で #NAME? が表示される</td><td>関数名のスペルミス</td><td><code>ISERR</code> のスペルを確認する。<code>ISERROR</code> との混同に注意</td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc18">IS系12関数の違い・使い分け</span></h2>



<p class="wp-block-paragraph">IS系関数は、セルに入っているデータの種類を判定するファミリーです。用途に合わせて使い分けましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>判定内容</th><th>TRUE になる例</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK</a></td><td>空白セルか</td><td>未入力のセル</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR</a></td><td>任意のエラー値か</td><td>#N/A, #VALUE!, #REF! など</td></tr><tr><td>ISERR（この記事）</td><td>#N/A 以外のエラー値か</td><td>#VALUE!, #REF!, #DIV/0! など</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA</a></td><td>#N/A エラーか</td><td>#N/A のみ</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-islogical/">ISLOGICAL</a></td><td>論理値（TRUE/FALSE）か</td><td>TRUE, FALSE</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER</a></td><td>数値か</td><td>100, 3.14, 日付のシリアル値</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT</a></td><td>文字列か</td><td>&#8220;東京&#8221;, &#8220;123&#8221;（文字列型）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isnontext/">ISNONTEXT</a></td><td>文字列以外か</td><td>100, TRUE, 空白</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isformula/">ISFORMULA</a></td><td>数式が入っているか</td><td>=SUM(A1:A10) が入ったセル</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isref/">ISREF</a></td><td>有効なセル参照か</td><td>A1, Sheet2!B3</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iseven/">ISEVEN</a></td><td>偶数か</td><td>2, 4, 100</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isodd/">ISODD</a></td><td>奇数か</td><td>1, 3, 99</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>エラー判定の3兄弟を覚えておきましょう。<a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR</a>（全エラー）= <a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA</a>（#N/A のみ）+ <strong>ISERR</strong>（#N/A 以外）。この関係がわかれば使い分けに迷いません。</p></blockquote>



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



<p class="wp-block-paragraph">ISERR関数は、セルの値が #N/A 以外のエラーかどうかを判定する関数です。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>内容</th></tr></thead><tbody><tr><td>構文</td><td><code>=ISERR(テストの対象)</code></td></tr><tr><td>対象エラー</td><td>#VALUE!, #REF!, #DIV/0!, #NAME?, #NUM!, #NULL!（6種類）</td></tr><tr><td>除外エラー</td><td>#N/A（FALSE を返す）</td></tr><tr><td>戻り値</td><td>TRUE または FALSE</td></tr><tr><td>関係式</td><td>ISERROR = ISNA + ISERR</td></tr></tbody></table></figure>



<ul class="wp-block-list"><li>ISNA関数と組み合わせれば、エラーの種類に応じた精緻な分岐が可能</li><li>XLOOKUPの第4引数は #N/A しか処理しないので、構造エラーの検知にはISERRが必要</li><li>IFERRORですべてまとめて処理するか、ISERR + ISNAで区別するかがポイント</li></ul>



<p class="wp-block-paragraph">VLOOKUPやXLOOKUPで「#N/A は正常な結果だけど、それ以外のエラーは問題」という場面は意外と多いです。そんなときにISERR関数を使ってみてください。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc20">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR関数の使い方｜すべてのエラーをまとめて判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA関数の使い方｜#N/Aエラーだけを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数の使い方｜エラーを非表示にする方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-ifna/">IFNA関数の使い方｜#N/Aエラーだけを処理する方法</a></li><li><a href="https://mashukabu.com/excel-if-ifs-iferror-ifna-comparison/">IF・IFS・IFERROR・IFNAの使い分け｜選び方フロー付き</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT関数の使い方｜文字列かどうかを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER関数の使い方｜数値かどうかを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK関数の使い方｜空白セルを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-vlookup/">VLOOKUP関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数の使い方｜条件分岐の基本</a></li><li><a href="https://mashukabu.com/excel-function-list-by-function/">Excel関数一覧（機能別）</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-iserr/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのISERROR関数の使い方｜すべてのエラーをまとめて判定する方法【図解あり】</title>
		<link>https://mashukabu.com/excel-function-howto-use-iserror/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-iserror/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Mon, 11 Apr 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[IFERROR]]></category>
		<category><![CDATA[ISERROR関数]]></category>
		<category><![CDATA[IS関数]]></category>
		<category><![CDATA[VLOOKUP]]></category>
		<category><![CDATA[エラー判定]]></category>
		<category><![CDATA[データ検証]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=1597</guid>

					<description><![CDATA[ExcelのISERROR関数の使い方を図解で解説します。IFと組み合わせてVLOOKUPのエラーを空白や0に変える方法、IFERROR・ISNA・ISERRとの違いと使い分けまでわかりやすく説明。エラー処理に初めて取り組む方にもおすすめです。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">数式を組んだらセルに「#VALUE!」や「#REF!」が表示された&#8230;&#8230;。Excelで関数を使っていると、さまざまなエラーに遭遇しますよね。</p>



<p class="wp-block-paragraph">「エラーかどうかをまとめて判定したい」。そんなときに活躍するのがISERROR関数です。</p>



<p class="wp-block-paragraph">この記事では、ISERROR関数の基本から実務で役立つ活用パターンまでまとめて紹介します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>この記事は次のような人におすすめ</p><p>&#8211; セルの値がエラーかどうかをまとめて判定したい<br>&#8211; #N/A、#VALUE!、#REF! などエラーの種類を問わず検知したい<br>&#8211; IFERROR関数やISNA関数との違いを知りたい</p></blockquote>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-6" checked><label class="toc-title" for="toc-checkbox-6">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ISERROR関数とは？</a></li><li><a href="#toc2" tabindex="0">ISERROR関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">ISERROR関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">エラー種類ごとの判定結果</a></li><li><a href="#toc7" tabindex="0">Excelのエラー7種類とISERRORの判定結果</a></li><li><a href="#toc8" tabindex="0">セル参照で判定する</a></li><li><a href="#toc9" tabindex="0">IFと組み合わせてエラーを処理する</a></li></ol></li><li><a href="#toc10" tabindex="0">ISERROR関数の実務活用パターン</a><ol><li><a href="#toc11" tabindex="0">パターン1: VLOOKUPのエラーをまとめてキャッチする</a></li><li><a href="#toc12" tabindex="0">パターン2: エラーがあるセルをカウントする</a></li><li><a href="#toc13" tabindex="0">パターン3: エラーでないデータだけを合計する</a></li><li><a href="#toc14" tabindex="0">パターン4: 条件付き書式でエラーセルをハイライトする</a></li></ol></li><li><a href="#toc15" tabindex="0">ISERROR関数とISNA・ISERR・IFERRORの違い</a><ol><li><a href="#toc16" tabindex="0">ISERROR・ISNA・ISERRの対応範囲を比較</a></li><li><a href="#toc17" tabindex="0">使い分けの判断フロー</a></li></ol></li><li><a href="#toc18" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc19" tabindex="0">IS系12関数の違い・使い分け</a></li><li><a href="#toc20" tabindex="0">まとめ</a><ol><li><a href="#toc21" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">ISERROR（いず えらー）関数は、指定した値が<strong>エラー値</strong>かどうかを判定する関数です。</p>



<p class="wp-block-paragraph">対象がエラー値であれば TRUE を返します。数値・文字列・論理値・空白などエラー以外の値はすべて FALSE です。</p>



<p class="wp-block-paragraph"><strong>すべてのエラーに反応する</strong>のが最大の特徴です。#N/A、#VALUE!、#REF!、#DIV/0!、#NAME?、#NUM!、#NULL! の7種類すべてで TRUE を返します。</p>



<p class="wp-block-paragraph">IS系（情報関数）の1つで、セルに入っているデータの種類を確認するための関数ファミリーに属しています。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>ISERROR関数は Excel 2003 以降のすべてのバージョンで使用できます。Microsoft 365 や Googleスプレッドシートでも同じ書き方で使えます。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=ISERROR(テストの対象)</code></pre>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</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>エラーかどうか判定したい値またはセル参照</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は1つだけです。省略はできません。セル参照・直接値・数式の結果のいずれも指定できます。</p>



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



<p class="wp-block-paragraph">まずはシンプルな例で動きを確認してみましょう。</p>



<h3 class="wp-block-heading"><span id="toc6">エラー種類ごとの判定結果</span></h3>



<p class="wp-block-paragraph">さまざまなエラーをISERROR関数で判定すると、次のような結果になります。</p>



<figure class="wp-block-table"><table><thead><tr><th>A列の値</th><th>数式</th><th>ISERROR の結果</th><th>理由</th></tr></thead><tbody><tr><td>=10/0 (#DIV/0!)</td><td>=ISERROR(A2)</td><td>TRUE</td><td>ゼロ除算エラー</td></tr><tr><td>=VLOOKUP(&#8220;Z&#8221;,D:E,2,0) (#N/A)</td><td>=ISERROR(A3)</td><td>TRUE</td><td>検索値が見つからない</td></tr><tr><td>=&#8221;あ&#8221;+1 (#VALUE!)</td><td>=ISERROR(A4)</td><td>TRUE</td><td>データ型が不正</td></tr><tr><td>=SQRT(-1) (#NUM!)</td><td>=ISERROR(A5)</td><td>TRUE</td><td>数値が範囲外</td></tr><tr><td>100</td><td>=ISERROR(A6)</td><td>FALSE</td><td>正常な数値</td></tr><tr><td>東京</td><td>=ISERROR(A7)</td><td>FALSE</td><td>正常な文字列</td></tr><tr><td>TRUE</td><td>=ISERROR(A8)</td><td>FALSE</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>ISERROR関数は7種類すべてのエラーに反応します。#N/A だけを判定したい場合は <a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA関数</a> を、#N/A 以外のエラーだけを判定したい場合は <a href="https://mashukabu.com/excel-function-howto-use-iserr/">ISERR関数</a> を使いましょう。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc7">Excelのエラー7種類とISERRORの判定結果</span></h3>



<p class="wp-block-paragraph">ISERROR関数がすべてのエラーに TRUE を返すことを一覧で確認しておきましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー値</th><th>意味</th><th>ISERROR の結果</th></tr></thead><tbody><tr><td>#N/A</td><td>値が見つからない</td><td>TRUE</td></tr><tr><td>#VALUE!</td><td>データ型が不正</td><td>TRUE</td></tr><tr><td>#REF!</td><td>参照先が無効</td><td>TRUE</td></tr><tr><td>#DIV/0!</td><td>ゼロで除算した</td><td>TRUE</td></tr><tr><td>#NAME?</td><td>関数名やセル名が不正</td><td>TRUE</td></tr><tr><td>#NUM!</td><td>数値が範囲外</td><td>TRUE</td></tr><tr><td>#NULL!</td><td>セル範囲の共通部分がない</td><td>TRUE</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc8">セル参照で判定する</span></h3>



<p class="wp-block-paragraph">セル参照を使えば、特定のセルがエラーかどうかを確認できます。</p>



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



<p class="wp-block-paragraph">A1 にエラー値が表示されていれば TRUE です。数値や文字列、空白なら FALSE になります。</p>



<h3 class="wp-block-heading"><span id="toc9">IFと組み合わせてエラーを処理する</span></h3>



<p class="wp-block-paragraph">ISERROR関数は <a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数</a> と組み合わせることで、エラー時の処理を自由にコントロールできます。基本的な書き方はこちらです。</p>



<pre class="wp-block-code"><code>=IF(ISERROR(数式), エラー時の値, 正常時の値)</code></pre>



<p class="wp-block-paragraph">たとえば割り算の結果がエラーなら「計算不可」と表示し、正常なら計算結果を返す数式は次のとおりです。</p>



<pre class="wp-block-code"><code>=IF(ISERROR(B2/C2),&quot;計算不可&quot;,B2/C2)</code></pre>



<p class="wp-block-paragraph">C2 が 0 や空白のとき #DIV/0! になりますが、ISERROR で検知して「計算不可」と表示します。正常に割り算できた場合はそのまま結果を返しますよ。</p>



<h2 class="wp-block-heading"><span id="toc10">ISERROR関数の実務活用パターン</span></h2>



<h3 class="wp-block-heading"><span id="toc11">パターン1: VLOOKUPのエラーをまとめてキャッチする</span></h3>



<p class="wp-block-paragraph">VLOOKUPは #N/A だけでなく、#REF!（列番号が範囲外）や #VALUE!（検索値が不正）も発生します。すべてまとめて処理したい場合に便利です。</p>



<pre class="wp-block-code"><code>=IF(ISERROR(VLOOKUP(B2,商品マスタ!A:C,2,FALSE)),&quot;未登録&quot;,VLOOKUP(B2,商品マスタ!A:C,2,FALSE))</code></pre>



<p class="wp-block-paragraph">どの種類のエラーが発生しても「未登録」と表示します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>単にエラーを代替値に置き換えるだけなら <a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数</a> のほうがシンプルです。<code>=IFERROR(VLOOKUP(...),"未登録")</code> と書けば同じ結果になります。ISERROR関数は「TRUE/FALSE で判定結果を得たい」場面で力を発揮します。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc12">パターン2: エラーがあるセルをカウントする</span></h3>



<p class="wp-block-paragraph">データ範囲の中でエラーが何件あるか数えたいとき、SUMPRODUCT関数と組み合わせて使えます。</p>



<pre class="wp-block-code"><code>=SUMPRODUCT(ISERROR(C2:C100)*1)</code></pre>



<p class="wp-block-paragraph">C2:C100 の中でエラーになっているセルの個数を返します。ISERROR が TRUE（= 1）を返したセルの数を合計する仕組みです。</p>



<h3 class="wp-block-heading"><span id="toc13">パターン3: エラーでないデータだけを合計する</span></h3>



<p class="wp-block-paragraph">エラーが混在する範囲で、正常な数値だけを合計したいケースです。</p>



<pre class="wp-block-code"><code>=SUMPRODUCT((1-ISERROR(C2:C100))*C2:C100)</code></pre>



<p class="wp-block-paragraph">ISERROR が FALSE（= 0）のセルだけを合計します。エラーセルは自動的に除外されます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>通常の <code>=SUM(C2:C100)</code> だと、範囲内にエラーが1つでもあると結果全体がエラーになってしまいます。SUMPRODUCT + ISERROR なら、エラーを除外して正常値だけを集計できますよ。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc14">パターン4: 条件付き書式でエラーセルをハイライトする</span></h3>



<p class="wp-block-paragraph">数式が入った列でエラーになっているセルだけを目立たせたい場合に使えます。条件付き書式はTRUE/FALSEを返す数式が必要なので、ISERRORが最適です。</p>



<ol class="wp-block-list"><li>対象範囲を選択します</li><li>「ホーム」タブ →「条件付き書式」→「新しいルール」を選択します</li><li>「数式を使用して、書式設定するセルを決定」を選びます</li><li>数式欄に <code>=ISERROR(C2)</code> と入力します</li><li>好きな書式（赤い塗りつぶしなど）を設定します</li></ol>



<p class="wp-block-paragraph">エラーが入ったセルだけが色付きになります。エラーの種類を問わず検知できるので、データのクレンジング作業に役立ちますよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>条件付き書式では <a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数</a> は使えません。IFERROR は代替値を返す関数で、TRUE/FALSE を返さないためです。条件付き書式でエラーセルを装飾するなら ISERROR の出番ですよ。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc15">ISERROR関数とISNA・ISERR・IFERRORの違い</span></h2>



<p class="wp-block-paragraph">エラー判定に使える関数は複数あります。それぞれの違いを把握しておくと、場面に応じて最適な関数を選べますよ。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>対象エラー</th><th>戻り値</th><th>主な用途</th></tr></thead><tbody><tr><td>ISERROR（この記事）</td><td>すべてのエラー</td><td>TRUE / FALSE</td><td>エラーかどうかをTRUE/FALSEで返す</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA</a></td><td>#N/A のみ</td><td>TRUE / FALSE</td><td>#N/A だけを判定。他のエラーは残す</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iserr/">ISERR</a></td><td>#N/A 以外のエラー</td><td>TRUE / FALSE</td><td>#N/A を除くエラーを判定する</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR</a></td><td>すべてのエラー</td><td>代替値</td><td>エラー時に指定した値を返す</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-ifna/">IFNA</a></td><td>#N/A のみ</td><td>代替値</td><td>#N/A 時に指定した値を返す</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>「エラーを代替値に置き換えたいだけ」なら IFERROR や IFNA のほうがシンプルです。「エラーかどうかを TRUE/FALSE で知りたい」「エラーの有無に応じて処理を分岐したい」場面で ISERROR が活躍します。IF/IFS/IFERROR/IFNAの使い分けは <a href="https://mashukabu.com/excel-if-ifs-iferror-ifna-comparison/">こちらの比較記事</a> でもくわしく解説しています。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc16">ISERROR・ISNA・ISERRの対応範囲を比較</span></h3>



<p class="wp-block-paragraph">3つの関数がどのエラーに反応するかを一覧にまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー値</th><th>ISERROR</th><th>ISNA</th><th>ISERR</th></tr></thead><tbody><tr><td>#N/A</td><td>TRUE</td><td>TRUE</td><td>FALSE</td></tr><tr><td>#VALUE!</td><td>TRUE</td><td>FALSE</td><td>TRUE</td></tr><tr><td>#REF!</td><td>TRUE</td><td>FALSE</td><td>TRUE</td></tr><tr><td>#DIV/0!</td><td>TRUE</td><td>FALSE</td><td>TRUE</td></tr><tr><td>#NAME?</td><td>TRUE</td><td>FALSE</td><td>TRUE</td></tr><tr><td>#NUM!</td><td>TRUE</td><td>FALSE</td><td>TRUE</td></tr><tr><td>#NULL!</td><td>TRUE</td><td>FALSE</td><td>TRUE</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">ISERROR = ISNA + ISERR です。つまり <code>=OR(ISNA(A1), ISERR(A1))</code> と <code>=ISERROR(A1)</code> は同じ結果になります。</p>



<h3 class="wp-block-heading"><span id="toc17">使い分けの判断フロー</span></h3>



<ol class="wp-block-list"><li><strong>すべてのエラーを隠したい</strong> → <a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数</a></li><li><strong>すべてのエラーをTRUE/FALSEで判定したい</strong> → <strong>ISERROR関数</strong>（この記事）</li><li><strong>#N/A だけを隠したい</strong> → <a href="https://mashukabu.com/excel-function-howto-use-ifna/">IFNA関数</a></li><li><strong>#N/A だけをTRUE/FALSEで判定したい</strong> → <a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA関数</a></li><li><strong>#N/A 以外のエラーを判定したい</strong> → <a href="https://mashukabu.com/excel-function-howto-use-iserr/">ISERR関数</a></li></ol>



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



<p class="wp-block-paragraph">ISERROR関数自体がエラーを返すことはほとんどありません。ただし「思った結果にならない」ケースがあります。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>エラーなのに FALSE が返る</td><td>見た目はエラーだが実はエラー値ではない</td><td>「#N/A」が文字列として入力されていないか確認する</td></tr><tr><td>正常な値でも TRUE が返る</td><td>参照先のセルがエラーになっている</td><td>数式バーで参照先セルの値を確認する</td></tr><tr><td>空白セルで FALSE が返る</td><td>空白はエラーではない</td><td>空白判定には <a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK関数</a> を使う</td></tr><tr><td>エラーの種類を区別できない</td><td>ISERRORはすべてのエラーで TRUE を返す</td><td>#N/A だけなら <a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA関数</a>、#N/A 以外なら <a href="https://mashukabu.com/excel-function-howto-use-iserr/">ISERR関数</a></td></tr><tr><td>数式で #NAME? が表示される</td><td>関数名のスペルミス</td><td><code>ISERROR</code> のスペルを確認する</td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc19">IS系12関数の違い・使い分け</span></h2>



<p class="wp-block-paragraph">IS系関数は、セルに入っているデータの種類を判定するファミリーです。用途に合わせて使い分けましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>判定内容</th><th>TRUE になる例</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK</a></td><td>空白セルか</td><td>未入力のセル</td></tr><tr><td>ISERROR（この記事）</td><td>任意のエラー値か</td><td>#N/A, #VALUE!, #REF! など</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iserr/">ISERR</a></td><td>#N/A 以外のエラー値か</td><td>#VALUE!, #REF!, #DIV/0! など</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA</a></td><td>#N/A エラーか</td><td>#N/A のみ</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-islogical/">ISLOGICAL</a></td><td>論理値（TRUE/FALSE）か</td><td>TRUE, FALSE</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER</a></td><td>数値か</td><td>100, 3.14, 日付のシリアル値</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT</a></td><td>文字列か</td><td>&#8220;東京&#8221;, &#8220;123&#8221;（文字列型）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isnontext/">ISNONTEXT</a></td><td>文字列以外か</td><td>100, TRUE, 空白</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isformula/">ISFORMULA</a></td><td>数式が入っているか</td><td>=SUM(A1:A10) が入ったセル</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isref/">ISREF</a></td><td>有効なセル参照か</td><td>A1, Sheet2!B3</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iseven/">ISEVEN</a></td><td>偶数か</td><td>2, 4, 100</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isodd/">ISODD</a></td><td>奇数か</td><td>1, 3, 99</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>エラー判定の3兄弟を覚えておきましょう。ISERROR（全エラー）= <a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA</a>（#N/A のみ）+ <a href="https://mashukabu.com/excel-function-howto-use-iserr/">ISERR</a>（#N/A 以外）。この関係がわかれば使い分けに迷いません。</p></blockquote>



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



<p class="wp-block-paragraph">ISERROR関数は、セルの値がエラーかどうかを判定するシンプルな関数です。</p>



<ul class="wp-block-list"><li>引数は1つだけ。エラーなら TRUE、それ以外なら FALSE</li><li>#N/A、#VALUE!、#REF! など7種類すべてのエラーに反応する</li><li>ISNA（#N/A のみ）や ISERR（#N/A 以外）との違いは「対応範囲の広さ」</li><li>エラーを置き換えるだけなら IFERROR、判定だけなら ISERROR</li><li>条件付き書式やSUMPRODUCTとの組み合わせはISERROR関数の独壇場</li></ul>



<p class="wp-block-paragraph">特定のエラーだけを検知したい場合はISNAやISERRが適していますが、「エラーかどうかをまとめて判定したい」場面ではISERROR関数が最適です。ぜひ使い分けてみてください。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc21">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA関数の使い方｜#N/Aエラーだけを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-iserr/">ISERR関数の使い方｜#N/A以外のエラーを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数の使い方｜エラーを非表示にする方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-ifna/">IFNA関数の使い方｜#N/Aエラーだけを処理する方法</a></li><li><a href="https://mashukabu.com/excel-if-ifs-iferror-ifna-comparison/">IF・IFS・IFERROR・IFNAの使い分け｜選び方フロー付き</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT関数の使い方｜文字列かどうかを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER関数の使い方｜数値かどうかを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-islogical/">ISLOGICAL関数の使い方｜論理値（TRUE/FALSE）を判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK関数の使い方｜空白セルを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isformula/">ISFORMULA関数の使い方｜数式が入っているか確認する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-vlookup/">VLOOKUP関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数の使い方｜条件分岐の基本</a></li><li><a href="https://mashukabu.com/excel-function-list-by-function/">Excel関数一覧（機能別）</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-iserror/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのISLOGICAL関数の使い方｜TRUE/FALSEの論理値を判定する方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-islogical/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-islogical/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Fri, 08 Apr 2022 21:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[ISLOGICAL関数]]></category>
		<category><![CDATA[IS関数]]></category>
		<category><![CDATA[TRUE FALSE]]></category>
		<category><![CDATA[データ検証]]></category>
		<category><![CDATA[論理値]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=1594</guid>

					<description><![CDATA[ExcelのISLOGICAL関数の使い方を初心者向けに解説。セルの値がTRUE/FALSEの論理値かどうかを判定する基本構文から、IF関数との組み合わせ、CSVインポート後のデータ検証、IS系12関数の比較まで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「このセルの値って本当にTRUE/FALSEなの？」と気になったことはありませんか。見た目はTRUEでも、文字列の&#8221;TRUE&#8221;が入っているだけかもしれません。文字列のままだと計算に使えず、意図しない結果になることがあります。</p>



<p class="wp-block-paragraph">そんなときに頼れるのがISLOGICAL関数です。セルの値が本物の論理値かどうかを一発で見分けられます。</p>



<p class="wp-block-paragraph">この記事では、ISLOGICAL関数の基本から実務で役立つ活用パターンまで解説します。IF関数との組み合わせやCSVインポート後のデータ検証、IS系12関数の使い分けもカバーします。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>この記事は次のような人におすすめ</p><p>&#8211; セルの値が本当に論理値（TRUE/FALSE）か確認したい<br>&#8211; 文字列の&#8221;TRUE&#8221;と論理値のTRUEを区別したい<br>&#8211; IF関数やデータ入力規則と組み合わせて使いたい<br>&#8211; IS系関数の違いを整理したい</p></blockquote>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-7" checked><label class="toc-title" for="toc-checkbox-7">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ISLOGICAL関数とは？</a></li><li><a href="#toc2" tabindex="0">ISLOGICAL関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">ISLOGICAL関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">値の種類ごとの判定結果</a></li><li><a href="#toc7" tabindex="0">セル参照で判定する</a></li><li><a href="#toc8" tabindex="0">数式の結果を判定する</a></li></ol></li><li><a href="#toc9" tabindex="0">ISLOGICAL関数の実務活用パターン</a><ol><li><a href="#toc10" tabindex="0">パターン1: IF関数と組み合わせてデータ種別を表示する</a></li><li><a href="#toc11" tabindex="0">パターン2: 文字列&#8221;TRUE&#8221;と論理値TRUEを区別する</a></li><li><a href="#toc12" tabindex="0">パターン3: データ入力規則で論理値のみに制限する</a></li><li><a href="#toc13" tabindex="0">パターン4: SUMPRODUCTと組み合わせて論理値の個数を数える</a></li><li><a href="#toc14" tabindex="0">パターン5: 条件付き書式で論理値セルをハイライトする</a></li></ol></li><li><a href="#toc15" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc16" tabindex="0">ISLOGICAL関数とTYPE関数の使い分け</a></li><li><a href="#toc17" tabindex="0">IS系12関数の違い・使い分け</a></li><li><a href="#toc18" tabindex="0">まとめ</a><ol><li><a href="#toc19" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">ISLOGICAL（いず・ろじかる）関数は、指定した値が論理値かどうかを判定する関数です。論理値とはTRUEまたはFALSEのことです。判定結果はTRUEかFALSEで返ります。「IS（〜かどうか）+ LOGICAL（論理的な）」が名前の由来です。</p>



<p class="wp-block-paragraph">対象が論理値であればTRUEを返します。数値・文字列・空白・エラー値など、論理値以外はすべてFALSEです。</p>



<p class="wp-block-paragraph">ExcelのIS系関数（情報関数）の1つで、セルに入っているデータの種類を確認するファミリーに属しています。CSVインポート後のデータ検証や、チェックボックスの値確認に使えます。「見た目ではわからない型の違い」を見抜くときに活躍します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>ISLOGICAL関数はExcel 2003以降のすべてのバージョンで使用できます。Excel 2021 / Microsoft 365はもちろん、Googleスプレッドシートでも同じ構文で利用可能です。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=ISLOGICAL(テストの対象)</code></pre>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</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>論理値かどうか判定したい値またはセル参照</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は1つだけです。省略はできません。セル参照・直接値・数式の結果のいずれも指定できます。</p>



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



<p class="wp-block-paragraph">まずはシンプルな例で動きを確認してみましょう。</p>



<h3 class="wp-block-heading"><span id="toc6">値の種類ごとの判定結果</span></h3>



<p class="wp-block-paragraph">さまざまなデータをISLOGICAL関数で判定すると、次のような結果になります。</p>



<figure class="wp-block-table"><table><thead><tr><th>入力値</th><th>数式</th><th>結果</th><th>理由</th></tr></thead><tbody><tr><td>TRUE</td><td>=ISLOGICAL(TRUE)</td><td><strong>TRUE</strong></td><td>論理値のTRUE</td></tr><tr><td>FALSE</td><td>=ISLOGICAL(FALSE)</td><td><strong>TRUE</strong></td><td>論理値のFALSE</td></tr><tr><td>&#8220;TRUE&#8221;</td><td>=ISLOGICAL(&#8220;TRUE&#8221;)</td><td><strong>FALSE</strong></td><td>文字列の&#8221;TRUE&#8221;</td></tr><tr><td>1</td><td>=ISLOGICAL(1)</td><td><strong>FALSE</strong></td><td>数値</td></tr><tr><td>0</td><td>=ISLOGICAL(0)</td><td><strong>FALSE</strong></td><td>数値</td></tr><tr><td>&#8220;&#8221;</td><td>=ISLOGICAL(&#8220;&#8221;)</td><td><strong>FALSE</strong></td><td>空文字列</td></tr><tr><td>（空白セル）</td><td>=ISLOGICAL(A1)</td><td><strong>FALSE</strong></td><td>空白</td></tr><tr><td>#N/A</td><td>=ISLOGICAL(#N/A)</td><td><strong>FALSE</strong></td><td>エラー値</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">ポイントは、<strong>論理値のTRUEとFALSEだけがTRUEになる</strong>ということです。数値の0や1、文字列の&#8221;TRUE&#8221;は論理値ではないためFALSEになります。</p>



<p class="wp-block-paragraph">ここで「論理値」とは何かを整理しておきましょう。論理値はTRUEとFALSEの2つだけです。0や1は数値であり、論理値ではありません。&#8221;TRUE&#8221;のようにダブルクォーテーションで囲まれたものは文字列です。この3つの違いを意識すると、判定結果に迷わなくなります。</p>



<h3 class="wp-block-heading"><span id="toc7">セル参照で判定する</span></h3>



<p class="wp-block-paragraph">セル参照を使えば、特定のセルの値が論理値かどうかを確認できます。</p>



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



<p class="wp-block-paragraph">A1に <code>TRUE</code> が入っていればTRUE、<code>100</code> や <code>"完了"</code> が入っていればFALSEです。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>空白セルを指定した場合もFALSEになります。空白かどうかの判定には<a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK関数</a>を使いましょう。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc8">数式の結果を判定する</span></h3>



<p class="wp-block-paragraph">ISLOGICAL関数の引数に数式を直接入れることもできます。</p>



<pre class="wp-block-code"><code>=ISLOGICAL(A1&gt;100)</code></pre>



<p class="wp-block-paragraph"><code>A1>100</code> の結果はTRUEかFALSE（論理値）です。そのため、この数式は常に<strong>TRUE</strong>を返します。比較演算子の結果は必ず論理値になるためです。</p>



<p class="wp-block-paragraph">同じ理由で、<code>=ISLOGICAL(AND(A1>0,B1>0))</code> もTRUEを返します。<code>=ISLOGICAL(ISNUMBER(C1))</code> も同様です。これらの関数の戻り値が論理値だからです。ISLOGICAL関数は「中身の値が論理値かどうか」を見ている、と覚えておきましょう。</p>



<h2 class="wp-block-heading"><span id="toc9">ISLOGICAL関数の実務活用パターン</span></h2>



<h3 class="wp-block-heading"><span id="toc10">パターン1: IF関数と組み合わせてデータ種別を表示する</span></h3>



<p class="wp-block-paragraph">セルの内容が論理値かどうかに応じて処理を分けたい場面で使えます。</p>



<pre class="wp-block-code"><code>=IF(ISLOGICAL(B2),&quot;論理値です&quot;,&quot;論理値ではありません&quot;)</code></pre>



<p class="wp-block-paragraph">B2がTRUEやFALSEなら「論理値です」と表示します。それ以外なら「論理値ではありません」と表示します。</p>



<p class="wp-block-paragraph">アンケートの回答欄やチェックボックスの結果など、TRUE/FALSEが入るべきセルの検証に便利です。データ検証の結果に応じて処理を切り替えるパターンは、<a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数</a>の記事でも詳しく解説しています。</p>



<h3 class="wp-block-heading"><span id="toc11">パターン2: 文字列&#8221;TRUE&#8221;と論理値TRUEを区別する</span></h3>



<p class="wp-block-paragraph">CSVファイルをインポートすると、論理値だったはずのTRUEが文字列&#8221;TRUE&#8221;に変わることがあります。見た目は同じでも中身が違うため、計算に使えません。</p>



<pre class="wp-block-code"><code>=ISLOGICAL(C2)</code></pre>



<p class="wp-block-paragraph">論理値のTRUEならTRUE、文字列の&#8221;TRUE&#8221;ならFALSEが返ります。この結果で問題のあるセルを特定できます。</p>



<p class="wp-block-paragraph">文字列の&#8221;TRUE&#8221;を論理値に変換したい場合は、次のように書きます。</p>



<pre class="wp-block-code"><code>=EXACT(C2,&quot;TRUE&quot;)*1=1</code></pre>



<p class="wp-block-paragraph">あるいは、もっとシンプルに <code>=C2=TRUE</code> でも判定できます。ただし、この式は文字列&#8221;TRUE&#8221;でもTRUEを返す場合があります。厳密な判定にはISLOGICAL関数が確実です。</p>



<h3 class="wp-block-heading"><span id="toc12">パターン3: データ入力規則で論理値のみに制限する</span></h3>



<p class="wp-block-paragraph">特定の列にTRUE/FALSEだけを入力させたいときに活用できます。</p>



<p class="wp-block-paragraph">データの入力規則（データタブ → データの入力規則）で、「ユーザー設定」の数式に次のように入力します。</p>



<pre class="wp-block-code"><code>=ISLOGICAL(D2)</code></pre>



<p class="wp-block-paragraph">この設定をすると、D2に論理値以外の値を入力した場合にエラーメッセージが表示されます。チェックリストのようなTRUE/FALSEだけが入るべき列の入力制限に使えます。</p>



<h3 class="wp-block-heading"><span id="toc13">パターン4: SUMPRODUCTと組み合わせて論理値の個数を数える</span></h3>



<p class="wp-block-paragraph">範囲内に論理値がいくつ含まれるかを数えるには、SUMPRODUCT関数と組み合わせます。</p>



<pre class="wp-block-code"><code>=SUMPRODUCT(ISLOGICAL(A2:A20)*1)</code></pre>



<p class="wp-block-paragraph"><code>ISLOGICAL(A2:A20)</code> が各セルに対してTRUE/FALSEの配列を返します。<code>*1</code> で数値に変換し、SUMPRODUCTで合計すると論理値のセル数がわかります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>数値の個数を数えるにはCOUNT関数が使えますが、論理値の個数を直接数える専用関数はありません。<a href="https://mashukabu.com/excel-function-howto-use-sumproduct/">SUMPRODUCT関数</a>+ISLOGICALの組み合わせが定番パターンです。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc14">パターン5: 条件付き書式で論理値セルをハイライトする</span></h3>



<p class="wp-block-paragraph">論理値が入っているセルだけを色分けしたい場合に使えます。</p>



<ol class="wp-block-list"><li>対象範囲を選択します</li><li>「ホーム」タブ →「条件付き書式」→「新しいルール」を選択します</li><li>「数式を使用して、書式設定するセルを決定」を選びます</li><li>数式欄に <code>=ISLOGICAL(A1)</code> と入力します</li><li>好きな書式（塗りつぶし色など）を設定します</li></ol>



<p class="wp-block-paragraph">これで論理値が入っているセルだけが色分けされます。データクレンジングの際に「論理値が入るべき列に文字列が混ざっていないか」を視覚的に確認できます。</p>



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



<p class="wp-block-paragraph">ISLOGICAL関数自体がエラーを返すことはほとんどありません。ただし「思った結果にならない」ケースがあるので確認しておきましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>文字列&#8221;TRUE&#8221;でFALSEが返る</td><td>セルに論理値ではなく文字列が入っている</td><td>CSVインポート後のデータを確認。<code>=C2=TRUE</code> で再変換するか、<a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数</a>で条件処理する</td></tr><tr><td>チェックボックスの値でFALSEが返る</td><td>チェックボックスのリンクセルを参照していない</td><td>チェックボックスのプロパティでリンクセルを設定し、そのセルを参照する</td></tr><tr><td>空白セルでFALSEが返る</td><td>空白は論理値ではない</td><td>空白判定には<a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK関数</a>を使う</td></tr><tr><td>数値の0や1でFALSEが返る</td><td>0/1は数値であり論理値ではない</td><td>論理値に変換するには <code>=A1=1</code> のように比較式を使う</td></tr><tr><td>数式が入っているセルでTRUEが返る</td><td>数式の<strong>結果</strong>が論理値である</td><td>ISLOGICAL関数はセルの内容ではなく結果を判定する。数式かどうかの判定には<a href="https://mashukabu.com/excel-function-howto-use-isformula/">ISFORMULA関数</a>を使う</td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc16">ISLOGICAL関数とTYPE関数の使い分け</span></h2>



<p class="wp-block-paragraph">論理値かどうかの判定にはISLOGICAL関数のほかに、<a href="https://mashukabu.com/excel-function-howto-use-type/">TYPE関数</a>を使う方法もあります。</p>



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



<p class="wp-block-paragraph">TYPE関数はセルの値の種類を数値コードで返します。論理値のコードは <strong>4</strong> です。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>ISLOGICAL</th><th>TYPE関数</th></tr></thead><tbody><tr><td>戻り値</td><td>TRUE/FALSE</td><td>数値コード（1=数値, 2=文字列, 4=論理値, 16=エラー, 64=配列）</td></tr><tr><td>論理値の判定</td><td>=ISLOGICAL(A1)</td><td>=TYPE(A1)=4</td></tr><tr><td>使い分け</td><td>「論理値かどうか」だけ知りたいとき</td><td>値の種類を分岐処理したいとき</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">「論理値かどうか」だけを判定するならISLOGICAL関数がシンプルです。複数の型を条件分岐したい場合は、TYPE関数が便利です。TYPE関数の詳しい使い方は<a href="https://mashukabu.com/excel-function-howto-use-type/">TYPE関数の記事</a>で解説しています。</p>



<h2 class="wp-block-heading"><span id="toc17">IS系12関数の違い・使い分け</span></h2>



<p class="wp-block-paragraph">IS系関数は、セルに入っているデータの種類を判定するファミリーです。用途に合わせて使い分けましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>判定内容</th><th>TRUEになる例</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK</a></td><td>空白セルか</td><td>未入力のセル</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR</a></td><td>任意のエラー値か</td><td>#N/A, #VALUE!, #REF! など</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iserr/">ISERR</a></td><td>#N/A以外のエラー値か</td><td>#VALUE!, #REF!, #DIV/0! など</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA</a></td><td>#N/Aエラーか</td><td>#N/Aのみ</td></tr><tr><td>ISLOGICAL（この記事）</td><td>論理値（TRUE/FALSE）か</td><td>TRUE, FALSE</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER</a></td><td>数値か</td><td>100, 3.14, 日付のシリアル値</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT</a></td><td>文字列か</td><td>&#8220;東京&#8221;, &#8220;123&#8221;（文字列型）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isnontext/">ISNONTEXT</a></td><td>文字列以外か</td><td>100, TRUE, 空白</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isformula/">ISFORMULA</a></td><td>数式が入っているか</td><td>=SUM(A1:A10)が入ったセル</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isref/">ISREF</a></td><td>有効なセル参照か</td><td>A1, Sheet2!B3</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iseven/">ISEVEN</a></td><td>偶数か</td><td>2, 4, 100</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isodd/">ISODD</a></td><td>奇数か</td><td>1, 3, 99</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>エラー判定には<a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数</a>のほうが実務では便利です。ISERROR関数はTRUE/FALSEを返すだけですが、IFERROR関数はエラー時の代替値をそのまま指定できます。</p></blockquote>



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



<p class="wp-block-paragraph">ISLOGICAL関数は、セルの値が論理値（TRUE/FALSE）かどうかを判定するシンプルな関数です。</p>



<ul class="wp-block-list"><li>引数は1つだけ。論理値ならTRUE、それ以外ならFALSE</li><li>文字列の&#8221;TRUE&#8221;と論理値のTRUEを区別できる</li><li>IF関数やデータ入力規則と組み合わせるのが実務での定番パターン</li><li>SUMPRODUCTとの組み合わせで論理値の個数カウントも可能</li></ul>



<p class="wp-block-paragraph">IS系関数ファミリーの中でも使用頻度は高くありません。それでも、CSVインポート後のデータ検証やチェックリストの入力制限など、ここぞという場面で役立ちます。</p>



<p class="wp-block-paragraph">「このデータ、本当にTRUE/FALSEなの？」と迷ったら、まずISLOGICAL関数で確認してみてください。</p>



<h3 class="wp-block-heading"><span id="toc19">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK関数の使い方｜空白セルを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER関数の使い方｜数値かどうかを確認する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT関数の使い方｜文字列かどうかを確認する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR関数の使い方｜エラー値を判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isformula/">ISFORMULA関数の使い方｜数式が入っているか確認する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-type/">TYPE関数の使い方｜セルのデータ型を調べる方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数の使い方｜エラーを非表示にする方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数の使い方｜条件分岐の基本</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-islogical/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのISREF関数の使い方｜セル参照が有効かどうかを判定する方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-isref/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-isref/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 07 Apr 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[ISREF関数]]></category>
		<category><![CDATA[IS関数]]></category>
		<category><![CDATA[セル参照]]></category>
		<category><![CDATA[データ検証]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=1584</guid>

					<description><![CDATA[ExcelのISREF関数の使い方を初心者向けに解説。セル参照が有効かどうかを判定する基本構文から、INDIRECT関数との組み合わせによる参照エラー防止、名前の定義の存在検証、IF関数と連携したエラー回避テクニック、IS系12関数との違い・使い分けまで実務で使える活用パターンを紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「INDIRECT関数を使ったら、シート名を間違えて #REF! エラーが出てしまった&#8230;&#8230;」。動的にセル参照を組み立てる数式では、参照先が存在しないトラブルが起きがちですよね。</p>



<p class="wp-block-paragraph">参照が正しいかどうかを1つずつ目視で確認するのは大変です。そんなときに活躍するのがISREF関数です。</p>



<p class="wp-block-paragraph">この記事では、ISREF関数の基本から実務活用パターンまでまとめて紹介します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>この記事は次のような人におすすめ</p><p>&#8211; セル参照が有効かどうかを確認したい<br>&#8211; INDIRECT関数で組み立てた参照が正しいかチェックしたい<br>&#8211; 名前の定義で設定した範囲が存在するか検証したい</p></blockquote>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-8" checked><label class="toc-title" for="toc-checkbox-8">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ISREF関数とは？</a></li><li><a href="#toc2" tabindex="0">ISREF関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">ISREF関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">値の種類ごとの判定結果</a></li><li><a href="#toc7" tabindex="0">引数の「値」ではなく「参照としての有効性」を判定する</a></li></ol></li><li><a href="#toc8" tabindex="0">ISREF関数の実務活用パターン</a><ol><li><a href="#toc9" tabindex="0">パターン1: INDIRECT関数の参照エラーを事前チェックする</a></li><li><a href="#toc10" tabindex="0">パターン2: 名前の定義が存在するか検証する</a></li><li><a href="#toc11" tabindex="0">パターン3: 複数シートからデータを安全に取得する</a></li><li><a href="#toc12" tabindex="0">パターン4: OFFSET関数の参照範囲を検証する</a></li><li><a href="#toc13" tabindex="0">パターン5: データ入力シートの参照チェックリストを作る</a></li></ol></li><li><a href="#toc14" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc15" tabindex="0">IS系12関数の違い・使い分け</a></li><li><a href="#toc16" tabindex="0">まとめ</a><ol><li><a href="#toc17" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">ISREF（いず れふ）関数は、指定した値が<strong>有効なセル参照かどうか</strong>を判定する関数です。ref は「reference（参照）」の略です。</p>



<p class="wp-block-paragraph">引数がセル参照として有効であれば TRUE を返します。数値・文字列・エラー値など、セル参照でないものはすべて FALSE です。</p>



<p class="wp-block-paragraph">IS系（情報関数）の1つです。セルのデータの種類を確認するための関数ファミリーに属しています。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>ISREF関数は引数の「参照としての有効性」を判定します。セルに入力されている値がセル参照かどうかを判定するものではありません。たとえば <code>=ISREF(A1)</code> は「A1 というセル参照は有効か？」を判定します。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=ISREF(テストの対象)</code></pre>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</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>セル参照かどうかを判定したい値</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は1つだけです。省略はできません。</p>



<p class="wp-block-paragraph">セル参照（A1、Sheet2!B3 など）や名前の定義を指定できます。数値や文字列を直接指定すると FALSE になります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>名前の定義を検証するときはダブルクォーテーションを付けません。<code>=ISREF(売上)</code> は名前の定義「売上」が有効かを判定します。<code>=ISREF("売上")</code> だと文字列扱いになり FALSE です。</p></blockquote>



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



<p class="wp-block-paragraph">まずはシンプルな例で動きを確認してみましょう。</p>



<h3 class="wp-block-heading"><span id="toc6">値の種類ごとの判定結果</span></h3>



<p class="wp-block-paragraph">さまざまな値を ISREF 関数で判定すると、次のような結果になります。</p>



<p class="wp-block-paragraph">セル参照 A1 を指定した場合:</p>



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



<p class="wp-block-paragraph">結果: <strong>TRUE</strong>（A1 は有効なセル参照なので TRUE）</p>



<p class="wp-block-paragraph">数値 100 を直接指定した場合:</p>



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



<p class="wp-block-paragraph">結果: <strong>FALSE</strong>（数値はセル参照ではないので FALSE）</p>



<p class="wp-block-paragraph">文字列を直接指定した場合:</p>



<pre class="wp-block-code"><code>=ISREF(&quot;東京&quot;)</code></pre>



<p class="wp-block-paragraph">結果: <strong>FALSE</strong>（文字列はセル参照ではないので FALSE）</p>



<p class="wp-block-paragraph">名前の定義「売上」が存在する場合:</p>



<pre class="wp-block-code"><code>=ISREF(売上)</code></pre>



<p class="wp-block-paragraph">結果: <strong>TRUE</strong>（名前の定義が有効な範囲を参照していれば TRUE）</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-indirect/">INDIRECT関数</a>の結果を指定した場合:</p>



<pre class="wp-block-code"><code>=ISREF(INDIRECT(&quot;A1&quot;))</code></pre>



<p class="wp-block-paragraph">結果: <strong>TRUE</strong>（INDIRECT が有効なセル参照を返せば TRUE）</p>



<p class="wp-block-paragraph">INDIRECT関数に無効なシート名を指定した場合:</p>



<pre class="wp-block-code"><code>=ISREF(INDIRECT(&quot;存在しないシート!A1&quot;))</code></pre>



<p class="wp-block-paragraph">結果: <strong>FALSE</strong>（参照先が無効なので FALSE）</p>



<h3 class="wp-block-heading"><span id="toc7">引数の「値」ではなく「参照としての有効性」を判定する</span></h3>



<p class="wp-block-paragraph">ここが重要なポイントです。ISREF関数はセルに入っている値ではなく、<strong>引数がセル参照として有効かどうか</strong>を見ています。</p>



<p class="wp-block-paragraph">たとえば A1 に数値 100 が入っていても、<code>=ISREF(A1)</code> は TRUE です。A1 というセル参照自体が有効だからです。一方、<code>=ISREF(100)</code> は FALSE です。数値 100 はセル参照ではありません。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>セルの「値の種類」を判定するには <a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT関数</a> や <a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER関数</a> を使いましょう。ISREF関数は「セル参照として有効かどうか」だけに特化した関数です。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc8">ISREF関数の実務活用パターン</span></h2>



<h3 class="wp-block-heading"><span id="toc9">パターン1: INDIRECT関数の参照エラーを事前チェックする</span></h3>



<p class="wp-block-paragraph">INDIRECT関数で動的にセル参照を組み立てるとき、参照先が無効だとエラーになります。ISREFで事前にチェックしましょう。</p>



<pre class="wp-block-code"><code>=IF(ISREF(INDIRECT(A2&amp;&quot;!B1&quot;)),INDIRECT(A2&amp;&quot;!B1&quot;),&quot;シート名を確認&quot;)</code></pre>



<p class="wp-block-paragraph">A2 にシート名が入っている場合を想定しています。参照が有効ならそのセルの値を表示します。無効なら「シート名を確認」と表示します。</p>



<p class="wp-block-paragraph">シート名の入力ミスによる #REF! エラーを防げます。</p>



<h3 class="wp-block-heading"><span id="toc10">パターン2: 名前の定義が存在するか検証する</span></h3>



<p class="wp-block-paragraph">名前の定義を使った数式で「名前が削除されていた」トラブルを防ぐパターンです。</p>



<pre class="wp-block-code"><code>=IF(ISREF(売上合計),SUM(売上合計),&quot;名前の定義なし&quot;)</code></pre>



<p class="wp-block-paragraph">名前の定義「売上合計」が有効ならSUMで合計します。削除されていれば「名前の定義なし」と表示します。</p>



<p class="wp-block-paragraph">テンプレートファイルの配布前チェックに便利です。</p>



<h3 class="wp-block-heading"><span id="toc11">パターン3: 複数シートからデータを安全に取得する</span></h3>



<p class="wp-block-paragraph">月別シートからデータを集約するとき、まだ作成されていないシートへの参照でエラーが出る場合があります。</p>



<pre class="wp-block-code"><code>=IF(ISREF(INDIRECT(&quot;'&quot;&amp;B2&amp;&quot;'!C5&quot;)),INDIRECT(&quot;'&quot;&amp;B2&amp;&quot;'!C5&quot;),0)</code></pre>



<p class="wp-block-paragraph">B2 にシート名（例: 4月、5月&#8230;&#8230;）が入っている場合を想定しています。シートが存在すれば C5 の値を取得します。未作成なら 0 を返します。</p>



<p class="wp-block-paragraph">年度途中で月別シートを順次追加していく運用で重宝します。</p>



<h3 class="wp-block-heading"><span id="toc12">パターン4: OFFSET関数の参照範囲を検証する</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-offset/">OFFSET関数</a>で動的に範囲を指定するとき、範囲外を参照していないかチェックできます。</p>



<pre class="wp-block-code"><code>=IF(ISREF(OFFSET(A1,D2-1,0)),OFFSET(A1,D2-1,0),&quot;範囲外です&quot;)</code></pre>



<p class="wp-block-paragraph">D2 に行番号を入れて動的にデータを取得する場合を想定しています。参照が有効ならデータを取得します。範囲外なら「範囲外です」と表示します。</p>



<p class="wp-block-paragraph">ユーザーが行番号を手入力するシートでエラーを防げます。</p>



<h3 class="wp-block-heading"><span id="toc13">パターン5: データ入力シートの参照チェックリストを作る</span></h3>



<p class="wp-block-paragraph">複数の名前の定義やシート参照を一括でチェックするリストを作れます。</p>



<p class="wp-block-paragraph">A列に参照名を並べ、B列に次の数式を入れます。</p>



<pre class="wp-block-code"><code>=IF(ISREF(INDIRECT(A2)),&quot;有効&quot;,&quot;無効&quot;)</code></pre>



<p class="wp-block-paragraph">A2 にチェックしたい参照名（例: 売上, 経費, Sheet2!A1 など）を入力します。参照が有効なら「有効」、無効なら「無効」と表示します。</p>



<p class="wp-block-paragraph">テンプレートの配布前やシート構成の変更後に、参照の整合性をまとめて確認できます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>ISREF関数は<a href="https://mashukabu.com/excel-function-howto-use-indirect/">INDIRECT関数</a>と組み合わせるのが最も実用的です。INDIRECT関数が返す動的参照の有効性をISREFで検証するパターンは、多くの実務シーンで使えます。</p></blockquote>



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



<p class="wp-block-paragraph">ISREF関数自体がエラーを返すことはほとんどありません。ただし「思った結果にならない」ケースがあります。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>常に TRUE になる</td><td>セル参照（A1 など）を直接指定している</td><td>セル参照は常に有効。動的参照を検証するなら INDIRECT 経由で指定する</td></tr><tr><td>名前の定義で FALSE になる</td><td>ダブルクォーテーションを付けている</td><td><code>=ISREF("売上")</code> ではなく <code>=ISREF(売上)</code> と入力する</td></tr><tr><td>INDIRECT と組み合わせて FALSE になる</td><td>シート名のスペルミスやシートの削除</td><td>INDIRECT に渡すシート名を確認する</td></tr><tr><td>数値や文字列で FALSE になる</td><td>数値・文字列はセル参照ではない</td><td>正常な動作。セル参照以外は FALSE が正しい結果</td></tr><tr><td>#NAME? エラーが出る</td><td>存在しない名前の定義を直接指定した</td><td><code>=ISREF(売上)</code> で「売上」が未定義だと #NAME? になる。INDIRECT 経由にすると FALSE を返せる</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>名前の定義の存在チェックには <code>=ISREF(INDIRECT("売上"))</code> のように INDIRECT 経由で渡すのがおすすめです。名前が未定義でも #NAME? エラーにならず FALSE が返ります。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc15">IS系12関数の違い・使い分け</span></h2>



<p class="wp-block-paragraph">IS系関数は、セルに入っているデータの種類を判定するファミリーです。用途に合わせて使い分けましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>判定内容</th><th>TRUE になる例</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK</a></td><td>空白セルか</td><td>未入力のセル</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR</a></td><td>任意のエラー値か</td><td>#N/A, #VALUE!, #REF! など</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iserr/">ISERR</a></td><td>#N/A 以外のエラー値か</td><td>#VALUE!, #REF!, #DIV/0! など</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA</a></td><td>#N/A エラーか</td><td>#N/A のみ</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-islogical/">ISLOGICAL</a></td><td>論理値（TRUE/FALSE）か</td><td>TRUE, FALSE</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER</a></td><td>数値か</td><td>100, 3.14, 日付のシリアル値</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT</a></td><td>文字列か</td><td>&#8220;東京&#8221;, &#8220;123&#8221;（文字列型）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isnontext/">ISNONTEXT</a></td><td>文字列以外か</td><td>100, TRUE, 空白</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isformula/">ISFORMULA</a></td><td>数式が入っているか</td><td>=SUM(A1:A10) が入ったセル</td></tr><tr><td>ISREF（この記事）</td><td>有効なセル参照か</td><td>A1, Sheet2!B3, 名前の定義</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iseven/">ISEVEN</a></td><td>偶数か</td><td>2, 4, 100</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isodd/">ISODD</a></td><td>奇数か</td><td>1, 3, 99</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>ISREF関数は他のIS系関数と性質が異なります。<a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT関数</a>や<a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER関数</a>はセルの<strong>値の種類</strong>を判定しますが、ISREF関数は引数が<strong>セル参照として有効かどうか</strong>を判定します。セルの中身が何であっても、参照自体が有効なら TRUE です。</p></blockquote>



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



<p class="wp-block-paragraph">ISREF関数は、引数が有効なセル参照かどうかを判定するシンプルな関数です。</p>



<ul class="wp-block-list"><li>引数は1つだけ（セル参照・名前の定義・INDIRECT の結果など）</li><li>有効なセル参照なら TRUE、それ以外は FALSE</li><li><a href="https://mashukabu.com/excel-function-howto-use-indirect/">INDIRECT関数</a>と組み合わせるのが実務での定番パターン</li><li>名前の定義の存在チェックやシート参照の検証に便利</li></ul>



<p class="wp-block-paragraph">動的参照のエラー防止に、ぜひ活用してみてください。</p>



<h3 class="wp-block-heading"><span id="toc17">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK関数の使い方｜空白セルを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER関数の使い方｜数値かどうかを確認する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT関数の使い方｜文字列かどうかを確認する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-islogical/">ISLOGICAL関数の使い方｜論理値を判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA関数の使い方｜#N/Aエラーを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR関数の使い方｜エラー値を判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isformula/">ISFORMULA関数の使い方｜数式が入っているか判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-indirect/">INDIRECT関数の使い方｜セル参照を文字列で指定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-offset/">OFFSET関数の使い方｜動的な範囲指定の方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数の使い方｜エラーを非表示にする方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数の使い方｜条件分岐の基本</a></li><li><a href="https://mashukabu.com/excel-error-value-list/">Excelのエラー値一覧と対処法</a></li><li><a href="https://mashukabu.com/excel-function-list-by-function/">Excel関数一覧（機能別）</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-isref/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのISBLANK関数の使い方｜空白セルの判定と実務パターンを解説</title>
		<link>https://mashukabu.com/excel-function-howto-use-isblank/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-isblank/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Wed, 06 Apr 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[COUNTBLANK関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[IF関数]]></category>
		<category><![CDATA[ISBLANK関数]]></category>
		<category><![CDATA[IS関数]]></category>
		<category><![CDATA[データ検証]]></category>
		<category><![CDATA[空白判定]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=1495</guid>

					<description><![CDATA[ExcelのISBLANK関数の使い方を基本から解説。空白セルの判定方法、IF関数との組み合わせ、条件付き書式での入力漏れ検出、空白セルと空文字列の違い、COUNTBLANK・COUNTAとの使い分けまで実務パターンを網羅しています。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「この欄、入力されてる？ それとも空白のまま？」。Excelで名簿や申請書を管理していると、こんな確認が必要になりますよね。</p>



<p class="wp-block-paragraph">目視で1行ずつチェックしていたら時間がかかります。見落としも怖いですよね。</p>



<p class="wp-block-paragraph">そんなときに活躍するのがISBLANK関数です。セルが空白かどうかを一発で判定してくれます。</p>



<p class="wp-block-paragraph">この記事では、ISBLANK関数の基本から実務で使える活用パターンまでまとめて紹介します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>この記事は次のような人におすすめ</p><p>&#8211; セルが空白かどうかを判定したい<br>&#8211; 入力漏れのセルを一括で検出したい<br>&#8211; IF関数やCOUNTBLANK関数との組み合わせを知りたい</p></blockquote>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-9" checked><label class="toc-title" for="toc-checkbox-9">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ISBLANK関数とは？</a></li><li><a href="#toc2" tabindex="0">ISBLANK関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">ISBLANK関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">値の種類ごとの判定結果</a></li><li><a href="#toc7" tabindex="0">数式の結果を判定する</a></li></ol></li><li><a href="#toc8" tabindex="0">ISBLANK関数の実務活用パターン</a><ol><li><a href="#toc9" tabindex="0">パターン1: IF関数と組み合わせて入力漏れを表示する</a></li><li><a href="#toc10" tabindex="0">パターン2: 条件付き書式で空白セルをハイライトする</a></li><li><a href="#toc11" tabindex="0">パターン3: 空白なら計算をスキップする</a></li><li><a href="#toc12" tabindex="0">パターン4: 複数列の空白を一括チェックする</a></li></ol></li><li><a href="#toc13" tabindex="0">ISBLANK関数の注意点｜空白セルと空文字列の違い</a></li><li><a href="#toc14" tabindex="0">似た関数との違い・使い分け</a><ol><li><a href="#toc15" tabindex="0">ISBLANKとCOUNTBLANKの違い</a></li><li><a href="#toc16" tabindex="0">ISBLANKとCOUNTAの違い</a></li></ol></li><li><a href="#toc17" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc18" tabindex="0">IS系関数の違い・使い分け</a></li><li><a href="#toc19" tabindex="0">まとめ</a><ol><li><a href="#toc20" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">ISBLANK（いず・ぶらんく）関数は、指定したセルが<strong>空白かどうか</strong>を判定する関数です。「IS（〜かどうか）+ BLANK（空白）」が名前の由来ですね。</p>



<p class="wp-block-paragraph">セルが空白であればTRUEを返します。数値・文字列・数式・論理値など何か入っていればFALSEです。</p>



<p class="wp-block-paragraph">「空白セル」とは、まだ何も入力されていないセルのことです。入力後にDeleteキーで消したセルも空白になります。</p>



<p class="wp-block-paragraph">IS系（情報関数）の1つで、セルのデータ種類を確認するファミリーに属しています。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>ISBLANK関数はExcel 2003以降のすべてのバージョンで使用できます。Microsoft 365やGoogleスプレッドシートでも同じ書き方で使えます。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=ISBLANK(テストの対象)</code></pre>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</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>空白かどうか判定したいセル参照</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は1つだけです。省略はできません。セル参照・直接値・数式の結果のいずれも指定できます。</p>



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



<p class="wp-block-paragraph">まずはシンプルな例で動きを確認してみましょう。</p>



<h3 class="wp-block-heading"><span id="toc6">値の種類ごとの判定結果</span></h3>



<p class="wp-block-paragraph">さまざまなデータをISBLANK関数で判定すると、次のようになります。</p>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>結果</th><th>理由</th></tr></thead><tbody><tr><td><code>=ISBLANK(A1)</code> ※A1が空白</td><td><strong>TRUE</strong></td><td>空白セルなのでTRUE</td></tr><tr><td><code>=ISBLANK(100)</code></td><td><strong>FALSE</strong></td><td>数値なのでFALSE</td></tr><tr><td><code>=ISBLANK("東京")</code></td><td><strong>FALSE</strong></td><td>文字列なのでFALSE</td></tr><tr><td><code>=ISBLANK(TRUE)</code></td><td><strong>FALSE</strong></td><td>論理値なのでFALSE</td></tr><tr><td><code>=ISBLANK("")</code></td><td><strong>FALSE</strong></td><td>空文字列は空白ではない</td></tr><tr><td><code>=ISBLANK(0)</code></td><td><strong>FALSE</strong></td><td>0も数値なのでFALSE</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>空白セルと空文字列（&#8221;&#8221;）は異なります。空文字列は見た目は空に見えますが、中身は「長さ0の文字列」です。ISBLANKではFALSEになります。空文字列の判定には <code>=A1=""</code> を使いましょう。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc7">数式の結果を判定する</span></h3>



<p class="wp-block-paragraph">ISBLANK関数の引数に数式を直接入れることもできます。</p>



<pre class="wp-block-code"><code>=ISBLANK(VLOOKUP(A1,B:C,2,FALSE))</code></pre>



<p class="wp-block-paragraph">VLOOKUPの検索結果が空白セルを参照していればTRUEです。エラー（#N/Aなど）の場合はFALSEになります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>数式の結果が空文字列（&#8221;&#8221;）のときはFALSEです。たとえば <code>=IF(A1=1,"OK","")</code> の結果が&#8221;&#8221;でも、ISBLANKはFALSEを返します。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc8">ISBLANK関数の実務活用パターン</span></h2>



<h3 class="wp-block-heading"><span id="toc9">パターン1: IF関数と組み合わせて入力漏れを表示する</span></h3>



<p class="wp-block-paragraph">名簿や申請書で、未入力のセルに「要入力」と表示したい場面で使えます。</p>



<pre class="wp-block-code"><code>=IF(ISBLANK(B2),&quot;要入力&quot;,&quot;入力済&quot;)</code></pre>



<p class="wp-block-paragraph">B2が空白なら「要入力」を表示します。値が入っていれば「入力済」です。</p>



<p class="wp-block-paragraph">提出物の管理表やチェックリストで、入力状況を一目で把握できるようになりますよ。</p>



<h3 class="wp-block-heading"><span id="toc10">パターン2: 条件付き書式で空白セルをハイライトする</span></h3>



<p class="wp-block-paragraph">入力漏れのある行だけを目立たせたいときに使えます。</p>



<ol class="wp-block-list"><li>対象範囲（たとえばA2:E100）を選択します</li><li>「ホーム」タブ →「条件付き書式」→「新しいルール」を選びます</li><li>「数式を使用して、書式設定するセルを決定」を選択します</li><li>数式欄に <code>=ISBLANK(A2)</code> と入力します</li><li>好きな書式（赤い塗りつぶしなど）を設定します</li></ol>



<p class="wp-block-paragraph">空白のセルだけが色分けされるので、入力漏れがひと目でわかります。</p>



<h3 class="wp-block-heading"><span id="toc11">パターン3: 空白なら計算をスキップする</span></h3>



<p class="wp-block-paragraph">集計表で、未入力のセルを計算に含めたくない場面で使えます。</p>



<pre class="wp-block-code"><code>=IF(ISBLANK(C2),&quot;&quot;,C2*D2)</code></pre>



<p class="wp-block-paragraph">C2が空白なら空欄を返し、値があれば計算します。未入力の行に0が表示されるのを防げます。</p>



<p class="wp-block-paragraph">単価と数量の掛け算など、片方が空白だと0になってしまう計算で便利です。</p>



<h3 class="wp-block-heading"><span id="toc12">パターン4: 複数列の空白を一括チェックする</span></h3>



<p class="wp-block-paragraph">名簿の「氏名」「メール」「電話番号」など、必須項目がすべて入力されているか確認できます。</p>



<pre class="wp-block-code"><code>=IF(OR(ISBLANK(B2),ISBLANK(C2),ISBLANK(D2)),&quot;未完了&quot;,&quot;完了&quot;)</code></pre>



<p class="wp-block-paragraph">B2・C2・D2のいずれかが空白なら「未完了」です。全部入力済みなら「完了」を表示します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>必須項目が多い場合は<a href="https://mashukabu.com/excel-function-howto-use-countblank/">COUNTBLANK関数</a>が便利です。<code>=COUNTBLANK(B2:D2)>0</code> で「空白が1つでもあるか」を判定できます。</p></blockquote>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p><a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数</a>と組み合わせれば、VLOOKUPの検索結果が空白のときに別の値を表示する処理も書けます。エラーと空白を分けて処理したい場面で試してみてください。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc13">ISBLANK関数の注意点｜空白セルと空文字列の違い</span></h2>



<p class="wp-block-paragraph">ISBLANK関数を使ううえで最も重要なのが、「空白セル」と「空文字列」の違いです。</p>



<figure class="wp-block-table"><table><thead><tr><th>状態</th><th>見た目</th><th>ISBLANK</th><th><code>=A1=""</code></th><th>LEN(A1)</th></tr></thead><tbody><tr><td>何も入力していない（空白セル）</td><td>空</td><td><strong>TRUE</strong></td><td>TRUE</td><td>0</td></tr><tr><td><code>=""</code> の数式が入っている</td><td>空</td><td><strong>FALSE</strong></td><td>TRUE</td><td>0</td></tr><tr><td>Deleteキーで消した</td><td>空</td><td><strong>TRUE</strong></td><td>TRUE</td><td>0</td></tr><tr><td>スペースが入っている</td><td>空っぽく見える</td><td><strong>FALSE</strong></td><td>FALSE</td><td>1</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">見た目はどれも「空」ですが、ISBLANKの結果は異なります。</p>



<p class="wp-block-paragraph">「空白に見えるのにFALSEになる」ときは、空文字列かスペースが入っている可能性を疑いましょう。数式バーを確認するか <code>=LEN(A1)</code> で文字数を調べると原因がわかります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>空白セルも空文字列もまとめて「空」として扱いたいなら、<code>=A1=""</code> で判定するのが簡単です。ISBLANKは「本当に何も入っていない」場合だけを検知したいときに使いましょう。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc14">似た関数との違い・使い分け</span></h2>



<h3 class="wp-block-heading"><span id="toc15">ISBLANKとCOUNTBLANKの違い</span></h3>



<p class="wp-block-paragraph">ISBLANK関数は「1つのセルが空白か？」を判定します。<a href="https://mashukabu.com/excel-function-howto-use-countblank/">COUNTBLANK関数</a>は範囲内の空白セルの個数を数えます。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>ISBLANK関数</th><th>COUNTBLANK関数</th></tr></thead><tbody><tr><td>対象</td><td>セル1つ</td><td>セル範囲</td></tr><tr><td>戻り値</td><td>TRUE / FALSE</td><td>空白セルの個数（数値）</td></tr><tr><td>空文字列の扱い</td><td>FALSE（空白ではない）</td><td>カウントする（空として扱う）</td></tr><tr><td>典型的な用途</td><td><a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数</a>と組み合わせた条件分岐</td><td>範囲内の未入力件数の集計</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">1セルの判定はISBLANK、範囲全体の集計はCOUNTBLANKと使い分けましょう。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>COUNTBLANKは空文字列（=&#8221;&#8221;）もカウントしますが、ISBLANKはFALSEを返します。「空白セルだけ」を正確に数えたい場合は <code>=SUMPRODUCT((ISBLANK(A1:A20))*1)</code> を使います。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc16">ISBLANKとCOUNTAの違い</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-counta/">COUNTA関数</a>は「空白以外のセルの個数」を数えます。ISBLANKとは逆方向からアプローチする関数です。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>ISBLANK関数</th><th>COUNTA関数</th></tr></thead><tbody><tr><td>対象</td><td>セル1つ</td><td>セル範囲</td></tr><tr><td>戻り値</td><td>TRUE / FALSE</td><td>空白以外のセルの個数</td></tr><tr><td>視点</td><td>空白セルを見つける</td><td>入力済みセルを数える</td></tr><tr><td>典型的な用途</td><td>条件分岐・入力チェック</td><td>入力完了率・進捗管理</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">「このセル、入力されてる？」ならISBLANKです。「この範囲で何件入力済み？」ならCOUNTAを選びましょう。</p>



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



<p class="wp-block-paragraph">ISBLANK関数自体がエラーを返すことはほぼありません。ただし「思った結果にならない」ケースがあります。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>空白に見えるのにFALSEが返る</td><td>空文字列（&#8221;&#8221;）やスペースが入っている</td><td>数式バーで中身を確認する。<code>=LEN(A1)</code> で文字数を調べる</td></tr><tr><td>0が入っているセルでTRUEにしたい</td><td>ISBLANKは0を空白とは判定しない</td><td><code>=OR(ISBLANK(A1),A1=0)</code> で両方をカバーする</td></tr><tr><td>数式の結果が&#8221;&#8221;なのにTRUEにならない</td><td>空文字列は空白セルではない</td><td><code>=A1=""</code> で判定する</td></tr><tr><td>範囲を指定すると先頭セルしか判定されない</td><td>ISBLANKは1セルずつ判定する関数</td><td>範囲の空白件数は<a href="https://mashukabu.com/excel-function-howto-use-countblank/">COUNTBLANK関数</a>を使う</td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc18">IS系関数の違い・使い分け</span></h2>



<p class="wp-block-paragraph">IS系関数は、セルに入っているデータの種類を判定するファミリーです。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>判定内容</th><th>TRUEになる例</th></tr></thead><tbody><tr><td>ISBLANK（この記事）</td><td>空白セルか</td><td>未入力のセル</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR</a></td><td>任意のエラー値か</td><td>#N/A, #VALUE!, #REF!など</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iserr/">ISERR</a></td><td>#N/A以外のエラー値か</td><td>#VALUE!, #REF!, #DIV/0!など</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA</a></td><td>#N/Aエラーか</td><td>#N/Aのみ</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-islogical/">ISLOGICAL</a></td><td>論理値か</td><td>TRUE, FALSE</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER</a></td><td>数値か</td><td>100, 3.14, 日付のシリアル値</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT</a></td><td>文字列か</td><td>&#8220;東京&#8221;, &#8220;123&#8221;（文字列型）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isnontext/">ISNONTEXT</a></td><td>文字列以外か</td><td>100, TRUE, 空白</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isformula/">ISFORMULA</a></td><td>数式が入っているか</td><td>=SUM(A1:A10)が入ったセル</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isref/">ISREF</a></td><td>有効なセル参照か</td><td>A1, Sheet2!B3</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iseven/">ISEVEN</a></td><td>偶数か</td><td>2, 4, 100</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isodd/">ISODD</a></td><td>奇数か</td><td>1, 3, 99</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>ISBLANKの判定対象は「空白セル」のみです。空文字列は<a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT関数</a>でTRUEになります。「何も入っていないように見えるセル」を判定したいなら、ISBLANKと <code>=A1=""</code> を使い分けるのがおすすめです。</p></blockquote>



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



<p class="wp-block-paragraph">ISBLANK関数は、セルが空白かどうかを判定するシンプルな関数です。</p>



<ul class="wp-block-list"><li>引数は1つだけ。空白セルならTRUE、それ以外はFALSE</li><li>空文字列（&#8221;&#8221;）やスペースは空白ではない（FALSEになる）</li><li><a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数</a>と組み合わせて「要入力」表示や計算スキップに使うのが定番</li><li>条件付き書式と組み合わせると入力漏れの一括検出ができる</li><li>範囲内の空白件数を数えるなら<a href="https://mashukabu.com/excel-function-howto-use-countblank/">COUNTBLANK関数</a>を使う</li><li>「空白に見えるのにFALSE」のときは空文字列かスペースを疑う</li></ul>



<p class="wp-block-paragraph">入力漏れのチェックやデータの品質管理に、ぜひ活用してみてください。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc20">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-countblank/">COUNTBLANK関数の使い方｜空白セルを数える方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数の使い方｜条件分岐の基本</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-counta/">COUNTA関数の使い方｜空白以外のセルを数える方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT関数の使い方｜文字列かどうかを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isnontext/">ISNONTEXT関数の使い方｜文字列以外かどうかを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER関数の使い方｜数値かどうかを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数の使い方｜エラーを非表示にする方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-vlookup/">VLOOKUP関数の使い方｜別の表からデータを検索する方法</a></li><li><a href="https://mashukabu.com/excel-function-list-by-function/">Excel関数一覧（機能別）</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-isblank/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのISFORMULA関数の使い方｜セルに数式が入っているか判定する方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-isformula/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-isformula/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Tue, 05 Apr 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[FORMULATEXT関数]]></category>
		<category><![CDATA[ISFORMULA関数]]></category>
		<category><![CDATA[IS関数]]></category>
		<category><![CDATA[シート保護]]></category>
		<category><![CDATA[データ入力規則]]></category>
		<category><![CDATA[データ検証]]></category>
		<category><![CDATA[数式判定]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=1503</guid>

					<description><![CDATA[ExcelのISFORMULA関数で数式セルを瞬時に判定する方法を解説。FORMULATEXT関数との違い・使い分け、値の貼り付けミス検出やデータ入力規則でのテンプレ保護など実務活用パターン6選も紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「あれ、ここ数式が入ってたはずなのに&#8230;&#8230;」。共有ファイルで数式が値に貼り替えられていた。よくありますよね。</p>



<p class="wp-block-paragraph">数百行のシートを1セルずつ確認するのは大変です。そんなときに活躍するのが、ExcelのISFORMULA関数です。</p>



<p class="wp-block-paragraph">この記事では、ISFORMULA関数の基本から実務で役立つ活用パターンまで解説します。FORMULATEXT関数との使い分けや、IS系12関数の位置づけもカバーします。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>この記事は次のような人におすすめ</p><p>&#8211; セルに数式が入っているかどうかを確認したい<br>&#8211; 値の貼り付けで数式が消えていないかチェックしたい<br>&#8211; 条件付き書式で数式セルだけを色分けしたい<br>&#8211; 共有テンプレートの数式を壊されないよう保護したい</p></blockquote>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-10" checked><label class="toc-title" for="toc-checkbox-10">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ISFORMULA関数とは？</a></li><li><a href="#toc2" tabindex="0">ISFORMULA関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">ISFORMULA関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">セルの内容ごとの判定結果</a></li><li><a href="#toc7" tabindex="0">数式の「結果」ではなく「有無」を判定する</a></li></ol></li><li><a href="#toc8" tabindex="0">ISFORMULA関数の実務活用パターン</a><ol><li><a href="#toc9" tabindex="0">パターン1: IF関数と組み合わせて数式セルを判別する</a></li><li><a href="#toc10" tabindex="0">パターン2: 値の貼り付けミスを検出する</a></li><li><a href="#toc11" tabindex="0">パターン3: 条件付き書式で数式セルを色分けする</a></li><li><a href="#toc12" tabindex="0">パターン4: SUMPRODUCTと組み合わせて数式セルの個数を数える</a></li><li><a href="#toc13" tabindex="0">パターン5: シート保護前の数式チェックリストを作る</a></li><li><a href="#toc14" tabindex="0">パターン6: データ入力規則でテンプレートの数式を保護する</a></li></ol></li><li><a href="#toc15" tabindex="0">ISFORMULA関数とFORMULATEXT関数の使い分け</a></li><li><a href="#toc16" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc17" tabindex="0">IS系12関数の違い・使い分け</a></li><li><a href="#toc18" tabindex="0">まとめ</a><ol><li><a href="#toc19" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">ISFORMULA（いず・ふぉーみゅら）関数は、セルに<strong>数式が入っているか</strong>を判定する関数です。「IS（〜かどうか）+ FORMULA（数式）」が名前の由来です。</p>



<p class="wp-block-paragraph">数式（=で始まる式）が入っていればTRUEを返します。値・文字列・空白セルなど、数式以外はすべてFALSEです。</p>



<p class="wp-block-paragraph">ExcelのIS系関数（情報関数）の1つで、セルのデータの種類を確認するファミリーに属しています。ただし、後述するように他のIS系関数とは少し性質が異なります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>ISFORMULA関数はExcel 2013以降で使用できます。Excel 2010以前ではこの関数を使えません。Googleスプレッドシートでも同じ構文で利用可能です。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=ISFORMULA(参照)</code></pre>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</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>数式が入っているか判定したいセル参照</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は1つだけです。省略はできません。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>ISFORMULA関数の引数には<strong>セル参照</strong>を指定します。直接値（<code>=ISFORMULA(100)</code> など）を入れると #VALUE! エラーになります。この点が他のIS系関数（ISTEXT、ISNUMBERなど）と異なるポイントです。値ではなく「セルの入れ物」を見る関数だと覚えておきましょう。</p></blockquote>



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



<p class="wp-block-paragraph">まずはシンプルな例で動きを確認してみましょう。</p>



<h3 class="wp-block-heading"><span id="toc6">セルの内容ごとの判定結果</span></h3>



<p class="wp-block-paragraph">さまざまなセルをISFORMULA関数で判定すると、次のような結果になります。</p>



<figure class="wp-block-table"><table><thead><tr><th>A列のセル内容</th><th>数式バーの表示</th><th>=ISFORMULA(A1) の結果</th><th>理由</th></tr></thead><tbody><tr><td>=SUM(B1:B10)</td><td>=SUM(B1:B10)</td><td><strong>TRUE</strong></td><td>数式が入っている</td></tr><tr><td>100（直接入力）</td><td>100</td><td><strong>FALSE</strong></td><td>値なので数式ではない</td></tr><tr><td>東京（文字列）</td><td>東京</td><td><strong>FALSE</strong></td><td>文字列なので数式ではない</td></tr><tr><td>（空白セル）</td><td>&nbsp;</td><td><strong>FALSE</strong></td><td>空白なので数式ではない</td></tr><tr><td>=IF(B5>100,&#8221;合格&#8221;,&#8221;不合格&#8221;)</td><td>=IF(B5>100,&#8230;</td><td><strong>TRUE</strong></td><td>結果が文字列でも数式は数式</td></tr><tr><td>=1+1</td><td>=1+1</td><td><strong>TRUE</strong></td><td>計算結果が数値2でも数式</td></tr><tr><td>TRUE（直接入力）</td><td>TRUE</td><td><strong>FALSE</strong></td><td>論理値でも直接入力は数式ではない</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc7">数式の「結果」ではなく「有無」を判定する</span></h3>



<p class="wp-block-paragraph">ここがISFORMULA関数の最重要ポイントです。ISFORMULA関数は数式の計算結果ではなく、<strong>数式の有無</strong>だけを見ています。</p>



<p class="wp-block-paragraph">上の表の <code>=1+1</code> がわかりやすい例です。結果は2でも、数式だからTRUEです。<code>2</code> と直接入力すればFALSEになります。</p>



<p class="wp-block-paragraph">同じ「2」が表示されていても、数式で出した2か、手入力の2かで判定が分かれるわけです。見た目では区別できない違いを見抜けるのがISFORMULA関数の強みです。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>セルの「値の種類」を判定するには<a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT関数</a>や<a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER関数</a>を使いましょう。ISFORMULA関数は「数式かどうか」だけに特化した関数です。値を見るか入れ物を見るか、で使い分けてください。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc8">ISFORMULA関数の実務活用パターン</span></h2>



<h3 class="wp-block-heading"><span id="toc9">パターン1: IF関数と組み合わせて数式セルを判別する</span></h3>



<p class="wp-block-paragraph">セルの内容に応じてラベルを表示したい場面で使えます。</p>



<pre class="wp-block-code"><code>=IF(ISFORMULA(B2),&quot;数式&quot;,&quot;値&quot;)</code></pre>



<p class="wp-block-paragraph">B2に数式が入っていれば「数式」と表示します。値が直接入力されていれば「値」です。</p>



<p class="wp-block-paragraph">テンプレートシートの検品に便利です。数式であるべきセルに値が混ざっていないかを確認できます。<a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数</a>の条件にISFORMULA関数を入れるだけの手軽さもポイントです。</p>



<h3 class="wp-block-heading"><span id="toc10">パターン2: 値の貼り付けミスを検出する</span></h3>



<p class="wp-block-paragraph">共有シートで「数式が値に貼り替えられた」トラブルを見つけるパターンです。</p>



<p class="wp-block-paragraph">C列が本来すべて数式であるべき場合、次のように書きます。</p>



<pre class="wp-block-code"><code>=IF(AND(C2&lt;&gt;&quot;&quot;,NOT(ISFORMULA(C2))),&quot;要確認&quot;,&quot;OK&quot;)</code></pre>



<p class="wp-block-paragraph">C2が空白でなく、かつ数式でもない場合に「要確認」と表示します。値が直接入力されたセルを効率よく見つけられます。</p>



<p class="wp-block-paragraph">数百行のシートでも、フィルターで「要確認」だけを抽出すれば一瞬です。チェック列を1つ用意するだけで、貼り付けミスの見落としがなくなります。</p>



<h3 class="wp-block-heading"><span id="toc11">パターン3: 条件付き書式で数式セルを色分けする</span></h3>



<p class="wp-block-paragraph">数式が入っているセルだけをハイライトしたい場合に使えます。</p>



<ol class="wp-block-list"><li>対象範囲を選択します</li><li>「ホーム」タブ →「条件付き書式」→「新しいルール」を選択します</li><li>「数式を使用して、書式設定するセルを決定」を選びます</li><li>数式欄に <code>=ISFORMULA(A1)</code> と入力します</li><li>好きな書式（塗りつぶし色など）を設定します</li></ol>



<p class="wp-block-paragraph">これで数式セルだけが色分けされます。値セルだけを色分けするなら <code>=NOT(ISFORMULA(A1))</code> です。</p>



<h3 class="wp-block-heading"><span id="toc12">パターン4: SUMPRODUCTと組み合わせて数式セルの個数を数える</span></h3>



<p class="wp-block-paragraph">範囲内の数式セルの個数を数えるには、<a href="https://mashukabu.com/excel-function-howto-use-sumproduct/">SUMPRODUCT関数</a>と組み合わせます。</p>



<pre class="wp-block-code"><code>=SUMPRODUCT(ISFORMULA(A2:A100)*1)</code></pre>



<p class="wp-block-paragraph">各セルがTRUE/FALSEで返ります。<code>*1</code> で数値化して合計すれば個数がわかります。</p>



<p class="wp-block-paragraph">「数式セルが想定どおりの個数あるか」のチェックに便利です。月次でレイアウトが固定のシートなら、数式セルの数が前月と変わっていないかの確認にも使えます。</p>



<h3 class="wp-block-heading"><span id="toc13">パターン5: シート保護前の数式チェックリストを作る</span></h3>



<p class="wp-block-paragraph">シートを保護する前に、数式セルを一覧化しておくと管理が楽になります。</p>



<pre class="wp-block-code"><code>=IF(ISFORMULA(B2),FORMULATEXT(B2),&quot;---&quot;)</code></pre>



<p class="wp-block-paragraph">B2に数式が入っていれば、その数式のテキストを表示します。値のセルは「&#8212;」です。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-formulatext/">FORMULATEXT関数</a>との組み合わせで、数式の一覧表が作れます。チームに共有する資料として重宝しますよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>FORMULATEXT関数は数式のテキストを表示する関数です。ISFORMULA関数で先に「数式があるか」を判定してから使うと、値セルで #N/A エラーになるのを防げます。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc14">パターン6: データ入力規則でテンプレートの数式を保護する</span></h3>



<p class="wp-block-paragraph">共有テンプレートで「数式セルに値を上書き入力してしまった」という事故、ありますよね。データの入力規則で予防できます。</p>



<ol class="wp-block-list"><li>保護したい数式セルの範囲を選択します</li><li>「データ」タブ →「データの入力規則」を開きます</li><li>「設定」タブで「入力値の種類」を「ユーザー設定」にします</li><li>数式欄に <code>=NOT(ISFORMULA(A1))</code> と入力します</li><li>「エラーメッセージ」タブでメッセージを設定します</li></ol>



<p class="wp-block-paragraph">この設定で、数式セルにキーボードから値を入力しようとするとエラーが出ます。数式が入っている限り入力をブロックできるわけです。</p>



<p class="wp-block-paragraph">ただし、貼り付け操作は入力規則では防げません。完全にブロックしたい場合は、シート保護との併用がおすすめです。「数式セルのロック + シート保護」と組み合わせると安心ですよ。</p>



<p class="wp-block-paragraph">経理テンプレートや勤怠シートなど、数式を壊されたくないファイルで特に活躍します。</p>



<h2 class="wp-block-heading"><span id="toc15">ISFORMULA関数とFORMULATEXT関数の使い分け</span></h2>



<p class="wp-block-paragraph">ISFORMULA関数と似た名前の関数に、<a href="https://mashukabu.com/excel-function-howto-use-formulatext/">FORMULATEXT関数</a>があります。名前は似ていますが、役割はまったく違います。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>ISFORMULA関数</th><th>FORMULATEXT関数</th></tr></thead><tbody><tr><td>役割</td><td>数式の<strong>有無</strong>を判定する</td><td>数式の<strong>テキスト</strong>を取得する</td></tr><tr><td>戻り値</td><td>TRUE / FALSE</td><td>数式の文字列（例: <code>=SUM(A1:A10)</code>）</td></tr><tr><td>数式がないセル</td><td>FALSE を返す</td><td>#N/A エラーを返す</td></tr><tr><td>主な用途</td><td>数式チェック・条件分岐</td><td>数式の一覧表示・ドキュメント化</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">ポイントは、FORMULATEXT関数は対象セルに数式がないと #N/A エラーになることです。そのため、ISFORMULA関数でガードしてから呼ぶのが安全なパターンです。</p>



<pre class="wp-block-code"><code>=IF(ISFORMULA(B2), FORMULATEXT(B2), &quot;---&quot;)</code></pre>



<p class="wp-block-paragraph">数式があれば数式テキストを表示し、なければ「&#8212;」を表示します。この組み合わせはパターン5でも紹介しました。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>「数式があるかどうか」だけ知りたい → ISFORMULA関数。「数式の中身を見たい」 → FORMULATEXT関数。迷ったらこの基準で選んでみてください。</p></blockquote>



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



<p class="wp-block-paragraph">ISFORMULA関数自体がエラーを返すことは少ないです。ただし「思った結果にならない」ケースがあります。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>#VALUE! エラーが出る</td><td>引数に直接値（数値や文字列）を指定した</td><td>ISFORMULA関数の引数にはセル参照のみ指定可能。直接値は使えない</td></tr><tr><td>値のセルなのにTRUEが返る</td><td><code>=100</code> のように=で始まる数式が入っている</td><td>数式バーで確認。<code>=100</code> も数式扱いになる</td></tr><tr><td>数式セルなのにFALSEが返る</td><td>値の貼り付け（Ctrl+Shift+V）で数式が消えている</td><td>数式バーでセルの内容を確認する</td></tr><tr><td>空白セルでFALSEが返る</td><td>空白セルには数式が入っていない</td><td>数式の有無ではなく空白判定には<a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK関数</a>を使う</td></tr><tr><td>配列数式のセルでTRUEが返る</td><td>配列数式も数式の一種</td><td>正常な動作。Ctrl+Shift+Enterで入力した配列数式もISFORMULAはTRUEを返す</td></tr><tr><td>スピルのゴーストセルでFALSEが返る</td><td>スピル数式の先頭セルのみが数式扱い</td><td>スピル範囲の先頭セルはTRUE。値が流れ込んでいるだけのゴーストセルはFALSEになる</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>スピル数式（UNIQUE、SORT、FILTERなど）を使っている場合の注意点です。スピル範囲の先頭セルはTRUEを返しますが、結果が展開されたゴーストセルはFALSEです。スピル範囲全体をまとめてチェックしたい場合は <code>=ISFORMULA(A1#)</code> のようにスピル演算子（#）を使いましょう。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc17">IS系12関数の違い・使い分け</span></h2>



<p class="wp-block-paragraph">IS系関数は、セルに入っているデータの種類を判定するファミリーです。用途に合わせて使い分けましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>判定内容</th><th>TRUEになる例</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK</a></td><td>空白セルか</td><td>未入力のセル</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR</a></td><td>任意のエラー値か</td><td>#N/A, #VALUE!, #REF! など</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iserr/">ISERR</a></td><td>#N/A以外のエラー値か</td><td>#VALUE!, #REF!, #DIV/0! など</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA</a></td><td>#N/Aエラーか</td><td>#N/Aのみ</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-islogical/">ISLOGICAL</a></td><td>論理値（TRUE/FALSE）か</td><td>TRUE, FALSE</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER</a></td><td>数値か</td><td>100, 3.14, 日付のシリアル値</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT</a></td><td>文字列か</td><td>&#8220;東京&#8221;, &#8220;123&#8221;（文字列型）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isnontext/">ISNONTEXT</a></td><td>文字列以外か</td><td>100, TRUE, 空白</td></tr><tr><td>ISFORMULA（この記事）</td><td>数式が入っているか</td><td>=SUM(A1:A10)が入ったセル</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isref/">ISREF</a></td><td>有効なセル参照か</td><td>A1, Sheet2!B3</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-iseven/">ISEVEN</a></td><td>偶数か</td><td>2, 4, 100</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-isodd/">ISODD</a></td><td>奇数か</td><td>1, 3, 99</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>ISFORMULA関数は他のIS系関数と性質が異なります。ISTEXTやISNUMBERはセルの<strong>値の種類</strong>を判定します。一方ISFORMULAは、<strong>数式が入っているかどうか</strong>を判定します。数式の結果が数値でも文字列でも、数式であればTRUEになります。値の種類ではなく&#8221;入れ物&#8221;を見ているイメージですよ。</p></blockquote>



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



<p class="wp-block-paragraph">ISFORMULA関数は、セルに数式が入っているかどうかを判定するシンプルな関数です。</p>



<ul class="wp-block-list"><li>引数は1つだけ（セル参照のみ指定可能）</li><li>数式が入っていればTRUE、値や空白ならFALSE</li><li>数式の「結果の型」ではなく「有無」だけを見る</li><li><a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数</a>や条件付き書式と組み合わせるのが実務での定番パターン</li><li>値の貼り付けミスの検出やテンプレート検品に便利</li><li>数式の中身を見たいときは<a href="https://mashukabu.com/excel-function-howto-use-formulatext/">FORMULATEXT関数</a>と組み合わせる</li></ul>



<p class="wp-block-paragraph">「数式が消えてしまった」トラブル防止に、ぜひ活用してみてください。</p>



<h3 class="wp-block-heading"><span id="toc19">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-formulatext/">FORMULATEXT関数の使い方｜数式のテキストを取得する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isblank/">ISBLANK関数の使い方｜空白セルを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isnumber/">ISNUMBER関数の使い方｜数値かどうかを確認する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-istext/">ISTEXT関数の使い方｜文字列かどうかを確認する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-islogical/">ISLOGICAL関数の使い方｜論理値を判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isna/">ISNA関数の使い方｜#N/Aエラーを判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-iserror/">ISERROR関数の使い方｜エラー値を判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-isref/">ISREF関数の使い方｜セル参照が有効か判定する方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数の使い方｜エラーを非表示にする方法</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数の使い方｜条件分岐の基本</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-sumproduct/">SUMPRODUCT関数の使い方｜複数条件の集計</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-countblank/">COUNTBLANK関数の使い方｜空白セルを数える方法</a></li><li><a href="https://mashukabu.com/excel-function-list-by-function/">Excel関数一覧（機能別）</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-isformula/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
