<?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>COUNTIF &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/countif/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Sat, 22 Aug 2026 00:52:20 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1</generator>

<image>
	<url>https://mashukabu.com/wp-content/uploads/2022/04/cropped-site-icon-32x32.png</url>
	<title>COUNTIF &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Excel集計・検索が合わない原因5つと直し方</title>
		<link>https://mashukabu.com/excel-aggregation-search-mismatch/</link>
					<comments>https://mashukabu.com/excel-aggregation-search-mismatch/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 20 Jun 2026 10:37:06 +0000</pubDate>
				<category><![CDATA[仕事効率化]]></category>
		<category><![CDATA[COUNTIF]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[SUMIF]]></category>
		<category><![CDATA[VLOOKUP]]></category>
		<category><![CDATA[データ品質]]></category>
		<category><![CDATA[トラブルシューティング]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=8057</guid>

					<description><![CDATA[ExcelのSUMIF・COUNTIF・VLOOKUPが0や#N/Aを返す原因の多くは、数式ではなくデータ側にあります。文字列数値・見えない空白・全角半角・似た文字・手動計算の5パターンを症状別の早見表と3ステップ診断で特定し、VALUE・TRIM・ASCなどで直す方法と再発防止策まで解説します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">こんな経験はありませんか。</p>



<ul class="wp-block-list"><li>SUMIFで合計したのに結果が0のまま</li><li>VLOOKUPで探した値が、表のなかにちゃんとあるのに#N/Aが返る</li><li>COUNTIFで数えたのに、見るからに該当データがあるのに0件と表示される</li></ul>



<p class="wp-block-paragraph">式の書き方は何度見直しても合っているのに、結果だけが合わない。締め切り間際の集計作業でこれをやられると、本当に泣きたくなりますよね。</p>



<p class="wp-block-paragraph">実はこの「式は正しいのに結果が合わない」現象、原因のほとんどは数式ではなくデータの側にあります。セルに入っている値が、見た目は同じでも内部的には別物になっているのです。</p>



<p class="wp-block-paragraph">数値に見えて実は文字列だったり、目に見えない空白が紛れ込んでいたり、全角と半角が混ざっていたり。SUMIFもVLOOKUPもCOUNTIFも、この「データの品質」が崩れていると、まったく同じ理由でそろって結果が狂います。</p>



<p class="wp-block-paragraph">この記事では、集計・検索が合わない原因を5パターンに整理し、冒頭の早見表で「いまの症状からどの原因か」を一気に絞り込めるようにしました。さらに各原因には「見分け方」「その場で直す処置」「再発防止」の3段構えで対処法を用意しています。</p>



<p class="wp-block-paragraph">最後に、どのセルを疑えばいいか3ステップでたどり着ける診断フローも置きました。同僚にこっそり教えてもらう感覚で、上から順に読み進めてください。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>対応バージョン</strong>: Microsoft 365 / Excel 2021 / 2019 / 2016 / Excel for the Web（Web版）で確認しています。原因と関数の挙動はどのバージョンでも共通ですが、緑の三角（エラーインジケーター）や「区切り位置」機能はデスクトップ版のみで、Web版では使えません。その都度本文で補足します。</p></blockquote>




  <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">【早見表】症状×関数×原因5パターン一覧</a><ol><li><a href="#toc2" tabindex="0">どの原因か3ステップで絞り込む（診断フロー）</a></li></ol></li><li><a href="#toc3" tabindex="0">原因①：数値が文字列として保存されている</a><ol><li><a href="#toc4" tabindex="0">見分け方：セルの左揃え・緑の三角・ISNUMBER確認</a></li><li><a href="#toc5" tabindex="0">直し方：VALUE関数・貼り付け形式・エラーインジケーター</a></li><li><a href="#toc6" tabindex="0">再発防止：入力書式の統一とコピペルール</a></li></ol></li><li><a href="#toc7" tabindex="0">原因②：前後に見えない空白が混入している</a><ol><li><a href="#toc8" tabindex="0">見分け方：LENで文字数を確認する</a></li><li><a href="#toc9" tabindex="0">直し方：TRIM・SUBSTITUTE+CHAR(160)で除去</a></li><li><a href="#toc10" tabindex="0">再発防止：Webコピペ禁止・入力規則の活用</a></li></ol></li><li><a href="#toc11" tabindex="0">原因③・④：全角半角や似た文字が混在している（見た目が同じでも別物）</a><ol><li><a href="#toc12" tabindex="0">原因③：全角・半角の混在</a></li><li><a href="#toc13" tabindex="0">原因④：似ている文字の混入（○と〇、ーと―）</a></li></ol></li><li><a href="#toc14" tabindex="0">原因⑤：Excelが手動計算モードになっている</a><ol><li><a href="#toc15" tabindex="0">見分け方：数式タブ→計算方法の確認</a></li><li><a href="#toc16" tabindex="0">直し方：自動計算に切り替え・F9で即時再計算</a></li></ol></li><li><a href="#toc17" tabindex="0">よくある質問（FAQ）</a><ol><li><a href="#toc18" tabindex="0">SUMIF・COUNTIF・VLOOKUPで原因が同じなのはなぜ？</a></li><li><a href="#toc19" tabindex="0">XLOOKUPでも同じ問題は起きる？</a></li><li><a href="#toc20" tabindex="0">一度直したのにまた合わなくなった理由は？</a></li><li><a href="#toc21" tabindex="0">TRIMで空白を消したのに、まだ集計が合いません</a></li><li><a href="#toc22" tabindex="0">Web版のExcelを使っています。緑の三角や区切り位置が見当たりません</a></li><li><a href="#toc23" tabindex="0">どの原因か当たりがつきません。最短の確認順は？</a></li></ol></li><li><a href="#toc24" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">【早見表】症状×関数×原因5パターン一覧</span></h2>



<p class="wp-block-paragraph">まずは、いま起きている症状を下の表で探してください。横軸に「症状」、縦軸に「使っている関数」を取り、交わるマスに疑うべき原因コード（A〜E）を入れてあります。原因コードからそのまま該当セクションへジャンプできます。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数＼症状</th><th>合計・件数が0になる</th><th>#N/A（見つからない）</th><th>部分的にしかカウント・集計されない</th></tr></thead><tbody><tr><td><strong>SUMIF</strong></td><td>A・B・C</td><td>―</td><td>B・C・D</td></tr><tr><td><strong>COUNTIF</strong></td><td>A・B・C</td><td>―</td><td>B・C・D</td></tr><tr><td><strong>VLOOKUP / XLOOKUP</strong></td><td>―</td><td>A・B・C・D</td><td>B・C・D</td></tr><tr><td><strong>すべての関数共通</strong></td><td>E（結果が古いまま）</td><td>E</td><td>E</td></tr></tbody></table></figure>



<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><strong>A</strong></td><td>数値が文字列として保存されている</td><td>数字に見えて実は文字</td><td>原因①</td></tr><tr><td><strong>B</strong></td><td>前後に見えない空白が混入している</td><td>余計なスペースで別物扱い</td><td>原因②</td></tr><tr><td><strong>C</strong></td><td>全角・半角が混在している</td><td>「A」と「Ａ」は別の文字</td><td>原因③</td></tr><tr><td><strong>D</strong></td><td>似ている文字が混入している</td><td>「○」と「〇」、「ー」と「―」</td><td>原因④</td></tr><tr><td><strong>E</strong></td><td>Excelが手動計算モードになっている</td><td>計算結果が更新されていない</td><td>原因⑤</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">表を見ると分かるとおり、SUMIF・COUNTIF・VLOOKUPは別々の関数なのに、つまずく原因（A〜D）はほぼ共通です。これらはすべて「セルの値どうしを照合する」という同じ仕組みで動いているため、照合のもとになるデータが汚れていると、関数の種類に関係なくそろって失敗します。</p>



<p class="wp-block-paragraph">だからこそ、関数を疑う前にまずデータを疑ってみてください。</p>



<p class="wp-block-paragraph">特に多いのが原因①（文字列数値）と原因②（空白）の2つです。心当たりがなければ、まずこの2つから確認してみてください。</p>



<h3 class="wp-block-heading"><span id="toc2">どの原因か3ステップで絞り込む（診断フロー）</span></h3>



<p class="wp-block-paragraph">早見表を見ても原因を絞れないときは、次の3ステップを上から順にたどってください。1つのセルを対象に確認していくだけで、原因①〜④のどれかにたどり着けます（原因⑤の手動計算は、先に<code>F9</code>を押して結果が変われば即判定できるので、最初に除外しておくとスムーズです）。</p>



<p class="wp-block-paragraph"><strong>ステップ1：セルの配置（左揃え）でデータ型を疑う</strong></p>



<p class="wp-block-paragraph">まず、合わないデータが入っているセルの配置を見ます。書式を変えていないのに数字が左揃えなら、文字列数値（原因①）の可能性が高いです。確証を得るには<code>ISNUMBER</code>を使いましょう。</p>



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



<p class="wp-block-paragraph"><code>FALSE</code>が返れば文字列数値です。原因①へ進んでください。数値が右揃えで<code>TRUE</code>なら、データ型は正常なので次のステップへ進みます。</p>



<p class="wp-block-paragraph"><strong>ステップ2：LENで文字数の異常を確認</strong></p>



<p class="wp-block-paragraph">次に、文字数を確認します。想定より多ければ、空白（原因②）や余計な文字が混入しています。</p>



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



<p class="wp-block-paragraph">この値が0より大きければ、除去できる半角スペースが入っています。0なのに合わない場合は、全角スペースやノーブレークスペースの可能性があるため、<code>=LEN(A2)</code>の素の文字数を「正しいはずの文字数」と見比べてください。</p>



<p class="wp-block-paragraph">差があれば原因②（空白）へ。文字数が想定どおりなら、最後のステップへ進みます。</p>



<p class="wp-block-paragraph"><strong>ステップ3：UNICODEで文字コードを確認</strong></p>



<p class="wp-block-paragraph">文字数は合っているのに照合できない。ここまで来たら、原因は全角・半角（原因③）か似た文字（原因④）に絞られます。怪しい文字を1文字切り出して、文字コードを確認します。</p>



<pre class="wp-block-code"><code>=UNICODE(MID(A2,1,1))</code></pre>



<pre class="wp-block-code"><code>=EXACT(A2,B2)</code></pre>



<p class="wp-block-paragraph">正しいはずのセルと<code>UNICODE</code>の値を比べて違えば、全角・半角か似た文字の不一致です。<code>EXACT</code>で2セルを厳密比較し、<code>FALSE</code>なら原因③または④へ進んで<code>ASC</code>/<code>JIS</code>または<code>SUBSTITUTE</code>で直してください。</p>



<p class="wp-block-paragraph">迷ったら、左揃え→<code>LEN</code>→<code>UNICODE</code>の順、とだけ覚えておけば十分です。</p>



<p class="wp-block-paragraph">それでは原因を1つずつ見ていきましょう。</p>



<h2 class="wp-block-heading"><span id="toc3">原因①：数値が文字列として保存されている</span></h2>



<p class="wp-block-paragraph">いちばん多いのがこれ。セルに「1000」と入っているのに、Excelはそれを「数値の1000」ではなく「文字としての&#8221;1000&#8243;」として持っている状態。会計システムやWebからコピーした数字、CSVを取り込んだデータでよく起こります。</p>



<p class="wp-block-paragraph">SUMIFやSUM、COUNTIFの数値条件は「数値」を前提に動くため、中身が文字列だと合計の対象から外れて0になります。VLOOKUPでも、検索する側が数値・探される側が文字列（またはその逆）だと、見た目が同じ「1000」でも一致せず#N/Aになります。</p>



<p class="wp-block-paragraph">Microsoftの公式でも、検索値を扱うときは「最初の列のデータがテキストとして保存されていないこと」を確認するよう明記されています。</p>



<h3 class="wp-block-heading"><span id="toc4">見分け方：セルの左揃え・緑の三角・ISNUMBER確認</span></h3>



<p class="wp-block-paragraph">最初の手がかりは<strong>セル内での配置</strong>。Excelでは数値は自動で右揃え、文字列は左揃えで表示されます。書式を何も変えていないのに数字が左に寄っていたら、文字列数値を疑ってください。</p>



<p class="wp-block-paragraph">デスクトップ版なら、該当セルの左上に<strong>緑の三角（エラーインジケーター）</strong>が出ることもあります。ただしこの緑の三角はデスクトップ版だけの機能で、Excel Web版では表示されません。</p>



<p class="wp-block-paragraph">確実に判定したいときは<code>ISNUMBER</code>関数を使います。</p>



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



<p class="wp-block-paragraph"><code>A2</code>が本物の数値なら<code>TRUE</code>、文字列数値なら<code>FALSE</code>が返ります。範囲をまとめて見たいときは、空いた列に下までコピーすれば、どのセルが文字列なのか一目で分かるはず。</p>



<pre class="wp-block-code"><code>=ISNUMBER(A2)
=ISNUMBER(A3)
=ISNUMBER(A4)</code></pre>



<p class="wp-block-paragraph"><code>FALSE</code>が並んでいたら、それが0や#N/Aの正体です。</p>



<h3 class="wp-block-heading"><span id="toc5">直し方：VALUE関数・貼り付け形式・エラーインジケーター</span></h3>



<p class="wp-block-paragraph">文字列数値を本物の数値に変えるには、<code>VALUE</code>関数を使うのが最も確実で、デスクトップ版・Web版どちらでも使えます。</p>



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



<p class="wp-block-paragraph">これで<code>"1000"</code>という文字列が、計算に使える数値<code>1000</code>に変換されます。変換した列をコピーして、元の列に「値貼り付け」で戻せば、以降の集計はもう狂いません。</p>



<p class="wp-block-paragraph">デスクトップ版限定の手早い方法もあります。緑の三角が出ているセル範囲を選択し、表示されるエラーインジケーターのボタンから<strong>「数値に変換」</strong>をクリックするだけです。複数セルを一括で直せます。</p>



<p class="wp-block-paragraph">また「データ」→「区切り位置」→そのまま「完了」でも数値化できますが、こちらもデスクトップ版のみで、Web版では使えません。Web版で作業しているなら<code>VALUE</code>関数が基本の手段になります。</p>



<p class="wp-block-paragraph">変換方法をもっと詳しく知りたい場合は、<a href="https://mashukabu.com/excel-number-stored-as-text-convert/">Excelで文字列を数値に変換する4つの方法</a>で、貼り付け形式や区切り位置の手順まで個別に解説しています。</p>



<h3 class="wp-block-heading"><span id="toc6">再発防止：入力書式の統一とコピペルール</span></h3>



<p class="wp-block-paragraph">再発を防ぐには、データの入口をそろえるのが効果的です。</p>



<ul class="wp-block-list"><li>数値を入れる列は、あらかじめ表示形式を「標準」または「数値」に設定しておく</li><li>Webやシステムからコピーするときは、一度メモ帳などのプレーンテキストを経由してから貼ると、余計な書式が落ちる</li><li>CSV取り込み時は、取り込み後に必ず<code>ISNUMBER</code>で1セルだけ抜き取りチェックする習慣をつける</li></ul>



<p class="wp-block-paragraph">なお、逆に「数値を文字列の見た目（桁区切りやゼロ埋め）で表示したい」場合は、データ自体を文字列に変えるのではなく<code>TEXT</code>関数で表示だけ整えるのが安全です。詳しくは<a href="https://mashukabu.com/excel-function-howto-use-text/">TEXT関数の使い方</a>を参照してください。集計に使う元データはあくまで数値のまま保つのがコツです。</p>



<h2 class="wp-block-heading"><span id="toc7">原因②：前後に見えない空白が混入している</span></h2>



<p class="wp-block-paragraph">「東京」と「東京 」（末尾に空白）は、人間の目には同じでもExcelには別の文字列です。VLOOKUPはこの2つを一致と見なさず#N/Aを返し、SUMIFやCOUNTIFも条件に一致しないものとして集計対象から外します。</p>



<p class="wp-block-paragraph">空白はコピペや手入力で簡単に紛れ込むうえ、画面上はまったく見えないため、最も気づきにくい原因。</p>



<p class="wp-block-paragraph">Microsoftの公式でも、#N/Aエラーの主要因として「セル内の余分なスペース」が挙げられ、COUNTIFの注意書きにも「先頭・末尾のスペースで予期しない結果になる」と記載されています。</p>



<h3 class="wp-block-heading"><span id="toc8">見分け方：LENで文字数を確認する</span></h3>



<p class="wp-block-paragraph">空白の有無は<code>LEN</code>関数（文字数を数える関数）で炙り出せます。次の式を使ってください。</p>



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



<p class="wp-block-paragraph"><code>TRIM</code>は半角スペースを取り除く関数なので、「元の文字数」と「空白を取った文字数」の差を見れば、除去できる半角スペースが何個入っているか分かります。結果が0より大きければ、そのセルには余計な半角空白がある証拠。</p>



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



<p class="wp-block-paragraph">単純に<code>LEN(A2)</code>だけでも、想定より文字数が多ければ何かが混入していると判断できます。<code>LEN</code>関数そのものの使い方は<a href="https://mashukabu.com/excel-function-howto-use-len/">LEN関数の使い方</a>で詳しく解説しています。</p>



<h3 class="wp-block-heading"><span id="toc9">直し方：TRIM・SUBSTITUTE+CHAR(160)で除去</span></h3>



<p class="wp-block-paragraph">定番は<code>TRIM</code>関数。</p>



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



<p class="wp-block-paragraph">ただし、ここに重要な落とし穴があります。<strong><code>TRIM</code>が除去するのは半角スペース（文字コード32）だけ</strong>です。Microsoft公式も「7ビットASCIIスペース文字（値32）のみを対象」と明記しており、<strong>全角スペースは<code>TRIM</code>では消えません</strong>。</p>



<p class="wp-block-paragraph">これを知らずに「TRIMしたのに直らない」とハマる人が非常に多いところです。</p>



<p class="wp-block-paragraph">全角スペースが原因の場合は、先に<code>SUBSTITUTE</code>で全角スペースを半角に置き換えてから<code>TRIM</code>を掛けます。</p>



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



<p class="wp-block-paragraph"><code>SUBSTITUTE(A2,"　"," ")</code>の部分で全角スペース（&#8221;　&#8221;）を半角スペース（&#8221; &#8220;）に変換し、それを<code>TRIM</code>で除去する流れです。</p>



<p class="wp-block-paragraph">もう一つ厄介なのが、Webサイトからコピーしたときに混入する<code>CHAR(160)</code>（ノーブレークスペース、改行されない特殊な空白）です。これも<code>TRIM</code>では除去できません。次のように個別に消します。</p>



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



<p class="wp-block-paragraph">印刷できない制御文字（改行コードなど、文字コード0〜31）が原因なら<code>CLEAN</code>関数が有効です。</p>



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



<p class="wp-block-paragraph">ただし<code>CLEAN</code>も万能ではなく、対象は文字コード0〜31の制御文字だけです。<code>CHAR(160)</code>のノーブレークスペースは文字コードが160なので<code>CLEAN</code>では消えません。</p>



<p class="wp-block-paragraph">「<code>TRIM</code>でも<code>CLEAN</code>でも直らない空白」に遭遇したら、<code>CHAR(160)</code>を<code>SUBSTITUTE</code>で個別除去する、と覚えておくと迷いません。空白の見分け方や5パターンの対処は<a href="https://mashukabu.com/excel-blank-cell-not-counted/">Excelで空白セルがカウントされない5パターンと対処法</a>にまとめてあります。</p>



<h3 class="wp-block-heading"><span id="toc10">再発防止：Webコピペ禁止・入力規則の活用</span></h3>



<ul class="wp-block-list"><li>Webやメールからの直接コピペは、空白混入の最大の発生源です。一度メモ帳などのプレーンテキストに貼ってから持ってくると、ノーブレークスペースや制御文字が落ちます</li><li>マスタとして使う表（VLOOKUPの参照先など）は、取り込み時に全列へまとめて<code>TRIM</code>+<code>SUBSTITUTE</code>を掛けてから値貼り付けしておく</li><li>キーになる列にはデータの入力規則を設定し、想定外の文字数・形式が入らないようにする</li></ul>



<h2 class="wp-block-heading"><span id="toc11">原因③・④：全角半角や似た文字が混在している（見た目が同じでも別物）</span></h2>



<p class="wp-block-paragraph">商品コードや型番が「同じはずなのに一致しない」とき、犯人は文字そのものの違いです。全角・半角の混在（原因③）と、見た目がそっくりな別文字の混入（原因④）は、どちらも照合を静かに壊します。</p>



<p class="wp-block-paragraph">原因は近いので、続けて見分け方と直し方を押さえましょう。</p>



<h3 class="wp-block-heading"><span id="toc12">原因③：全角・半角の混在</span></h3>



<p class="wp-block-paragraph">「Ａ１２３」（全角）と「A123」（半角）は、人間には同じに見えてもExcelにとっては完全に別の文字列です。商品コードや型番、電話番号などで全角と半角が混ざると、VLOOKUPは一致せず#N/A、SUMIF・COUNTIFも条件に合わずカウント漏れを起こします。</p>



<p class="wp-block-paragraph">特に複数人で入力する台帳や、IMEの設定がバラバラな環境で起こりがち。</p>



<h4 class="wp-block-heading">見分け方：EXACT関数で厳密比較</h4>



<p class="wp-block-paragraph">「同じはずなのに一致しない」2つのセルを突き合わせるには<code>EXACT</code>関数が便利です。</p>



<pre class="wp-block-code"><code>=EXACT(A2,B2)</code></pre>



<p class="wp-block-paragraph"><code>EXACT</code>は大文字小文字も全角半角も区別して厳密に比較し、完全一致なら<code>TRUE</code>、少しでも違えば<code>FALSE</code>を返します。見た目が同じなのに<code>FALSE</code>が出たら、全角・半角の違い（あるいは後述の似た文字や空白）が潜んでいる証拠。</p>



<h4 class="wp-block-heading">直し方：ASC/JIS関数で統一</h4>



<p class="wp-block-paragraph">全角・半角の不一致は、どちらかに統一すれば一発で解決します。半角にそろえるなら<code>ASC</code>関数、全角にそろえるなら<code>JIS</code>関数を使います。</p>



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



<p class="wp-block-paragraph"><code>ASC</code>は全角の英数字・カタカナを半角に変換します。「Ａ１２３」→「A123」のようにそろうので、コードや型番は半角に統一するケースが多いでしょう。</p>



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



<p class="wp-block-paragraph"><code>JIS</code>は逆に半角の英数字・カタカナを全角に変換します。検索する側（数式）と探される側（マスタ）の両方に同じ関数を掛けて、土俵をそろえるのがポイントです。</p>



<p class="wp-block-paragraph">注意点として、<code>ASC</code>は全角スペース・漢字・ひらがなは変換しません。また<code>JIS</code>を使うと半角スペースが全角スペースに変わるので、空白問題（原因②）と組み合わさっているときは処理の順番に気をつけてください。</p>



<p class="wp-block-paragraph">なお<code>JIS</code>関数はExcel専用で、Google Sheetsには存在しません（この記事はExcelの話です）。</p>



<h4 class="wp-block-heading">再発防止：入力規則でIMEモードを固定</h4>



<ul class="wp-block-list"><li>商品コードや型番の列は、データの入力規則で<strong>日本語入力（IME）を「半角英数」に固定</strong>しておくと、全角混入をそもそも防げます</li><li>既存の台帳には、取り込み時に<code>ASC</code>または<code>JIS</code>を全体へ掛けて一度そろえてしまう</li><li>複数人で更新する表は、入力ルールを「英数字は半角」と明文化して共有する</li></ul>



<h3 class="wp-block-heading"><span id="toc13">原因④：似ている文字の混入（○と〇、ーと―）</span></h3>



<p class="wp-block-paragraph">全角・半角よりさらに厄介なのが、<strong>見た目はほぼ同じなのに文字コードが違う文字</strong>です。代表例は次の3組。</p>



<ul class="wp-block-list"><li>丸記号の「○」（白丸）と「〇」（漢数字のゼロ）</li><li>長音の「ー」（音引き）と「―」（ダッシュ）と「‐」（ハイフン）</li><li>マイナス記号の「-」（半角ハイフン）と「−」（全角マイナス）と「‐」（ハイフン）</li></ul>



<p class="wp-block-paragraph">これらは画面上では区別がほとんどつきませんが、Excelには別の文字です。VLOOKUPで「データーセンター」を探しているのに台帳が「データ―センター」（長音がダッシュ）になっていると、当然#N/Aになります。</p>



<h4 class="wp-block-heading">見分け方：CODEで文字コードを確認</h4>



<p class="wp-block-paragraph">文字コードを直接確認すれば、似た文字を見破れるはず。<code>CODE</code>関数は最初の1文字の文字コードを返します。</p>



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



<p class="wp-block-paragraph">ただし<code>CODE</code>はANSI（環境依存の文字セット）のコードを返すため、似た記号の判別にはより広範囲をカバーする<code>UNICODE</code>関数のほうが確実です。</p>



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



<p class="wp-block-paragraph">一致しないはずの2セルでそれぞれ<code>UNICODE</code>を取り、値が違えば「見た目は同じでも別の文字」と確定できます。文字列の途中の文字を調べたいときは、<code>MID</code>で1文字を切り出してから<code>UNICODE</code>に渡しましょう。</p>



<pre class="wp-block-code"><code>=UNICODE(MID(A2,3,1))</code></pre>



<p class="wp-block-paragraph">これで3文字目の文字コードが分かります。「ここの長音だけ怪しい」というときに、ピンポイントで犯人を特定できます。</p>



<h4 class="wp-block-heading">直し方：SUBSTITUTE で正規文字に置換</h4>



<p class="wp-block-paragraph">似た文字は<code>SUBSTITUTE</code>で正しい文字に置き換えます。たとえばダッシュ「―」を長音「ー」に直すなら、次のとおり。</p>



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



<p class="wp-block-paragraph">複数の似た文字をまとめて直したいときは、<code>SUBSTITUTE</code>を入れ子にします。</p>



<pre class="wp-block-code"><code>=SUBSTITUTE(SUBSTITUTE(A2,&quot;〇&quot;,&quot;○&quot;),&quot;―&quot;,&quot;ー&quot;)</code></pre>



<p class="wp-block-paragraph">内側から順に処理され、まず「〇」を「○」に、次に「―」を「ー」に置換します。直したい文字の種類が増えても、入れ子を重ねれば対応できます。置換後の列を値貼り付けでマスタに反映すれば、以降の照合が安定するはず。</p>



<h4 class="wp-block-heading">再発防止：リスト入力で自由記述を禁止</h4>



<ul class="wp-block-list"><li>似た文字の混入は「手入力で人によって変換候補が違う」ことが原因です。選択肢が決まっている列は、データの入力規則の<strong>リスト</strong>で選ばせ、自由記述をやめると根本から防げます</li><li>既存データは、よく混入する似た文字（○／〇、ー／―）を一覧化し、取り込み時に<code>SUBSTITUTE</code>で一括正規化するテンプレートを用意しておく</li></ul>



<h2 class="wp-block-heading"><span id="toc14">原因⑤：Excelが手動計算モードになっている</span></h2>



<p class="wp-block-paragraph">ここまでの①〜④はデータの中身が原因でしたが、原因⑤だけは設定の問題です。<strong>Excelの計算方法が「手動」になっている</strong>と、データを直しても数式を入れ直しても、画面の結果が古いままで更新されません。</p>



<p class="wp-block-paragraph">「直したはずなのに合わない」と感じる場合、実は値は正しく、表示だけが追いついていないケースがあります。</p>



<p class="wp-block-paragraph">マクロ付きファイルを開いたときや、重い表で動作を軽くするために誰かが切り替えたまま、という形で手動モードになっていることがよくあります。</p>



<h3 class="wp-block-heading"><span id="toc15">見分け方：数式タブ→計算方法の確認</span></h3>



<p class="wp-block-paragraph">確認は数式タブから行います。</p>



<ol class="wp-block-list"><li>リボンの「数式」タブを開く</li><li>右端の「計算方法の設定」をクリック</li><li>「手動」にチェックが入っていれば、それが原因です</li></ol>



<p class="wp-block-paragraph">簡単な切り分けとして、適当なセルで<code>F9</code>キーを押してみて、それまで変わらなかった結果が一斉に更新されたら、手動計算モードで間違いありません。</p>



<h3 class="wp-block-heading"><span id="toc16">直し方：自動計算に切り替え・F9で即時再計算</span></h3>



<p class="wp-block-paragraph">直し方は2つです。</p>



<ol class="wp-block-list"><li><strong>設定を「自動」に戻す</strong>：「数式」タブ→「計算方法の設定」→「自動」を選びます。これ以降は値を変えるたびに自動で再計算されます</li><li><strong>その場で再計算する</strong>：いますぐ結果を更新したいだけなら<code>F9</code>キーを押します。<code>Shift+F9</code>は現在のシートだけ、<code>Ctrl+Alt+F9</code>はすべてのシートを強制的に再計算します</li></ol>



<p class="wp-block-paragraph">ふだんは「自動」で運用するのがおすすめ。設定を戻したうえで、念のため<code>F9</code>で一度全体を更新しておくと安心です。</p>



<p class="wp-block-paragraph">なお、計算されない症状は手動計算モード以外にも、文字列書式・先頭のアポストロフィ・数式表示モードなど複数の原因があります。当てはまらないときは<a href="https://mashukabu.com/excel-formula-not-calculating/">Excelの数式が計算されない7つの原因と直し方</a>で原因の全体像を確認してください。</p>



<h2 class="wp-block-heading"><span id="toc17">よくある質問（FAQ）</span></h2>



<h3 class="wp-block-heading"><span id="toc18">SUMIF・COUNTIF・VLOOKUPで原因が同じなのはなぜ？</span></h3>



<p class="wp-block-paragraph">これらの関数はすべて「セルの値どうしを照合する」という共通の仕組みで動いているからです。SUMIFは条件と一致する値を、COUNTIFは数える対象を、VLOOKUPは検索値を、それぞれ「比較」して合致したものを処理します。</p>



<p class="wp-block-paragraph">照合のもとになる値が文字列数値・空白・全角半角・似た文字で汚れていると、どの関数でも「一致しない」と判定され、そろって0や#N/Aになります。関数を疑う前に、まずデータを疑ってみてください。</p>



<h3 class="wp-block-heading"><span id="toc19">XLOOKUPでも同じ問題は起きる？</span></h3>



<p class="wp-block-paragraph">起きます。XLOOKUPはVLOOKUPより新しく高機能な関数ですが、「値を照合する」仕組み自体は同じです。検索する側が数値・探される側が文字列だったり、空白や全角半角が混在していれば、XLOOKUPでも一致せず、結果（既定では#N/A、または指定した「見つからない場合」の値）が返ります。</p>



<p class="wp-block-paragraph">XLOOKUPに乗り換えてもデータ品質の問題は解決しないので、この記事の対処はそのまま有効。なおXLOOKUPはMicrosoft 365 / Excel 2021以降とWeb版で使え、古い版では<code>#NAME?</code>になります。</p>



<h3 class="wp-block-heading"><span id="toc20">一度直したのにまた合わなくなった理由は？</span></h3>



<p class="wp-block-paragraph">多くは「元データが更新されたとき、新しく入ったデータに同じ汚れが再混入した」ためです。VALUEやTRIMで直せるのは、あくまでその時点のデータだけ。マスタや集計元の表に毎月データを継ぎ足す運用だと、追加分にまた文字列数値や空白が紛れ込みます。</p>



<p class="wp-block-paragraph">だからこそ各原因の「再発防止」が重要で、入力規則やコピペルールで入口をふさいでおくと、直し直しの無限ループから抜け出せます。</p>



<h3 class="wp-block-heading"><span id="toc21">TRIMで空白を消したのに、まだ集計が合いません</span></h3>



<p class="wp-block-paragraph"><code>TRIM</code>が除去するのは半角スペース（文字コード32）だけだからです。全角スペースやノーブレークスペース（CHAR(160)）は<code>TRIM</code>では消えません。</p>



<p class="wp-block-paragraph"><code>=TRIM(SUBSTITUTE(A2,"　"," "))</code>で全角スペースを、<code>=TRIM(SUBSTITUTE(A2,CHAR(160)," "))</code>でノーブレークスペースを処理してください。</p>



<p class="wp-block-paragraph">それでも残る制御文字は<code>CLEAN</code>で除去できますが、<code>CLEAN</code>も対象は文字コード0〜31だけで、CHAR(160)は消えない点に注意が必要です。</p>



<h3 class="wp-block-heading"><span id="toc22">Web版のExcelを使っています。緑の三角や区切り位置が見当たりません</span></h3>



<p class="wp-block-paragraph">エラーインジケーター（緑の三角）と「区切り位置」機能は、デスクトップ版のExcel専用です。Excel for the Web（Web版）には用意されていません。Web版で文字列数値を直すときは<code>VALUE</code>関数を使ってください。</p>



<p class="wp-block-paragraph"><code>ISNUMBER</code>・<code>LEN</code>・<code>TRIM</code>・<code>SUBSTITUTE</code>・<code>ASC</code>・<code>JIS</code>・<code>UNICODE</code>はWeb版でも使えるので、この記事の確認・修正のほとんどはWeb版だけで完結できます。</p>



<h3 class="wp-block-heading"><span id="toc23">どの原因か当たりがつきません。最短の確認順は？</span></h3>



<p class="wp-block-paragraph">まず<code>F9</code>を押して結果が変わるか見てください（変われば原因⑤）。変わらなければ、合わないセルで「左揃えか→<code>ISNUMBER</code>」（原因①）、「<code>LEN</code>で文字数の異常」（原因②）、「<code>UNICODE</code>または<code>EXACT</code>で文字の違い」（原因③・④）の順に確認します。</p>



<p class="wp-block-paragraph">この記事の診断フローがそのままチェックリストになっているので、上から順にたどれば必ずどれかに行き着きます。</p>



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



<p class="wp-block-paragraph">Excelで集計や検索が合わないとき、犯人は数式ではなくデータであることがほとんどです。SUMIF・COUNTIF・VLOOKUPがそろって0や#N/Aを返すのは、これらが同じ「値の照合」で動いているからで、照合のもとになるデータが汚れていれば関数の種類を問わず失敗します。</p>



<p class="wp-block-paragraph">原因は5つに整理できます。</p>



<ul class="wp-block-list"><li>①数値が文字列として保存されている</li><li>②前後に見えない空白が混入している</li><li>③全角・半角が混在している</li><li>④似ている文字が混入している</li><li>⑤手動計算モードになっている</li></ul>



<p class="wp-block-paragraph">冒頭の早見表で症状から原因を絞り、各セクションの「見分け方→直し方→再発防止」で対処してください。</p>



<p class="wp-block-paragraph">迷ったら診断フローの3ステップ（左揃え確認→<code>LEN</code>→<code>UNICODE</code>）を上から順にたどれば、原因にたどり着けます。そして直したあとは「再発防止」で入口をふさぐこと。これで「式は合っているのに結果が合わない」という消耗戦から、すっきり卒業できます。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-aggregation-search-mismatch/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのチェックボックスで進捗管理シートを作る方法｜COUNTIFで完了率を自動計算</title>
		<link>https://mashukabu.com/spreadsheet-checkbox-progress/</link>
					<comments>https://mashukabu.com/spreadsheet-checkbox-progress/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Fri, 12 Jun 2026 21:57:45 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[COUNTA]]></category>
		<category><![CDATA[COUNTIF]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[チェックボックス]]></category>
		<category><![CDATA[フィルター]]></category>
		<category><![CDATA[条件付き書式]]></category>
		<category><![CDATA[進捗管理]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=7971</guid>

					<description><![CDATA[Googleスプレッドシートのチェックボックスで進捗管理シートを作る方法を解説。挿入手順から、COUNTIF・COUNTAで完了数や完了率を自動計算する数式、完了行に取り消し線を引く条件付き書式、未完了タスクだけをフィルターで表示する方法まで、実務で使える手順をステップごとに紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「タスクの進み具合がパッとわからない」「やったかどうかを毎回口頭で確認している」。チームでToDoや進捗を共有するとき、こうした手間は地味にストレスですよね。これを解決してくれるのが、Googleスプレッドシートの<strong>チェックボックス</strong>です。</p>



<p class="wp-block-paragraph">この記事では、チェックボックスの挿入方法から解説します。COUNTIF・COUNTAで完了数や完了率を自動計算する数式まで、順を追って紹介します。さらに、完了した行に自動で取り消し線を引く方法、未完了のタスクだけをフィルターで表示する方法も紹介します。</p>



<p class="wp-block-paragraph">最後まで読めば、そのまま実務で使える進捗管理シートが1枚完成します。ぜひ手を動かしながら読んでみてください。</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">スプレッドシートのチェックボックスとは？</a><ol><li><a href="#toc2" tabindex="0">ExcelのチェックボックスとSheetsの違い</a></li></ol></li><li><a href="#toc3" tabindex="0">チェックボックスの挿入方法</a><ol><li><a href="#toc4" tabindex="0">手順：チェックボックスを挿入する</a></li><li><a href="#toc5" tabindex="0">チェックボックスの値を「完了／未完了」に変える</a></li></ol></li><li><a href="#toc6" tabindex="0">チェックボックスで完了数・完了率を自動計算する</a><ol><li><a href="#toc7" tabindex="0">完了したタスクの数をCOUNTIFで数える</a></li><li><a href="#toc8" tabindex="0">全タスクの数をCOUNTAで数える</a></li><li><a href="#toc9" tabindex="0">完了率を計算する</a></li><li><a href="#toc10" tabindex="0">担当者ごとの完了数を出す</a></li></ol></li><li><a href="#toc11" tabindex="0">チェックボックスで完了行に取り消し線を引く</a><ol><li><a href="#toc12" tabindex="0">手順：条件付き書式で取り消し線を設定する</a></li></ol></li><li><a href="#toc13" tabindex="0">フィルターで未完了タスクだけを表示する</a><ol><li><a href="#toc14" tabindex="0">手順：フィルターで未完了だけを絞り込む</a></li><li><a href="#toc15" tabindex="0">FILTER関数で未完了リストを別表示する</a></li></ol></li><li><a href="#toc16" tabindex="0">進捗管理シートをさらに便利にする応用テク</a><ol><li><a href="#toc17" tabindex="0">完了率を進捗バーで見える化する</a></li><li><a href="#toc18" tabindex="0">ステータスをプルダウンと組み合わせる</a></li><li><a href="#toc19" tabindex="0">期限が近いタスクを自動で通知する</a></li></ol></li><li><a href="#toc20" tabindex="0">よくあるトラブルと対処法</a><ol><li><a href="#toc21" tabindex="0">チェックボックスを消したい</a></li><li><a href="#toc22" tabindex="0">COUNTIFの結果が0になる</a></li><li><a href="#toc23" tabindex="0">チェックを入れても取り消し線がつかない</a></li><li><a href="#toc24" tabindex="0">フィルターが他の人の画面にも反映される</a></li></ol></li><li><a href="#toc25" tabindex="0">よくある質問（FAQ）</a><ol><li><a href="#toc26" tabindex="0">Q. チェックボックスを一括で挿入できますか？</a></li><li><a href="#toc27" tabindex="0">Q. チェックを入れた順番に並べ替えできますか？</a></li><li><a href="#toc28" tabindex="0">Q. スマホアプリでもチェックボックスは使えますか？</a></li><li><a href="#toc29" tabindex="0">Q. チェックの数を別シートで集計できますか？</a></li></ol></li><li><a href="#toc30" tabindex="0">まとめ：チェックボックスで進捗管理シートを作る手順</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのチェックボックスとは？</span></h2>



<p class="wp-block-paragraph">チェックボックスとは、クリックするだけでオン・オフを切り替えられる四角いマスのことです。タスクが終わったらチェックを入れる、という直感的な操作で進捗を記録できます。</p>



<p class="wp-block-paragraph">見た目は単なるチェック欄ですが、中身はちょっと特別です。チェックを入れたセルには <code>TRUE</code>、外したセルには <code>FALSE</code> という値が入っています。この <code>TRUE</code> と <code>FALSE</code> は「論理値」と呼ばれる正式なデータです。</p>



<p class="wp-block-paragraph">つまり、チェックボックスはただの飾りではありません。COUNTIFやCOUNTAといった集計関数で数えられる「データそのもの」なのです。</p>



<p class="wp-block-paragraph">この性質があるからこそ、「チェックが入った数を数える」「完了率を計算する」といった自動集計ができます。ToDo管理や進捗管理にチェックボックスが向いているのは、まさにこの点にあるといえるでしょう。</p>



<h3 class="wp-block-heading"><span id="toc2">ExcelのチェックボックスとSheetsの違い</span></h3>



<p class="wp-block-paragraph">Excelにもチェックボックスはありますが、設定の手間が大きく違います。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>Excel</th><th>Google スプレッドシート</th></tr></thead><tbody><tr><td>挿入方法</td><td>開発タブ > フォームコントロール</td><td>挿入 > チェックボックス</td></tr><tr><td>セルとの連動</td><td>「コントロールの書式設定」でリンクが必要</td><td>セル自体がTRUE/FALSEになる</td></tr><tr><td>集計のしやすさ</td><td>リンク先セルを別途用意する必要あり</td><td>そのままCOUNTIFで集計できる</td></tr><tr><td>モバイル操作</td><td>不安定</td><td>タップで切り替え可能</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">一番大きな違いは、セルとの連動のしやすさです。Excelはチェックボックスとセルを別々にリンクさせる必要があります。</p>



<p class="wp-block-paragraph">一方、スプレッドシートはセル自体が <code>TRUE</code>／<code>FALSE</code> になります。この手軽さのおかげで、スプレッドシートのチェックボックスは進捗管理にすぐ使えます。</p>



<h2 class="wp-block-heading"><span id="toc3">チェックボックスの挿入方法</span></h2>



<p class="wp-block-paragraph">それでは、実際にチェックボックスを挿入してみましょう。手順はとてもシンプルです。</p>



<h3 class="wp-block-heading"><span id="toc4">手順：チェックボックスを挿入する</span></h3>



<p class="wp-block-paragraph"><strong>1. チェックボックスを入れたいセルを選択する</strong></p>



<p class="wp-block-paragraph">たとえば、タスク名をA列に入力しておき、その横のB2セルを選びます。複数のタスクにまとめて入れたい場合は、B2:B11のように範囲で選択してください。</p>



<p class="wp-block-paragraph"><strong>2. メニューから「チェックボックス」を選ぶ</strong></p>



<p class="wp-block-paragraph">メニューバーの [挿入] をクリックし、[チェックボックス] を選択します。これだけで、選択したセルにチェックボックスが表示されます。</p>



<p class="wp-block-paragraph"><strong>3. クリックしてオン・オフを確認する</strong></p>



<p class="wp-block-paragraph">挿入されたチェックボックスをクリックしてみてください。チェックが入ったり外れたりすれば成功です。チェックが入っているとき、そのセルの値は <code>TRUE</code> になっています。</p>



<h3 class="wp-block-heading"><span id="toc5">チェックボックスの値を「完了／未完了」に変える</span></h3>



<p class="wp-block-paragraph">デフォルトのチェックボックスは、オンが <code>TRUE</code>、オフが <code>FALSE</code> です。集計では問題ありませんが、別のセルに状態を文字で表示したい場面もあります。その場合はカスタム値を設定できます。</p>



<p class="wp-block-paragraph">設定したいセルを選び、[データ] > [データの入力規則] を開きましょう。条件で [チェックボックス] を選び、[カスタムのセル値を使用する] にチェックを入れてください。すると「チェックマークが入っている場合」と「入っていない場合」の値を自由に決められます。</p>



<p class="wp-block-paragraph">ここに「完了」「未完了」と入力すれば、チェックのオン・オフでセルの値が「完了」「未完了」に切り替わります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>カスタム値を使うときの集計の注意</strong></p><p>カスタム値を設定すると、集計の条件も変わります。デフォルトなら <code>TRUE</code> で数えますが、カスタム値の場合は <code>"完了"</code> のように文字列で数えてください。後述のCOUNTIFの条件も、この値に合わせて書き換える必要があります。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc6">チェックボックスで完了数・完了率を自動計算する</span></h2>



<p class="wp-block-paragraph">チェックボックスの本領は、ここからが本番です。チェックの数を自動で数えて、完了率まで出してみましょう。</p>



<p class="wp-block-paragraph">ここでは次のような進捗管理シートを例に説明します。A列にタスク名、B列にチェックボックスが入っているとします。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A列（タスク）</th><th>B列（完了）</th></tr></thead><tbody><tr><td>2行目</td><td>資料作成</td><td>TRUE</td></tr><tr><td>3行目</td><td>メール送信</td><td>FALSE</td></tr><tr><td>4行目</td><td>データ集計</td><td>TRUE</td></tr><tr><td>&#8230;</td><td>&#8230;</td><td>&#8230;</td></tr><tr><td>11行目</td><td>議事録作成</td><td>FALSE</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc7">完了したタスクの数をCOUNTIFで数える</span></h3>



<p class="wp-block-paragraph">まず、チェックが入った（完了した）タスクの数を数えます。<a href="https://mashukabu.com/spreadsheet-countif-function/">COUNTIF関数</a>を使えば一発。</p>



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



<p class="wp-block-paragraph">この数式は、B2からB11の範囲で値が <code>TRUE</code> になっているセルの数を返します。チェックが3つ入っていれば「3」と表示されます。チェックを入れたり外したりするたびに、この数値も自動で更新されます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>条件はTRUEと書く（&#8221;TRUE&#8221;ではない）</strong></p><p>条件を <code>"TRUE"</code> のようにダブルクォーテーションで囲むと、文字列として扱われてうまく数えられないことがあります。チェックボックスの値は論理値なので、クォートなしの <code>TRUE</code> で指定してください。カスタム値で「完了」を使っている場合は、逆に <code>"完了"</code> と文字列で指定します。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc8">全タスクの数をCOUNTAで数える</span></h3>



<p class="wp-block-paragraph">次に、タスクの総数を数えます。タスク名が入っているA列を<a href="https://mashukabu.com/spreadsheet-counta-function/">COUNTA関数</a>で数えるのが確実でしょう。</p>



<pre class="wp-block-code"><code>=COUNTA(A2:A11)</code></pre>



<p class="wp-block-paragraph">COUNTAは空白でないセルの数を返します。タスク名が10個入っていれば「10」になります。</p>



<p class="wp-block-paragraph">ここでチェックボックス列（B列）を数えないのには理由があります。チェックボックスは、外していても <code>FALSE</code> という値が入っています。そのためB列をCOUNTAで数えると、未完了も含めて全部カウントされてしまう点に注意しましょう。</p>



<p class="wp-block-paragraph">タスクの総数を正確に出すには、タスク名の列を数えるのが安全です。</p>



<h3 class="wp-block-heading"><span id="toc9">完了率を計算する</span></h3>



<p class="wp-block-paragraph">完了数と総数がそろえば、完了率は割り算で出せます。</p>



<pre class="wp-block-code"><code>=COUNTIF(B2:B11, TRUE) / COUNTA(A2:A11)</code></pre>



<p class="wp-block-paragraph">このままだと「0.3」のような小数で表示されます。パーセント表示にするには、セルを選んでツールバーの [%] ボタンを押してください。すると「30%」のように表示されます。</p>



<p class="wp-block-paragraph">数式の中でパーセント文字列にしたい場合は、TEXT関数で囲む方法もあります。</p>



<pre class="wp-block-code"><code>=TEXT(COUNTIF(B2:B11, TRUE) / COUNTA(A2:A11), &quot;0%&quot;)</code></pre>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>完了率を1つのセルにまとめて表示する</strong></p><p>「3 / 10 完了（30%）」のように、まとめて表示したいときは文字列結合が便利です。</p></blockquote>



<pre class="wp-block-code"><code>=COUNTIF(B2:B11,TRUE) &amp; &quot; / &quot; &amp; COUNTA(A2:A11) &amp; &quot; 完了（&quot; &amp; TEXT(COUNTIF(B2:B11,TRUE)/COUNTA(A2:A11),&quot;0%&quot;) &amp; &quot;）&quot;</code></pre>



<h3 class="wp-block-heading"><span id="toc10">担当者ごとの完了数を出す</span></h3>



<p class="wp-block-paragraph">タスクに担当者列（C列）があるなら、担当者別の完了数も出せます。COUNTIFS関数で2つの条件を組み合わせてみましょう。</p>



<pre class="wp-block-code"><code>=COUNTIFS(C2:C11, &quot;山田&quot;, B2:B11, TRUE)</code></pre>



<p class="wp-block-paragraph">この数式は、担当者が「山田」さんで、なおかつチェックが入っているタスクの数を返します。チーム全体の進捗を担当者ごとに把握したいときに役立ちます。</p>



<h2 class="wp-block-heading"><span id="toc11">チェックボックスで完了行に取り消し線を引く</span></h2>



<p class="wp-block-paragraph">チェックを入れたら、その行のタスク名に取り消し線が引かれる。こうすると、終わったタスクが一目でわかります。これは条件付き書式で実現できます。</p>



<h3 class="wp-block-heading"><span id="toc12">手順：条件付き書式で取り消し線を設定する</span></h3>



<p class="wp-block-paragraph"><strong>1. 取り消し線を引きたい範囲を選択する</strong></p>



<p class="wp-block-paragraph">タスク名のA列を中心に、A2:C11のように行全体を選びます。</p>



<p class="wp-block-paragraph"><strong>2. [表示形式] > [条件付き書式] を開く</strong></p>



<p class="wp-block-paragraph">メニューバーの [表示形式] から [条件付き書式] をクリックします。</p>



<p class="wp-block-paragraph"><strong>3. 「カスタム数式」を選ぶ</strong></p>



<p class="wp-block-paragraph">「書式ルール」のドロップダウンで [カスタム数式] を選択します。</p>



<p class="wp-block-paragraph"><strong>4. 数式を入力する</strong></p>



<p class="wp-block-paragraph">入力欄に次の数式を入れましょう。</p>



<pre class="wp-block-code"><code>=$B2=TRUE</code></pre>



<p class="wp-block-paragraph">先頭の <code>$B</code> は、B列を固定するための書き方です。これにより、B列にチェックが入っている行だけが対象になります。行全体に書式を適用したいときの基本パターンとして覚えておきましょう。</p>



<p class="wp-block-paragraph"><strong>5. 書式スタイルで取り消し線を選ぶ</strong></p>



<p class="wp-block-paragraph">書式設定のメニューで、取り消し線のアイコンをクリックします。文字色を薄いグレーにしておくと、完了タスクがさらに目立たなくなって見やすさもアップ。</p>



<p class="wp-block-paragraph"><strong>6. [完了] をクリックして保存する</strong></p>



<p class="wp-block-paragraph">これで、チェックを入れた行のタスク名に自動で取り消し線が引かれます。チェックを外せば取り消し線も消えます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>条件付き書式をもっと活用したい場合</strong></p><p>取り消し線だけでなく、行全体の背景色を変えたり、複数のルールを優先順位付きで組み合わせたりも可能。色付けやカスタム数式の応用は<a href="https://mashukabu.com/spreadsheet-conditional-formatting/">スプレッドシートの条件付き書式の使い方</a>で詳しく解説しています。あわせて読むと、進捗管理シートの見栄えがぐっと良くなります。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc13">フィルターで未完了タスクだけを表示する</span></h2>



<p class="wp-block-paragraph">タスクが増えてくると、「まだ終わっていないものだけ見たい」という場面が出てきます。フィルター機能を使えば、未完了のタスクだけを画面に表示できます。</p>



<h3 class="wp-block-heading"><span id="toc14">手順：フィルターで未完了だけを絞り込む</span></h3>



<p class="wp-block-paragraph"><strong>1. データ範囲を選択する</strong></p>



<p class="wp-block-paragraph">見出し行を含めて、表全体を選択しましょう。</p>



<p class="wp-block-paragraph"><strong>2. [データ] > [フィルタを作成] をクリックする</strong></p>



<p class="wp-block-paragraph">メニューバーの [データ] から [フィルタを作成] を選びます。各列の見出しにフィルターアイコンが表示されます。</p>



<p class="wp-block-paragraph"><strong>3. チェックボックス列のフィルターを開く</strong></p>



<p class="wp-block-paragraph">完了列（B列）の見出しにあるフィルターアイコンをクリックします。</p>



<p class="wp-block-paragraph"><strong>4. 「FALSE」だけにチェックを残す</strong></p>



<p class="wp-block-paragraph">「値でフィルタ」の一覧から <code>TRUE</code> のチェックを外し、<code>FALSE</code> だけを残して [OK] を押します。これで、未完了（チェックが入っていない）タスクだけが表示されますよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>共有シートではフィルタ表示を使う</strong></p><p>[フィルタを作成] は、絞り込みが全員の画面に反映されます。共有シートで自分だけ絞り込みたいときは、[データ] > [フィルタ表示] > [新しいフィルタ表示を作成] を使ってください。フィルタ表示なら、ほかのメンバーの画面に影響を与えずに自分だけタスクを絞り込めます。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc15">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:A11, B2:B11=FALSE)</code></pre>



<p class="wp-block-paragraph">この数式は、B列が <code>FALSE</code> の行だけをA列から抜き出して表示します。元の表はそのままに、未完了タスクのリストを別シートやサマリー欄に作れて便利。タスクが完了するたびに、このリストからも自動で消えていきます。</p>



<h2 class="wp-block-heading"><span id="toc16">進捗管理シートをさらに便利にする応用テク</span></h2>



<p class="wp-block-paragraph">基本ができたら、もうひと工夫して見やすさと使いやすさを高めましょう。</p>



<h3 class="wp-block-heading"><span id="toc17">完了率を進捗バーで見える化する</span></h3>



<p class="wp-block-paragraph">数字だけでなく、バーで進捗を見せると直感的です。REPT関数で四角を繰り返すと、簡易的な進捗バーが作れます。</p>



<pre class="wp-block-code"><code>=REPT(&quot;■&quot;, ROUND(COUNTIF(B2:B11,TRUE)/COUNTA(A2:A11)*10, 0)) &amp; REPT(&quot;□&quot;, 10 - ROUND(COUNTIF(B2:B11,TRUE)/COUNTA(A2:A11)*10, 0))</code></pre>



<p class="wp-block-paragraph">この数式は、完了率を10個の四角で表します。完了率が30%なら「■■■□□□□□□□」のように表示されます。グラフを挿入するほどではないけれど、進み具合をひと目で見せたいときに重宝しますよ。</p>



<h3 class="wp-block-heading"><span id="toc18">ステータスをプルダウンと組み合わせる</span></h3>



<p class="wp-block-paragraph">「完了／未完了」の2択ではなく、「未着手・対応中・完了」のように段階を分けたい場合は、チェックボックスよりプルダウンが向いています。</p>



<p class="wp-block-paragraph">チェックボックスは完了・未完了の二択、プルダウンは多段階のステータス管理、と使い分けるのがおすすめです。プルダウンの作り方は<a href="https://mashukabu.com/spreadsheet-pulldown/">スプレッドシートのプルダウン作り方</a>で解説しています。</p>



<h3 class="wp-block-heading"><span id="toc19">期限が近いタスクを自動で通知する</span></h3>



<p class="wp-block-paragraph">進捗管理が定着してくると、「期限が近いタスクを自動でリマインドしたい」という欲が出てきます。GAS（Google Apps Script）のトリガーを使えば、未完了タスクを毎朝チャットに自動通知することも可能です。</p>



<p class="wp-block-paragraph">発展的な自動化に興味がある方は<a href="https://mashukabu.com/gas-trigger-automation/">GASのトリガーでスプレッドシートの集計・通知を自動化する方法</a>を参考にしてください。</p>



<h2 class="wp-block-heading"><span id="toc20">よくあるトラブルと対処法</span></h2>



<h3 class="wp-block-heading"><span id="toc21">チェックボックスを消したい</span></h3>



<p class="wp-block-paragraph">チェックを外すだけならクリックすればOKです。チェックボックスそのものを削除したい場合は、セルを選択して Delete キーを押すか、[データ] > [データの入力規則] からルールを削除してください。</p>



<h3 class="wp-block-heading"><span id="toc22">COUNTIFの結果が0になる</span></h3>



<p class="wp-block-paragraph">完了数が正しく数えられない場合、条件の書き方を確認しましょう。チェックボックスの値は論理値なので、<code>COUNTIF(B2:B11, TRUE)</code> のようにクォートなしで指定します。</p>



<p class="wp-block-paragraph"><code>"TRUE"</code> と文字列で書くと、一致せずに0になることがあります。カスタム値を設定している場合は、その値（例: <code>"完了"</code>）を文字列で指定してください。</p>



<h3 class="wp-block-heading"><span id="toc23">チェックを入れても取り消し線がつかない</span></h3>



<p class="wp-block-paragraph">条件付き書式が反応しない場合、カスタム数式の書き方を見直します。<code>=$B2=TRUE</code> のように、列の前に <code>$</code> を付けているか確認してください。<code>$</code> がないと、行全体に正しく適用されません。</p>



<p class="wp-block-paragraph">また、設定した範囲とチェックボックスの位置がずれていないかもチェックしましょう。</p>



<h3 class="wp-block-heading"><span id="toc24">フィルターが他の人の画面にも反映される</span></h3>



<p class="wp-block-paragraph">[フィルタを作成] は全員に影響するため、共有シートでは注意が必要です。自分だけ絞り込みたいときは [フィルタ表示] を使ってください。フィルタ表示なら、ほかのメンバーの表示を変えずに済みます。</p>



<h2 class="wp-block-heading"><span id="toc25">よくある質問（FAQ）</span></h2>



<h3 class="wp-block-heading"><span id="toc26">Q. チェックボックスを一括で挿入できますか？</span></h3>



<p class="wp-block-paragraph">A. できます。チェックボックスを入れたいセル範囲をまとめて選択してから [挿入] > [チェックボックス] を選べば、選択した全セルに一度に挿入されます。あとから行が増えたときは、すでにチェックボックスがあるセルをコピーして貼り付けるのが速い。</p>



<h3 class="wp-block-heading"><span id="toc27">Q. チェックを入れた順番に並べ替えできますか？</span></h3>



<p class="wp-block-paragraph">A. できます。チェックボックス列を基準に並べ替えると、<code>TRUE</code>（完了）と <code>FALSE</code>（未完了）でグループ分けされます。[データ] > [範囲を並べ替え] で完了列を指定すれば、完了タスクと未完了タスクをまとめて表示できます。</p>



<h3 class="wp-block-heading"><span id="toc28">Q. スマホアプリでもチェックボックスは使えますか？</span></h3>



<p class="wp-block-paragraph">A. 使えます。iOS・Androidのスプレッドシートアプリでもチェックボックスをタップするだけでオン・オフを切り替えられます。外出先からタスクの進捗を更新したいときにも便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc29">Q. チェックの数を別シートで集計できますか？</span></h3>



<p class="wp-block-paragraph">A. できます。COUNTIFの範囲指定でシート名を付ければ、別シートのチェックボックスも集計できます。たとえば <code>=COUNTIF('タスク管理'!B2:B11, TRUE)</code> のように書けば、サマリー用のシートに完了数を表示できます。</p>



<h2 class="wp-block-heading"><span id="toc30">まとめ：チェックボックスで進捗管理シートを作る手順</span></h2>



<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>チェックボックス</td><td>挿入 > チェックボックス</td><td>完了・未完了を記録する</td></tr><tr><td>完了数</td><td>COUNTIF(範囲, TRUE)</td><td>チェックが入った数を数える</td></tr><tr><td>完了率</td><td>COUNTIF ÷ COUNTA</td><td>進み具合をパーセントで出す</td></tr><tr><td>取り消し線</td><td>条件付き書式（カスタム数式）</td><td>完了タスクを見やすくする</td></tr><tr><td>未完了の抽出</td><td>フィルター／FILTER関数</td><td>残りのタスクだけ表示する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">まずはチェックボックスの挿入と、COUNTIFでの完了数カウントから試してみてください。そこに完了率の計算と取り消し線を足していけば、実務でそのまま使える進捗管理シートが完成します。</p>



<p class="wp-block-paragraph">集計に使ったCOUNTIF・COUNTAの詳しい使い方は、<a href="https://mashukabu.com/spreadsheet-countif-function/">スプレッドシートのCOUNTIF関数の使い方</a>と<a href="https://mashukabu.com/spreadsheet-counta-function/">スプレッドシートのCOUNTA関数の使い方</a>で解説しています。</p>



<p class="wp-block-paragraph">見やすさをさらに高めたい方は<a href="https://mashukabu.com/spreadsheet-conditional-formatting/">スプレッドシートの条件付き書式の使い方</a>も、ステータスを多段階で管理したい方は<a href="https://mashukabu.com/spreadsheet-pulldown/">スプレッドシートのプルダウン作り方</a>もあわせてどうぞ。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-checkbox-progress/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのSUMIF・COUNTIFが0になる・集計されない原因と解決法9選</title>
		<link>https://mashukabu.com/sumif-countif-zero/</link>
					<comments>https://mashukabu.com/sumif-countif-zero/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 23 May 2026 08:10:09 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[COUNTIF]]></category>
		<category><![CDATA[SUMIF]]></category>
		<category><![CDATA[データクリーニング]]></category>
		<category><![CDATA[関数トラブル]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6975</guid>

					<description><![CDATA[スプレッドシートのSUMIFやCOUNTIFが0になる・正しく集計されない原因を症状別に9パターンで解説。数値の文字列化・空白混入・全角半角・比較演算子ミスに加え、日付の文字列化やIMPORTRANGE・ARRAYFORMULAとの相性まで、確認手順と修正方法を症状別早見表つきでまとめました。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">スプレッドシートでSUMIFやCOUNTIFを使ったのに「合計が0」「目視では5件あるのに2件しかカウントされない」――そんな経験はありませんか。数式自体は間違っていないように見えるのに結果がおかしい。原因が自分の入力か関数の仕様かわからず、<strong>無駄に時間を溶かしてしまいがち</strong>です。</p>



<p class="wp-block-paragraph">この記事では、スプレッドシートでSUMIF・COUNTIFが0になる・正しく集計されない原因を9パターンに整理しました。症状から原因を逆引きできる早見表も用意しています。上から順に読むよりも、自分の症状に近い見出しを探して使ってもらうのがオススメです。</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">スプレッドシートのSUMIF・COUNTIFが0になるときに最初に確認する3つのこと</a></li><li><a href="#toc2" tabindex="0">原因1〜3：数値が「文字列」になっているパターン</a><ol><li><a href="#toc3" tabindex="0">原因1：合計対象のセルが文字列になっている</a></li><li><a href="#toc4" tabindex="0">原因2：条件側に余分な空白や不可視文字が混ざっている</a></li><li><a href="#toc5" tabindex="0">原因3：全角と半角が混在している</a></li></ol></li><li><a href="#toc6" tabindex="0">原因4〜6：条件指定のミスで集計されないパターン</a><ol><li><a href="#toc7" tabindex="0">原因4：比較演算子の引用符を忘れている</a></li><li><a href="#toc8" tabindex="0">原因5：ワイルドカード（* ?）のエスケープ忘れ</a></li><li><a href="#toc9" tabindex="0">原因6：範囲サイズの不一致でズレが起きる</a></li></ol></li><li><a href="#toc10" tabindex="0">原因7〜9：スプレッドシート特有の落とし穴</a><ol><li><a href="#toc11" tabindex="0">原因7：日付が「文字列としての日付」になっている</a></li><li><a href="#toc12" tabindex="0">原因8：IMPORTRANGE経由のデータで0が返る</a></li><li><a href="#toc13" tabindex="0">原因9：ARRAYFORMULAと組み合わせて配列展開されない</a></li></ol></li><li><a href="#toc14" tabindex="0">症状別 早見表：原因の逆引きチートシート</a></li><li><a href="#toc15" tabindex="0">SUMIF・COUNTIFが0になるのを防ぐためのチェック習慣</a></li><li><a href="#toc16" tabindex="0">まとめ：症状から原因を逆引きして集計ミスをゼロに</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのSUMIF・COUNTIFが0になるときに最初に確認する3つのこと</span></h2>



<p class="wp-block-paragraph">原因を探す前に、まず「症状の切り分け」をしましょう。同じ「0になる」でも、原因の絞り込み方が大きく変わります。</p>



<ol class="wp-block-list"><li><strong>全件が0なのか、一部だけ0なのか</strong>：全件0なら数値の型や条件の書き方を、一部だけ0なら個別データの違いを疑います。</li><li><strong>データ側に問題があるのか、条件側に問題があるのか</strong>：<code>=COUNTA(範囲)</code> と <code>=COUNT(範囲)</code> の差を見て、文字列セルが混ざっていないか確認します。</li><li><strong>数式自体が動いているか</strong>：表示が数式のままなら <code>Ctrl+</code>` で数式表示モードを切り替えます。</li></ol>



<p class="wp-block-paragraph">まずはこの3点を確認するだけで、原因をかなり絞れます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>NOTE: COUNT は数値セルのみ、COUNTA は空白以外を全部カウントする関数です。「目視で10件あるのに COUNT が3件」なら、残り7件は数値ではなく文字列扱いになっています。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc2">原因1〜3：数値が「文字列」になっているパターン</span></h2>



<p class="wp-block-paragraph">最も頻出するのが、「数値に見えるけど実は文字列」というケースです。CSVを取り込んだとき・別システムからエクスポートしたとき・コピペで持ってきたときに発生しやすいです。</p>



<h3 class="wp-block-heading"><span id="toc3">原因1：合計対象のセルが文字列になっている</span></h3>



<p class="wp-block-paragraph">セルに <code>1500</code> と入っていても、表示位置が左寄せだったら要注意。スプレッドシートでは数値は右寄せがデフォルトです。文字列の数値は SUM でも合計されないので、SUMIF も当然0を返します。</p>



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/sumif-countif-zero/01_data_string-vs-number.png/">_images/sumif-countif-zero/01_data_string-vs-number.png</a></p>



<p class="wp-block-paragraph"><strong>確認方法</strong></p>



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



<p class="wp-block-paragraph">TRUE なら数値、FALSE なら文字列です。範囲全体を一気に確認したいときは、<code>=COUNT(B:B)</code> と <code>=COUNTA(B:B)</code> の値を比べてみてください。差分が文字列セルの数になります。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/05/02_result_isnumber-check.png" alt="02 result isnumber check" /></figure>



<p class="wp-block-paragraph"><strong>修正方法</strong></p>



<p class="wp-block-paragraph">1セルずつなら <code>=VALUE(A2)</code> で数値に変換します。範囲を一括変換するなら別の列に以下のように入力します。</p>



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



<p class="wp-block-paragraph">シート全体を一気に直したいときは、メニューの「データ」→「データクリーンアップ」→「数値に変換」も使えます。</p>



<h3 class="wp-block-heading"><span id="toc4">原因2：条件側に余分な空白や不可視文字が混ざっている</span></h3>



<p class="wp-block-paragraph">「りんご」を条件にしたつもりが、データ側のセルが「りんご 」（末尾に半角スペース）だと一致しません。CSVや他システムからの取り込み時に発生しがちです。よく混入するのは、半角スペース・改行コード・NBSP（ノーブレークスペース、<code>CHAR(160)</code>）の3種類です。</p>



<p class="wp-block-paragraph"><strong>確認方法</strong></p>



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



<p class="wp-block-paragraph">表示上の文字数より大きければ、見えない文字が混ざっています。完全一致を直接確認したいときは <code>=A2="りんご"</code> で TRUE が返るかチェックします。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/05/03_result_len-hidden-chars.png" alt="03 result len hidden chars" /></figure>



<p class="wp-block-paragraph"><strong>修正方法</strong></p>



<figure class="wp-block-table"><table><thead><tr><th>状況</th><th>関数</th></tr></thead><tbody><tr><td>前後・連続する半角スペースを除去</td><td><code>=TRIM(A2)</code></td></tr><tr><td>NBSP（Chr(160)）を除去</td><td><code>=SUBSTITUTE(A2, CHAR(160), "")</code></td></tr><tr><td>改行・タブなどの制御文字を除去</td><td><code>=CLEAN(A2)</code></td></tr></tbody></table></figure>



<p class="wp-block-paragraph">3つを組み合わせる場合は次のようにネストしてください。一発で正規化できます。</p>



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



<h3 class="wp-block-heading"><span id="toc5">原因3：全角と半角が混在している</span></h3>



<p class="wp-block-paragraph">「Apple」と「Ａｐｐｌｅ」、「100」と「１００」は別物として扱われます。データ側が全角で条件側が半角だったら、当然マッチしません。</p>



<p class="wp-block-paragraph"><strong>修正方法</strong></p>



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



<p class="wp-block-paragraph">全角を半角に統一する場合は <code>ASC</code>、逆に半角を全角にしたいときは <code>JIS</code> を使います。比較用の作業列を作り、そこに正規化した値を入れて SUMIF/COUNTIF の対象範囲にすると確実です。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>NOTE: 全角半角の不一致は ASC/JIS で対応。前後の空白は TRIM。混同しないように気をつけましょう。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc6">原因4〜6：条件指定のミスで集計されないパターン</span></h2>



<p class="wp-block-paragraph">数値も文字も正しいのに0になるときは、条件の書き方を見直しましょう。</p>



<h3 class="wp-block-heading"><span id="toc7">原因4：比較演算子の引用符を忘れている</span></h3>



<p class="wp-block-paragraph"><code>>100</code> のような比較演算子は、<strong>必ずダブルクオートで囲む</strong> 必要があります。</p>



<pre class="wp-block-code"><code>=SUMIF(A:A, &gt;100, B:B)</code></pre>



<p class="wp-block-paragraph">これは誤り。スプレッドシートはエラーは出さないものの、条件として正しく認識されず0や予期しない値を返します。正しくは以下です。</p>



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/sumif-countif-zero/04_result_operator-quote-comparison.png/">_images/sumif-countif-zero/04_result_operator-quote-comparison.png</a></p>



<pre class="wp-block-code"><code>=SUMIF(A:A, &quot;&gt;100&quot;, B:B)</code></pre>



<p class="wp-block-paragraph">セル参照と組み合わせる場合は <code>&</code> で連結します。</p>



<pre class="wp-block-code"><code>=SUMIF(A:A, &quot;&gt;&quot;&amp;C1, B:B)</code></pre>



<h3 class="wp-block-heading"><span id="toc8">原因5：ワイルドカード（* ?）のエスケープ忘れ</span></h3>



<p class="wp-block-paragraph">商品コードに <code><em></code> や <code>?</code> が含まれる場合、そのままだとワイルドカードとして解釈されます。たとえば商品コード <code>ABC</em>123</code> を COUNTIF で数えたいのに、すべての <code>ABC</code> で始まる商品にマッチしてしまうので注意しましょう。</p>



<p class="wp-block-paragraph">リテラル文字として扱いたいときは、チルダ（<code>~</code>）でエスケープします。</p>



<pre class="wp-block-code"><code>=COUNTIF(A:A, &quot;ABC~*123&quot;)</code></pre>



<p class="wp-block-paragraph">逆に「ABCで始まる全件」を数えたいときはエスケープ不要で <code>"ABC*"</code> です。</p>



<h3 class="wp-block-heading"><span id="toc9">原因6：範囲サイズの不一致でズレが起きる</span></h3>



<p class="wp-block-paragraph">SUMIFは <code>SUMIF(範囲, 条件, 合計範囲)</code> の3引数です。<strong>範囲と合計範囲のサイズが違うと、合計範囲を範囲と同じサイズに暗黙的に揃えてしまう</strong> ため、想定外のセルが集計対象になり、結果が0や中途半端な値になります。</p>



<pre class="wp-block-code"><code>=SUMIF(A2:A100, &quot;&gt;100&quot;, B2:B50)</code></pre>



<p class="wp-block-paragraph">これは合計範囲が範囲より短いため、実質 <code>B2:B100</code> として扱われ、空白や別データが混ざる原因になります。両方とも同じ行範囲、または両方とも列全体（<code>A:A</code>, <code>B:B</code>）で揃えておきましょう。</p>



<h2 class="wp-block-heading"><span id="toc10">原因7〜9：スプレッドシート特有の落とし穴</span></h2>



<p class="wp-block-paragraph">ここからは Excel と挙動が少し違う、スプレッドシートで特に気をつけたいパターンです。</p>



<h3 class="wp-block-heading"><span id="toc11">原因7：日付が「文字列としての日付」になっている</span></h3>



<p class="wp-block-paragraph">セルに <code>2026/05/14</code> と入力しても、表示形式によっては文字列扱いになっているケースがあります。SUMIF/COUNTIF で日付を条件にするには、データ側がシリアル値（日付型）である必要があります。</p>



<p class="wp-block-paragraph"><strong>確認方法</strong></p>



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



<p class="wp-block-paragraph">日付セルに対して FALSE が返ったら文字列です。<code>">="&DATE(2026,1,1)</code> のような比較条件にもマッチしません。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/08/05_result_date-isnumber-check.png" alt="05 result date isnumber check" /></figure>



<p class="wp-block-paragraph"><strong>修正方法</strong></p>



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



<p class="wp-block-paragraph">日付文字列をシリアル値に変換します。または「データ」→「列を分割」「形式を変更」→「日付」でも変換可能です。</p>



<h3 class="wp-block-heading"><span id="toc12">原因8：IMPORTRANGE経由のデータで0が返る</span></h3>



<p class="wp-block-paragraph">IMPORTRANGE で別のスプレッドシートから値を取り込んでいる場合、初回読み込みやリロード時に「Loading&#8230;」状態になります。値がまだ読み込まれていないタイミングで SUMIF/COUNTIF が評価されると、一時的に0や空が返ることがあります。</p>



<p class="wp-block-paragraph">また、IMPORTRANGE の結果を直接 SUMIF の範囲に指定しても、配列としてうまく展開されません。</p>



<p class="wp-block-paragraph"><strong>対処法</strong></p>



<ul class="wp-block-list"><li>IMPORTRANGE の結果を一度別のシートに値貼り付けしてから SUMIF/COUNTIF で参照する</li><li>IFERROR でラップして「読み込み中」と表示する: <code>=IFERROR(SUMIF(IMPORTRANGE(...), "条件", IMPORTRANGE(...)), "読み込み中")</code></li><li>数分待ってリロードし、Loading の解消を待つ</li></ul>



<h3 class="wp-block-heading"><span id="toc13">原因9：ARRAYFORMULAと組み合わせて配列展開されない</span></h3>



<p class="wp-block-paragraph">「複数条件の合計を一気に出したい」と思って ARRAYFORMULA で SUMIF をラップしても、意図通り動かないことが多いです。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(SUMIF(A:A, C2:C10, B:B))</code></pre>



<p class="wp-block-paragraph">これは C2〜C10 の条件ごとに合計を出してくれそうに見えますが、実際には先頭セルだけ評価されたりエラーになったりします。配列対応で条件付き集計を一括で行いたい場合は、<strong>SUMPRODUCT や QUERY のほうが安定して動きます</strong>。</p>



<pre class="wp-block-code"><code>=SUMPRODUCT((A2:A100=C2)*(B2:B100))</code></pre>



<p class="wp-block-paragraph">複数条件なら SUMIFS、もっと複雑な集計なら QUERY を検討しましょう。詳しくは <a href="https://mashukabu.com/spreadsheet-sumifs-function/">スプレッドシートのSUMIFS関数の使い方</a> も参考にしてください。</p>



<h2 class="wp-block-heading"><span id="toc14">症状別 早見表：原因の逆引きチートシート</span></h2>



<p class="wp-block-paragraph">「どの原因から確認したらいいかわからない」というときは、症状から逆引きしてみてください。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>疑うべき原因</th></tr></thead><tbody><tr><td>合計・カウントが全件0</td><td>原因1（文字列化数値）/ 原因2（空白混入）/ 原因3（全角半角）/ 原因4（条件記法ミス）</td></tr><tr><td>一部だけ集計されない</td><td>原因2（特定セルだけ空白）/ 原因3（一部だけ全角）/ 原因7（一部だけ文字列日付）</td></tr><tr><td>数値は出るが期待値とズレる</td><td>原因6（範囲サイズ不一致）</td></tr><tr><td>日付条件で0になる</td><td>原因7（日付が文字列）/ 原因4（比較演算子の引用符忘れ）</td></tr><tr><td>商品コードでヒットしすぎる</td><td>原因5（ワイルドカードのエスケープ忘れ）</td></tr><tr><td>IMPORTRANGE経由で0が出る</td><td>原因8（読み込み遅延・配列扱い）</td></tr><tr><td>ARRAYFORMULAで動かない</td><td>原因9（配列対応関数への置換）</td></tr><tr><td>数式がそのまま表示される</td><td>数式表示モード（Ctrl+`）</td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc15">SUMIF・COUNTIFが0になるのを防ぐためのチェック習慣</span></h2>



<p class="wp-block-paragraph">一度ハマると地味に時間を食うこの問題、未然に防ぐためのちょっとした習慣を紹介します。</p>



<ul class="wp-block-list"><li><strong>データ取り込み直後に <code>=COUNT(範囲)</code> と <code>=COUNTA(範囲)</code> を比べる</strong>：差があれば、その分だけ文字列セルが混ざっています。</li><li><strong>条件側の文字列をいったん <code>=A1="条件値"</code> で完全一致確認する</strong>：空白や全角半角の罠を早期発見できます。</li><li><strong>比較演算子はダブルクオートで囲むのを習慣化</strong>：<code>></code> <code><</code> <code>>=</code> <code><=</code> <code><></code> を使うときは反射的に <code>"</code> を打つ癖をつけます。</li><li><strong>IMPORTRANGE経由のデータは別シートに一度貼り付けてから集計</strong>：読み込み遅延と配列の問題を一括回避できます。</li><li><strong>集計範囲のサイズは必ず合わせる</strong>：範囲と合計範囲は同じ行数、または両方とも列全体で揃えます。</li></ul>



<p class="wp-block-paragraph">関連する関数の基本的な使い方は、以下の記事で詳しく解説しています。</p>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/spreadsheet-sumif-function/">スプレッドシートのSUMIF関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-countif-function/">スプレッドシートのCOUNTIF関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-sumifs-function/">スプレッドシートのSUMIFS関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-countifs-function/">スプレッドシートのCOUNTIFS関数の使い方</a></li></ul>



<h2 class="wp-block-heading"><span id="toc16">まとめ：症状から原因を逆引きして集計ミスをゼロに</span></h2>



<p class="wp-block-paragraph">スプレッドシートでSUMIF・COUNTIFが0になる原因と対処法を9パターン紹介しました。</p>



<ul class="wp-block-list"><li>原因1〜3：数値が文字列扱いになっている。<code>VALUE</code>、<code>TRIM</code>、<code>ASC</code> で正規化する</li><li>原因4〜6：条件の引用符・ワイルドカードエスケープ・範囲サイズの揃え方を見直す</li><li>原因7〜9：スプレッドシート特有の日付認識・IMPORTRANGE遅延・ARRAYFORMULA非対応の落とし穴に注意</li></ul>



<p class="wp-block-paragraph">「合計が0」「カウントが合わない」と気づいた瞬間に、まず <code>=ISNUMBER</code> と <code>=LEN</code> で型と長さを確認する習慣をつけると、原因の特定がぐっと早くなります。今回の早見表を手元に置いて、似た症状に出会ったときに逆引きしてみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/sumif-countif-zero/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのTRIM関数の使い方｜余分なスペースを一括削除</title>
		<link>https://mashukabu.com/spreadsheet-trim-function/</link>
					<comments>https://mashukabu.com/spreadsheet-trim-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 19 Mar 2026 10:41:02 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[COUNTIF]]></category>
		<category><![CDATA[SUBSTITUTE関数]]></category>
		<category><![CDATA[TRIM関数]]></category>
		<category><![CDATA[VLOOKUP]]></category>
		<category><![CDATA[スペース削除]]></category>
		<category><![CDATA[文字列操作]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4382</guid>

					<description><![CDATA[スプレッドシートのTRIM関数は、コピペデータの余分なスペースを自動削除する関数です。VLOOKUPが一致しない3大スペース原因を比較表で解説し、LEN診断コード・COUNTIF+TRIM応用・全角スペース対処法まで網羅。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">外部システムからコピペしたデータで、VLOOKUPが「なぜか一致しない」経験はありませんか？</p>



<p class="wp-block-paragraph">目視では同じ文字列なのに#N/Aが返る。COUNTIFの集計結果も合わない。原因を調べると、先頭や末尾に見えないスペースが紛れ込んでいた――そんなトラブル、意外と多いですよね。</p>



<p class="wp-block-paragraph">そんなときに使うのが<strong>TRIM関数</strong>です。余分なスペースを自動で削除してくれます。コピペデータの整形には欠かせない関数です。</p>



<p class="wp-block-paragraph">この記事では、スプレッドシートのTRIM関数の基本から、VLOOKUP・COUNTIFとの組み合わせ、全角スペースへの対処法まで紹介します。</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">スプレッドシートのTRIM関数とは？余分なスペースを自動削除する関数</a><ol><li><a href="#toc2" tabindex="0">TRIM関数の構文と引数</a></li><li><a href="#toc3" tabindex="0">削除されるスペース・されないスペースの違い</a></li></ol></li><li><a href="#toc4" tabindex="0">基本の使い方：前後・連続スペースをまとめて消す</a><ol><li><a href="#toc5" tabindex="0">先頭・末尾スペースの削除（コピペデータの定番整形）</a></li><li><a href="#toc6" tabindex="0">単語間の連続スペースを1つに圧縮する</a></li></ol></li><li><a href="#toc7" tabindex="0">VLOOKUPが一致しない？スペースが原因の3パターン</a><ol><li><a href="#toc8" tabindex="0">3大スペース原因の比較表</a></li><li><a href="#toc9" tabindex="0">LEN関数でスペースを診断するコード</a></li><li><a href="#toc10" tabindex="0">VLOOKUP+TRIMのネストで検索値を自動整形</a></li></ol></li><li><a href="#toc11" tabindex="0">COUNTIF+TRIM応用｜スペース混じりのデータを正確にカウント</a></li><li><a href="#toc12" tabindex="0">全角スペースはTRIMで消えない｜SUBSTITUTE組み合わせ技</a><ol><li><a href="#toc13" tabindex="0">SUBSTITUTE+TRIMで全角・半角を一括処理</a></li><li><a href="#toc14" tabindex="0">REGEXREPLACEでまとめてクリーニングする方法</a></li></ol></li><li><a href="#toc15" tabindex="0">よくある質問（TRIM関数）</a></li><li><a href="#toc16" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのTRIM関数とは？余分なスペースを自動削除する関数</span></h2>



<p class="wp-block-paragraph">TRIM関数（読み方：トリム関数）は、<strong>テキストから余分なスペースを削除する関数</strong>です。</p>



<p class="wp-block-paragraph">名前は英語の「trim（刈り込む・整える）」が語源です。文字列の前後についたスペースを刈り取るイメージですね。</p>



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



<ul class="wp-block-list"><li>先頭のスペースを削除する</li><li>末尾のスペースを削除する</li><li>単語間の連続スペースを1つに圧縮する</li></ul>



<p class="wp-block-paragraph">Googleスプレッドシートには「データ → データクリーンアップ → 空白文字を削除」というメニューもあります。ただし、数式で処理するほうが再現性が高く、大量データにも対応しやすいですよ。</p>



<h3 class="wp-block-heading"><span id="toc2">TRIM関数の構文と引数</span></h3>



<pre class="wp-block-code"><code>=TRIM(テキスト)</code></pre>



<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>テキスト</td><td>必須</td><td>スペースを削除したい文字列やセル参照</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数はひとつだけ。シンプルな構文なので、すぐに使い始められます。</p>



<h3 class="wp-block-heading"><span id="toc3">削除されるスペース・されないスペースの違い</span></h3>



<p class="wp-block-paragraph">TRIM関数が削除するのは<strong>ASCIIコード32の半角スペースだけ</strong>です。ここが重要なポイントです。</p>



<p class="wp-block-paragraph">全角スペースやWebコピペで混入するCHAR(160)は削除できません。<a href="https://mashukabu.com/excel-function-howto-use-trim/">ExcelのTRIM関数</a>は全角スペースも削除しますが、Googleスプレッドシートでは残ったままになります。</p>



<p class="wp-block-paragraph">削除できる文字・できない文字を表にまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>スペース種別</th><th>TRIM</th><th>SUBSTITUTE</th><th>CLEAN</th><th>主な発生源</th></tr></thead><tbody><tr><td>半角スペース（前後・連続）</td><td>削除できる</td><td>全削除可</td><td>不可</td><td>CSVインポート・手入力ミス</td></tr><tr><td>全角スペース</td><td>削除できない</td><td>削除可</td><td>不可</td><td>日本語入力切り替え時のミス</td></tr><tr><td>CHAR(160)</td><td>削除できない</td><td>CHAR(160)指定で可</td><td>不可</td><td>Webコピペ・HTMLデータ</td></tr><tr><td>改行・制御文字</td><td>不可</td><td>一部可</td><td>削除可</td><td>Excelコピペ・APIデータ</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">CLEAN関数はASCII 0〜31の制御文字（改行やタブなど）を削除する関数です。TRIM関数と組み合わせれば、制御文字とスペースの両方を一度に除去できます。</p>



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



<p class="wp-block-paragraph">全角スペースやCHAR(160)への対処法は、後半のセクションで詳しく解説しますね。</p>



<h2 class="wp-block-heading"><span id="toc4">基本の使い方：前後・連続スペースをまとめて消す</span></h2>



<h3 class="wp-block-heading"><span id="toc5">先頭・末尾スペースの削除（コピペデータの定番整形）</span></h3>



<p class="wp-block-paragraph">CSVや外部システムからコピペしたデータには、先頭や末尾にスペースが入りがちです。TRIM関数で一発で取り除けます。</p>



<p class="wp-block-paragraph">A1に「 東京都 」（前後にスペース付き）が入っているとします。</p>



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



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



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/02_formula_trim-basic.png" alt="02 formula trim basic" /></figure>



<p class="wp-block-paragraph">結果は「東京都」です。前後のスペースがきれいに消えました。</p>



<p class="wp-block-paragraph">セル1つだけでなく、列全体に適用するのが実務的な使い方です。B1に数式を入れて下方向にコピーすれば、一括で整形できますよ。</p>



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



<h3 class="wp-block-heading"><span id="toc6">単語間の連続スペースを1つに圧縮する</span></h3>



<p class="wp-block-paragraph">TRIM関数は前後のスペースだけでなく、単語の間にある連続スペースも整理してくれます。</p>



<p class="wp-block-paragraph">A1に「田中   太郎」（スペース3つ）が入っているとします。</p>



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



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/04_formula_trim-words.png" alt="04 formula trim words" /></figure>



<p class="wp-block-paragraph">結果は「田中 太郎」です。3つあったスペースが1つに圧縮されました。</p>



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/spreadsheet-trim-function/05_result_trim-words.png/">_images/spreadsheet-trim-function/05_result_trim-words.png</a></p>



<p class="wp-block-paragraph">先頭・末尾の削除と連続スペースの圧縮。この2つがTRIM関数の基本動作です。</p>



<h2 class="wp-block-heading"><span id="toc7">VLOOKUPが一致しない？スペースが原因の3パターン</span></h2>



<p class="wp-block-paragraph">VLOOKUPで#N/Aが返るとき、まず疑いたいのがスペースの混入です。目視では同じ文字列でも、スペースが1つ入るだけで「別の文字列」と判定されます。</p>



<h3 class="wp-block-heading"><span id="toc8">3大スペース原因の比較表</span></h3>



<p class="wp-block-paragraph">VLOOKUPが一致しない原因になるスペースは、大きく3種類あります。</p>



<figure class="wp-block-table"><table><thead><tr><th>原因</th><th>見た目</th><th>発生源</th><th>対処法</th></tr></thead><tbody><tr><td>半角スペース（前後）</td><td>目視でわかりにくい</td><td>CSV・手入力</td><td>TRIM関数</td></tr><tr><td>全角スペース</td><td>目視でわかりにくい</td><td>日本語入力の切り替えミス</td><td><a href="https://mashukabu.com/spreadsheet-substitute-function/">SUBSTITUTE関数</a>で半角に変換してからTRIM</td></tr><tr><td>CHAR(160)</td><td>完全に見えない</td><td>Webページのコピペ</td><td>SUBSTITUTEでCHAR(160)を指定して置換</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">どのスペースも目視では見つけにくいのがやっかいです。次に紹介するLEN関数の診断コードで、スペースが入っているかどうかをチェックしてみてください。</p>



<h3 class="wp-block-heading"><span id="toc9">LEN関数でスペースを診断するコード</span></h3>



<p class="wp-block-paragraph">スペースが混入しているかどうかは、LEN関数で簡単に判定できます。</p>



<p class="wp-block-paragraph">LEN関数は文字数を数える関数です。元の文字列とTRIM後の文字列の文字数を比較すれば、スペースが何文字あるか一目瞭然です。</p>



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



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/spreadsheet-trim-function/06_formula_len-diagnosis.png/">_images/spreadsheet-trim-function/06_formula_len-diagnosis.png</a></p>



<p class="wp-block-paragraph">結果が「0」なら余分なスペースはありません。「0」以外ならスペースが混入しています。</p>



<p class="wp-block-paragraph">たとえばA1が「 東京都 」（前後にスペース各1つ）なら、LEN(A1)は5、LEN(TRIM(A1))は3です。差は「2」。スペースが2文字入っているとわかります。</p>



<p class="wp-block-paragraph">この診断コードを補助列に入れておくと、「どのセルにスペースが入っているか」をすぐに特定できますよ。</p>



<h3 class="wp-block-heading"><span id="toc10">VLOOKUP+TRIMのネストで検索値を自動整形</span></h3>



<p class="wp-block-paragraph">VLOOKUPの検索値にTRIM関数をネスト（入れ子）すれば、スペースが入っていても正しくマッチします。</p>



<pre class="wp-block-code"><code>=VLOOKUP(TRIM(A2), D:E, 2, FALSE)</code></pre>



<p class="wp-block-paragraph">A2に「 東京都」のようにスペース付きの値が入っていても、TRIM関数が先にスペースを削除します。そのあとでVLOOKUPが検索するので、#N/Aを回避できます。</p>



<p class="wp-block-paragraph">検索範囲のほう（D列）にもスペースが入っている場合は、範囲側にもTRIM済みの補助列を用意しましょう。検索値と検索範囲の両方を整形するのが確実です。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>VLOOKUPの検索値にTRIMをネストするのは、外部データを扱うときの定番テクニックです。「とりあえずTRIM」の習慣をつけておくと、スペース起因のトラブルを未然に防げます。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc11">COUNTIF+TRIM応用｜スペース混じりのデータを正確にカウント</span></h2>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-countif-function/">COUNTIF関数の使い方</a>でデータを集計するとき、スペース混じりだと正しくカウントされません。「東京都」と「東京都 」は別の文字列として扱われるからです。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-counta-function/">COUNTA関数の使い方</a>でセル数を数える場面でも、スペースだけのセルが「データあり」と判定されてしまうことがあります。</p>



<p class="wp-block-paragraph">この問題はTRIM済みの補助列を作ることで解決できます。</p>



<p class="wp-block-paragraph"><strong>手順：</strong></p>



<ol class="wp-block-list"><li>元データの隣の列にTRIM関数を入れる</li><li>TRIM済みの列に対してCOUNTIFで集計する</li></ol>



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



<p class="wp-block-paragraph">B列にこの数式を入れて下方向にコピーします。これでスペースなしのデータ列ができます。</p>



<pre class="wp-block-code"><code>=COUNTIF(B2:B100, &quot;東京都&quot;)</code></pre>



<p class="wp-block-paragraph">TRIM済みのB列に対してCOUNTIFを使えば、スペースの有無に関係なく正確にカウントできます。</p>



<p class="wp-block-paragraph">元データを直接上書きしたい場合は、TRIM済みの列をコピーして「値のみ貼り付け」で元の列に戻しましょう。数式が消えて、整形済みのテキストだけが残ります。</p>



<h2 class="wp-block-heading"><span id="toc12">全角スペースはTRIMで消えない｜SUBSTITUTE組み合わせ技</span></h2>



<p class="wp-block-paragraph">TRIM関数が削除するのは半角スペースだけです。全角スペースは削除できません。日本語データでは全角スペースが混入しやすいので、別の対処が必要です。</p>



<h3 class="wp-block-heading"><span id="toc13">SUBSTITUTE+TRIMで全角・半角を一括処理</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-substitute-function/">SUBSTITUTE関数</a>は、指定した文字列を別の文字列に置き換える関数です。全角スペースを半角スペースに変換してから、TRIM関数で整形する2段構えが定番です。</p>



<pre class="wp-block-code"><code>=TRIM(SUBSTITUTE(A1,&quot;　&quot;,&quot; &quot;))</code></pre>



<p class="wp-block-paragraph">数式の中の &#8220;　&#8221; は全角スペース、&#8221; &#8221; は半角スペースです。SUBSTITUTE関数で全角→半角に変換し、そのあとTRIM関数で前後・連続スペースを削除します。</p>



<p class="wp-block-paragraph">CHAR(160)（ノーブレークスペース。Webページのコピペで混入する見えないスペース）も同時に処理したい場合は、SUBSTITUTEをもう1段ネストします。</p>



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



<p class="wp-block-paragraph">ちょっと長く見えますが、やっていることはシンプルです。内側のSUBSTITUTEで全角スペースを半角に変換し、外側のSUBSTITUTEでCHAR(160)を半角に変換。最後にTRIMで整形しています。</p>



<h3 class="wp-block-heading"><span id="toc14">REGEXREPLACEでまとめてクリーニングする方法</span></h3>



<p class="wp-block-paragraph">Googleスプレッドシートには、正規表現で文字列を置換するREGEXREPLACE関数があります。複数種類のスペースを1つの数式でまとめて処理できます。</p>



<pre class="wp-block-code"><code>=TRIM(REGEXREPLACE(A1,&quot;[s　]+&quot;,&quot; &quot;))</code></pre>



<p class="wp-block-paragraph"><code>[s　]+</code> は「半角スペース・タブ・改行・全角スペースが1文字以上連続したもの」を意味する正規表現パターンです。これらをすべて半角スペース1つに置き換えてから、TRIMで仕上げます。</p>



<p class="wp-block-paragraph">正規表現が苦手な方はSUBSTITUTE版で十分です。ただ、いろいろな種類のスペースが混在するデータを扱うなら、REGEXREPLACE版のほうがスッキリ書けますよ。</p>



<h2 class="wp-block-heading"><span id="toc15">よくある質問（TRIM関数）</span></h2>



<p class="wp-block-paragraph"><strong>Q. TRIM関数で元データは変わりますか？</strong></p>



<p class="wp-block-paragraph">変わりません。TRIM関数は別のセルに結果を返す関数です。元データを上書きしたい場合は、TRIM済みの結果をコピーして「値のみ貼り付け」で戻してください。</p>



<p class="wp-block-paragraph"><strong>Q. ExcelのTRIM関数との違いはありますか？</strong></p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-trim/">ExcelのTRIM関数の使い方</a>は全角スペースも削除します。一方、GoogleスプレッドシートのTRIM関数は半角スペースしか削除しません。Excelファイルをスプレッドシートで開いたとき、全角スペースの処理結果が変わる可能性があるので注意してください。</p>



<p class="wp-block-paragraph"><strong>Q. TRIM関数で改行は削除できますか？</strong></p>



<p class="wp-block-paragraph">できません。改行やタブなどの制御文字にはCLEAN関数を使います。<code>=TRIM(CLEAN(A1))</code> のように組み合わせれば、制御文字とスペースの両方を除去できます。</p>



<p class="wp-block-paragraph"><strong>Q. スペースをすべて削除したい場合は？</strong></p>



<p class="wp-block-paragraph">TRIM関数は単語間のスペースを1つ残します。すべてのスペースを完全に削除したい場合は、SUBSTITUTE関数で半角スペースを空文字に置換してください。<code>=SUBSTITUTE(A1," ","")</code> ですべての半角スペースが消えます。</p>



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



<p class="wp-block-paragraph">TRIM関数は、コピペデータの余分なスペースを削除するシンプルな関数です。</p>



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



<ul class="wp-block-list"><li>構文は <code>=TRIM(テキスト)</code> の1引数だけ。前後のスペース削除と連続スペースの圧縮ができる</li><li>VLOOKUPの#N/Aエラーはスペース混入が原因のことが多い。検索値に <code>TRIM()</code> をネストするのが定番の対処法</li><li><code>=LEN(A1)-LEN(TRIM(A1))</code> でスペースの混入を素早く診断できる</li><li><a href="https://mashukabu.com/spreadsheet-countif-function/">COUNTIF関数</a>でスペース混じりデータを集計するときは、TRIM済み補助列を作る</li><li>全角スペースはTRIMでは消えない。<a href="https://mashukabu.com/spreadsheet-substitute-function/">SUBSTITUTE関数</a>で半角に変換してからTRIMで仕上げる</li><li>CHAR(160)やWebコピペの見えないスペースもSUBSTITUTE+TRIMで対処できる</li></ul>



<p class="wp-block-paragraph">まずは <code>=LEN(A1)-LEN(TRIM(A1))</code> で、手元のデータにスペースが潜んでいないかチェックしてみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-trim-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのCOUNTIF関数の使い方｜条件付きカウント</title>
		<link>https://mashukabu.com/spreadsheet-countif-function/</link>
					<comments>https://mashukabu.com/spreadsheet-countif-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Wed, 18 Mar 2026 11:24:57 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[COUNTIF]]></category>
		<category><![CDATA[カウント関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[ワイルドカード]]></category>
		<category><![CDATA[条件付きカウント]]></category>
		<category><![CDATA[重複チェック]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4059</guid>

					<description><![CDATA[GoogleスプレッドシートのCOUNTIF関数の使い方を初心者向けに解説。条件に合うデータの個数を数える関数で、比較演算子やワイルドカードなど条件指定パターンを網羅。COUNTIFS関数との違いも紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「&#8221;出席&#8221;と入力されたセルが何個あるか数えたい」。そんな場面、仕事でよくありますよね。</p>



<p class="wp-block-paragraph">目視で1つずつ数えるのは大変ですし、数え間違いも起きがちです。</p>



<p class="wp-block-paragraph">そんなときに使えるのがCOUNTIF関数です。条件を1つ指定するだけで、一致するセルの個数を一瞬で返してくれます。</p>



<p class="wp-block-paragraph">この記事では基本の書き方から条件指定のバリエーション、実務での活用パターンまで紹介します。</p>




  <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">COUNTIF関数とは？</a></li><li><a href="#toc2" tabindex="0">COUNTIF関数の書き方（構文と引数）</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">COUNTIF関数の基本的な使い方</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">COUNTIF関数の条件指定パターン</a><ol><li><a href="#toc10" tabindex="0">比較演算子を使う</a></li><li><a href="#toc11" tabindex="0">ワイルドカードを使う</a></li><li><a href="#toc12" tabindex="0">空白以外・空白セルを数える</a></li><li><a href="#toc13" tabindex="0">日付を条件にする</a></li></ol></li><li><a href="#toc14" tabindex="0">実務でのCOUNTIF関数活用例</a><ol><li><a href="#toc15" tabindex="0">重複データをチェックする</a></li><li><a href="#toc16" tabindex="0">条件付き書式で重複を色付けする</a></li><li><a href="#toc17" tabindex="0">出欠や回答の集計</a></li><li><a href="#toc18" tabindex="0">ステータス別の件数管理</a></li><li><a href="#toc19" tabindex="0">合格者数・不合格者数を数える</a></li></ol></li><li><a href="#toc20" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc21" tabindex="0">条件の書き方でよくある間違い</a></li><li><a href="#toc22" tabindex="0">前後のスペースに注意</a></li><li><a href="#toc23" tabindex="0">数値が文字列として保存されている場合</a></li></ol></li><li><a href="#toc24" tabindex="0">似た関数との違い・使い分け</a><ol><li><a href="#toc25" tabindex="0">COUNTIFとCOUNTIFSの違い</a></li><li><a href="#toc26" tabindex="0">COUNTIFとCOUNTの違い</a></li><li><a href="#toc27" tabindex="0">COUNTIFとSUMIFの違い</a></li></ol></li><li><a href="#toc28" tabindex="0">Excelとの違い</a></li><li><a href="#toc29" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">COUNTIF関数（読み方: カウントイフ関数）は、指定した範囲内で<strong>条件に一致するセルの個数</strong>を返す関数です。</p>



<p class="wp-block-paragraph">名前はCOUNT（数える）+IF（もし）が由来です。「出席と入力されたセルは何個？」「80点以上のセルは何個？」。こうした質問に、数式1つで答えてくれます。</p>



<p class="wp-block-paragraph">ポイントは<strong>条件を1つだけ指定できる</strong>という点です。文字列の一致、数値の比較、ワイルドカードなど条件の幅が広いのも特長ですね。</p>



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



<ul class="wp-block-list"><li>特定の文字列が入力されたセルを数える</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>COUNTIF関数はGoogleスプレッドシートの全バージョンで使えます。Excelとの互換性も完全なので、ファイルのやり取りでも安心です。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=COUNTIF(範囲, 条件)</code></pre>



<p class="wp-block-paragraph">カッコの中に「どこを調べるか」と「何を数えるか」の2つを入れます。</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>検索する対象のセル範囲（例: A1:A100）</td></tr><tr><td>条件</td><td>必須</td><td>数える基準（文字列・数値・比較式・ワイルドカード等）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は2つだけです。シンプルですよね。「範囲」の中で「条件」に合うセルが何個あるかを返します。</p>



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



<h3 class="wp-block-heading"><span id="toc6">文字列に一致するセルを数える</span></h3>



<p class="wp-block-paragraph">もっともシンプルな使い方です。A列に果物の名前が入っているとします。</p>



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



<pre class="wp-block-code"><code>=COUNTIF(A2:A10, &quot;りんご&quot;)</code></pre>



<p class="wp-block-paragraph">A2からA10の範囲で「りんご」と入力されたセルの個数を返します。「りんご」が3個あれば結果は「3」です。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/02_formula_countif-basic.png" alt="02 formula countif basic" /></figure>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/03_result_countif-basic.png" alt="03 result countif basic" /></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>=COUNTIF(A2:A10, D1)</code></pre>



<p class="wp-block-paragraph">D1に「みかん」と入力されていれば、「みかん」のセル数を返します。条件をセル参照にすると、値を変えるだけで数え直せるので便利です。</p>



<h3 class="wp-block-heading"><span id="toc8">数値に一致するセルを数える</span></h3>



<p class="wp-block-paragraph">数値を条件にする場合も同じ書き方です。</p>



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



<p class="wp-block-paragraph">B2からB10の範囲で「100」と入力されたセルの個数を返します。数値の場合はダブルクォーテーションなしでも動きます。</p>



<h2 class="wp-block-heading"><span id="toc9">COUNTIF関数の条件指定パターン</span></h2>



<p class="wp-block-paragraph">COUNTIF関数の真価は、条件の書き方が多彩なことです。よく使うパターンを一覧にまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>条件の書き方</th><th>意味</th><th>数式例</th></tr></thead><tbody><tr><td><code>"りんご"</code></td><td>完全一致</td><td><code>=COUNTIF(A:A, "りんご")</code></td></tr><tr><td><code>">100"</code></td><td>100より大きい</td><td><code>=COUNTIF(B:B, ">100")</code></td></tr><tr><td><code>">=80"</code></td><td>80以上</td><td><code>=COUNTIF(B:B, ">=80")</code></td></tr><tr><td><code>"<50"</code></td><td>50未満</td><td><code>=COUNTIF(B:B, "<50")</code></td></tr><tr><td><code>"<>"</code></td><td>空白以外すべて</td><td><code>=COUNTIF(A:A, "<>")</code></td></tr><tr><td><code>"<>"&D1</code></td><td>D1以外</td><td><code>=COUNTIF(A:A, "<>"&D1)</code></td></tr><tr><td><code>"<em>りんご</em>"</code></td><td>「りんご」を含む</td><td><code>=COUNTIF(A:A, "<em>りんご</em>")</code></td></tr><tr><td><code>"りんご*"</code></td><td>「りんご」で始まる</td><td><code>=COUNTIF(A:A, "りんご*")</code></td></tr><tr><td><code>"???"</code></td><td>3文字ちょうど</td><td><code>=COUNTIF(A:A, "???")</code></td></tr><tr><td><code>">"&D1</code></td><td>D1より大きい</td><td><code>=COUNTIF(B:B, ">"&D1)</code></td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc10">比較演算子を使う</span></h3>



<p class="wp-block-paragraph">数値の大小で条件を指定するときは、比較演算子を使います。</p>



<pre class="wp-block-code"><code>=COUNTIF(B2:B20, &quot;&gt;=80&quot;)</code></pre>



<p class="wp-block-paragraph">B2からB20の範囲で80以上のセルの個数を返します。</p>



<p class="wp-block-paragraph">ここで大事なのは、<strong>演算子と数値をまとめてダブルクォーテーションで囲む</strong>ことです。<code>>=80</code>ではなく<code>">=80"</code>と書きます。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/04_formula_countif-operator.png" alt="04 formula countif operator" /></figure>



<p class="wp-block-paragraph">セル参照と組み合わせるときは<code>&</code>で連結します。</p>



<pre class="wp-block-code"><code>=COUNTIF(B2:B20, &quot;&gt;=&quot;&amp;D1)</code></pre>



<p class="wp-block-paragraph">D1に「80」が入っていれば、80以上のセルを数えます。</p>



<h3 class="wp-block-heading"><span id="toc11">ワイルドカードを使う</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>*</code>（アスタリスク）</td><td>任意の文字列（0文字以上）</td><td><code>"<em>東京</em>"</code> → 東京を含む</td></tr><tr><td><code>?</code>（クエスチョン）</td><td>任意の1文字</td><td><code>"?田"</code> → 2文字で田で終わる</td></tr></tbody></table></figure>



<pre class="wp-block-code"><code>=COUNTIF(A2:A20, &quot;*東京*&quot;)</code></pre>



<p class="wp-block-paragraph">「東京」を含むセルの個数を返します。「東京都」「東京支店」「新東京ビル」すべてカウントされます。</p>



<p class="wp-block-paragraph">アスタリスクそのものを検索したい場合は、チルダを付けて<code>~*</code>と書きます。</p>



<h3 class="wp-block-heading"><span id="toc12">空白以外・空白セルを数える</span></h3>



<p class="wp-block-paragraph">空白以外のセルを数えるには<code>"<>"</code>を使います。</p>



<pre class="wp-block-code"><code>=COUNTIF(A2:A20, &quot;&lt;&gt;&quot;)</code></pre>



<p class="wp-block-paragraph">何か入力されているセルの個数を返します。</p>



<p class="wp-block-paragraph">空白セルを数えるには<a href="https://mashukabu.com/spreadsheet-countblank-function/">COUNTBLANK関数</a>がおすすめです。COUNTIF関数で<code>""</code>（空文字列）を条件にする方法もあります。ただし数式で空文字列を返しているセルの扱いが異なるため注意が必要です。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>COUNTIF関数で<code>"<>"</code>を使うと「何かが入力されたセルの数」を数えられます。<a href="https://mashukabu.com/spreadsheet-countblank-function/">COUNTBLANK関数</a>と組み合わせると、入力済み件数と未入力件数の両方を把握できて便利です。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc13">日付を条件にする</span></h3>



<p class="wp-block-paragraph">日付で条件を指定するときはDATE関数と<code>&</code>で連結します。</p>



<pre class="wp-block-code"><code>=COUNTIF(C2:C20, &quot;&gt;&quot;&amp;DATE(2024,4,1))</code></pre>



<p class="wp-block-paragraph">2024年4月1日より後の日付が入っているセルの個数を返します。</p>



<p class="wp-block-paragraph">日付を直接文字列で書くこともできますが、DATE関数を使うほうが確実です。日付の書式に左右されず判定してくれます。</p>



<h2 class="wp-block-heading"><span id="toc14">実務でのCOUNTIF関数活用例</span></h2>



<h3 class="wp-block-heading"><span id="toc15">重複データをチェックする</span></h3>



<p class="wp-block-paragraph">もっとも実務で使うパターンです。データの中に同じ値が2つ以上あるかどうかをチェックします。</p>



<p class="wp-block-paragraph">A列にメールアドレスが入っているとします。B2に次の数式を入力し、下にコピーします。</p>



<pre class="wp-block-code"><code>=IF(COUNTIF(A$2:A$100, A2)&gt;1, &quot;重複あり&quot;, &quot;&quot;)</code></pre>



<p class="wp-block-paragraph">COUNTIF関数で自分自身の値が範囲内に何個あるか数えます。2個以上なら「重複あり」と表示されます。</p>



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



<p class="wp-block-paragraph"><code>A$2:A$100</code>のように範囲を絶対参照にするのがポイントです。相対参照にすると、行をコピーするたびに範囲がずれてしまいます。</p>



<h3 class="wp-block-heading"><span id="toc16">条件付き書式で重複を色付けする</span></h3>



<p class="wp-block-paragraph">重複チェックをもっと視覚的にしたい場合は、条件付き書式と組み合わせます。</p>



<ol class="wp-block-list"><li>A2:A100を選択する</li><li>メニューから「表示形式」→「条件付き書式」を選ぶ</li><li>「カスタム数式」を選ぶ</li><li>数式に <code>=COUNTIF($A$2:$A$100, A2)>1</code> と入力する</li><li>好きな背景色を設定して「完了」をクリック</li></ol>



<p class="wp-block-paragraph">これで重複しているセルが自動的に色付きになります。データが増減しても自動で判定してくれるので便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc17">出欠や回答の集計</span></h3>



<p class="wp-block-paragraph">アンケート結果や出欠表の集計にCOUNTIF関数はぴったりです。</p>



<p class="wp-block-paragraph">B列に回答（出席/欠席/未回答）が入っているとします。</p>



<pre class="wp-block-code"><code>=COUNTIF(B2:B50, &quot;出席&quot;)
=COUNTIF(B2:B50, &quot;欠席&quot;)
=COUNTIF(B2:B50, &quot;未回答&quot;)</code></pre>



<p class="wp-block-paragraph">3つの数式を並べるだけで、回答の内訳がすぐにわかります。</p>



<h3 class="wp-block-heading"><span id="toc18">ステータス別の件数管理</span></h3>



<p class="wp-block-paragraph">タスク管理表で進捗状況を集計するパターンです。C列にステータス（未着手/進行中/完了）が入っているとします。</p>



<pre class="wp-block-code"><code>=COUNTIF(C2:C100, &quot;未着手&quot;)
=COUNTIF(C2:C100, &quot;進行中&quot;)
=COUNTIF(C2:C100, &quot;完了&quot;)</code></pre>



<p class="wp-block-paragraph">ダッシュボードのように、進捗の全体像を一目で把握できます。</p>



<h3 class="wp-block-heading"><span id="toc19">合格者数・不合格者数を数える</span></h3>



<p class="wp-block-paragraph">テストの点数が入ったB列から、合格ライン以上の人数を数えます。</p>



<pre class="wp-block-code"><code>=COUNTIF(B2:B50, &quot;&gt;=70&quot;)</code></pre>



<p class="wp-block-paragraph">70点以上の人数が一発でわかります。不合格者数は次のように書けます。</p>



<pre class="wp-block-code"><code>=COUNTIF(B2:B50, &quot;&lt;70&quot;)</code></pre>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>条件を2つ以上組み合わせたいときはCOUNTIFS関数を使います。たとえば「部署が営業部で、かつ80点以上」のようなカウントです。COUNTIFS関数の記事も近日公開予定ですので、あわせてチェックしてみてください。</p></blockquote>



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



<p class="wp-block-paragraph">COUNTIF関数は引数2つのシンプルな関数ですが、条件の書き方で結果がずれることがあります。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>結果が0になる</td><td>条件の文字列が実際のデータと微妙に異なる</td><td>データの前後にスペースがないか確認する</td></tr><tr><td>結果が0になる</td><td>比較演算子をダブルクォーテーションで囲んでいない</td><td><code>>=80</code>ではなく<code>">=80"</code>と書く</td></tr><tr><td>結果が0になる</td><td>数値が文字列として入力されている</td><td>セルの書式を「数値」に変更する</td></tr><tr><td>#VALUE!エラー</td><td>条件の文字数が255文字を超えている</td><td>条件を短くするか、ワイルドカードで部分一致にする</td></tr><tr><td>想定より多い</td><td>ワイルドカードが意図せず効いている</td><td><code>~*</code>でアスタリスクをエスケープする</td></tr><tr><td>想定より少ない</td><td>全角・半角が混在している</td><td>全角半角を統一する</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc21">条件の書き方でよくある間違い</span></h3>



<p class="wp-block-paragraph">もっとも多いのは、比較演算子の書き方のミスです。</p>



<pre class="wp-block-code"><code>=COUNTIF(B2:B20, &gt;=80)     ← NG: エラーになる
=COUNTIF(B2:B20, &quot;&gt;=80&quot;)   ← OK: 正しい書き方</code></pre>



<p class="wp-block-paragraph">比較演算子（<code>></code>、<code><</code>、<code>>=</code>、<code><=</code>、<code><></code>）を使うときは、演算子と数値をまとめてダブルクォーテーションで囲みます。</p>



<h3 class="wp-block-heading"><span id="toc22">前後のスペースに注意</span></h3>



<p class="wp-block-paragraph">「りんご」と「りんご 」（末尾にスペース）は別のデータとして扱われます。COUNTIF関数の結果が0になるときは、まずデータにスペースが紛れていないか確認してみてください。</p>



<p class="wp-block-paragraph">スペースを除去するには<a href="https://mashukabu.com/spreadsheet-trim-function/">TRIM関数</a>が便利です。</p>



<h3 class="wp-block-heading"><span id="toc23">数値が文字列として保存されている場合</span></h3>



<p class="wp-block-paragraph">セルの左上に小さな三角マークが表示されているときは、数値が文字列として保存されています。この場合、<code>">=80"</code>のような数値条件が正しく判定されないことがあります。</p>



<p class="wp-block-paragraph">対処法は、該当セルを選択して「表示形式」→「数値」→「数値」に変更し、データを入力し直すことです。</p>



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



<p class="wp-block-paragraph">COUNTIF関数と関連する関数をまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>条件</th><th>数える対象</th><th>引数</th></tr></thead><tbody><tr><td><strong>COUNTIF</strong></td><td><strong>1つ</strong></td><td><strong>条件に合うセル</strong></td><td><strong>2つ</strong></td></tr><tr><td>COUNTIFS</td><td>複数</td><td>すべての条件に合うセル</td><td>可変（範囲+条件のペア）</td></tr><tr><td>COUNT</td><td>なし</td><td>数値が入ったセル</td><td>1つ以上</td></tr><tr><td>COUNTA</td><td>なし</td><td>空白以外のセル</td><td>1つ以上</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-countblank-function/">COUNTBLANK</a></td><td>なし</td><td>空白セル</td><td>1つ</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-sumif-function/">SUMIF</a></td><td>1つ</td><td>条件に合うセルの合計</td><td>3つ</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc25">COUNTIFとCOUNTIFSの違い</span></h3>



<p class="wp-block-paragraph">COUNTIFは条件が<strong>1つ</strong>、COUNTIFSは条件が<strong>複数</strong>です。</p>



<pre class="wp-block-code"><code>=COUNTIF(A:A, &quot;りんご&quot;)
=COUNTIFS(A:A, &quot;りんご&quot;, B:B, &quot;東京&quot;)</code></pre>



<p class="wp-block-paragraph">COUNTIFは「りんご」の個数だけを数えます。COUNTIFSは「りんご」かつ「東京」の個数を数えます。</p>



<p class="wp-block-paragraph">引数の構造も異なります。COUNTIFは<code>(範囲, 条件)</code>。COUNTIFSは<code>(範囲1, 条件1, 範囲2, 条件2, ...)</code>です。条件が1つだけならCOUNTIFのほうがシンプルに書けます。</p>



<h3 class="wp-block-heading"><span id="toc26">COUNTIFとCOUNTの違い</span></h3>



<p class="wp-block-paragraph">COUNT関数は「数値が入ったセルの個数」を数えます。条件の指定はできません。</p>



<pre class="wp-block-code"><code>=COUNT(B2:B20)      → 数値セルの個数
=COUNTIF(B2:B20, &quot;&gt;=80&quot;)  → 80以上のセルの個数</code></pre>



<p class="wp-block-paragraph">「全部で何個あるか」はCOUNT、「条件に合うのは何個か」はCOUNTIFです。</p>



<h3 class="wp-block-heading"><span id="toc27">COUNTIFとSUMIFの違い</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-sumif-function/">SUMIF関数</a>は条件に合うセルの「合計」を返します。COUNTIF関数は条件に合うセルの「個数」を返します。</p>



<pre class="wp-block-code"><code>=COUNTIF(A:A, &quot;りんご&quot;)   → りんごの個数
=SUMIF(A:A, &quot;りんご&quot;, B:B) → りんごの売上合計</code></pre>



<p class="wp-block-paragraph">「何個あるか」はCOUNTIF、「合計はいくらか」は<a href="https://mashukabu.com/spreadsheet-sumif-function/">SUMIF</a>です。</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/spreadsheet-sumif-function/">SUMIF関数</a>で条件付き合計、<a href="https://mashukabu.com/spreadsheet-sumifs-function/">SUMIFS関数</a>で複数条件付き合計を求められます。</p></blockquote>



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



<p class="wp-block-paragraph">COUNTIF関数は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>=COUNTIF(範囲, 検索条件)</td><td>=COUNTIF(範囲, 条件)</td></tr><tr><td>ワイルドカード</td><td><code>*</code> <code>?</code> <code>~</code> 対応</td><td><code>*</code> <code>?</code> <code>~</code> 対応</td></tr><tr><td>255文字制限</td><td>あり</td><td>あり</td></tr><tr><td>列全体指定</td><td>A:A（やや重い）</td><td>A:A（パフォーマンス良好）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数名の表記が若干異なるだけで、機能は完全に同じです。ExcelとSheetsでファイルを共有しても、計算結果がずれることはありません。</p>



<p class="wp-block-paragraph">Googleスプレッドシートでは列全体の指定（<code>A:A</code>）が比較的軽快に動作します。大量のデータを扱うときは、範囲を<code>A2:A1000</code>のように限定するとさらに高速になります。</p>



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



<p class="wp-block-paragraph">COUNTIF関数は、条件に合うデータの個数を数えるシンプルで万能な関数です。</p>



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



<ul class="wp-block-list"><li>構文は <code>=COUNTIF(範囲, 条件)</code> の2引数</li><li>文字列一致・比較演算子・ワイルドカードなど条件の幅が広い</li><li>比較演算子は<code>">=80"</code>のようにダブルクォーテーションで囲む</li><li>ワイルドカード <code>*</code> と <code>?</code> で部分一致・前方一致も可能</li><li>重複チェックは <code>=COUNTIF(範囲, セル)>1</code> が定番パターン</li><li>条件が2つ以上ならCOUNTIFS関数を使う</li><li><a href="https://mashukabu.com/spreadsheet-sumif-function/">SUMIF関数</a>は個数ではなく合計を返す姉妹関数</li></ul>



<p class="wp-block-paragraph">まずは <code>=COUNTIF(A:A, "りんご")</code> のような文字列一致から試してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-countif-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのUNIQUE関数の使い方｜重複削除・複数列・エラー対処まで網羅</title>
		<link>https://mashukabu.com/excel-function-howto-use-unique/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-unique/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sun, 09 Mar 2025 00:06:16 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[COUNTIF]]></category>
		<category><![CDATA[Microsoft 365]]></category>
		<category><![CDATA[UNIQUE関数]]></category>
		<category><![CDATA[スピル]]></category>
		<category><![CDATA[動的配列関数]]></category>
		<category><![CDATA[重複削除]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=1872</guid>

					<description><![CDATA[ExcelのUNIQUE関数の使い方を徹底解説。重複の削除機能・COUNTIF関数との違い、複数列でのユニーク判定、0や#SPILL!エラーの対処法、Excel 2019で使えない場合の対応バージョンまで、実務で役立つ使い方を網羅的にまとめました。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Excelで「このリストから重複を除いた一覧だけほしい」と思ったこと、ありませんか。</p>



<p class="wp-block-paragraph">取引先名や商品コードをコピペして、目視で重複を消していく。データが増えるたびに同じ作業をやり直す。そんな手作業に時間を取られている方は多いはずです。</p>



<p class="wp-block-paragraph">データタブの「重複の削除」を使う手もあります。ただしこの機能は、元の表そのものを書き換えてしまうんですよね。あとから「やっぱり元に戻したい」と思っても、消えた行は返ってきません。</p>



<p class="wp-block-paragraph">そこで登場するのがUNIQUE関数。数式を1つ書くだけで、重複を除いた一覧が別の場所に自動で作られます。</p>



<p class="wp-block-paragraph">元データには一切手を触れません。しかも元の表を更新すれば、一覧のほうも勝手に付いてきてくれますよ。</p>



<p class="wp-block-paragraph">この記事では、ExcelのUNIQUE関数の使い方を基本から解説します。複数列でのユニーク判定、「重複の削除」機能やCOUNTIF関数との使い分けも扱います。「0が出る」「#SPILL!」といったエラー対処まで、まとめて押さえていきましょう。</p>




  <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">UNIQUE関数とは？Excelで重複を除いた一覧を作る関数</a><ol><li><a href="#toc2" tabindex="0">UNIQUE関数の読み方とできること</a></li><li><a href="#toc3" tabindex="0">UNIQUE関数が使えるExcelのバージョン</a></li><li><a href="#toc4" tabindex="0">基本構文と3つの引数</a></li></ol></li><li><a href="#toc5" tabindex="0">UNIQUE関数の使い方｜基本・複数列・組み合わせまで</a><ol><li><a href="#toc6" tabindex="0">重複を除いたリストを作る（もっとも基本の形）</a></li><li><a href="#toc7" tabindex="0">複数列でユニーク判定する｜同姓同名を1件にまとめないために</a></li><li><a href="#toc8" tabindex="0">1回だけ出現する値を抽出する（第3引数）</a></li><li><a href="#toc9" tabindex="0">横並びのリストは第2引数をTRUEにする</a></li><li><a href="#toc10" tabindex="0">SORT関数で並べ替える</a></li><li><a href="#toc11" tabindex="0">FILTER関数で絞り込んでから重複を除く</a></li><li><a href="#toc12" tabindex="0">件数を数える・1セルにまとめる</a></li><li><a href="#toc13" tabindex="0">出現回数もあわせて表示する（COUNTIF・COUNTIFS）</a></li></ol></li><li><a href="#toc14" tabindex="0">「重複の削除」機能・COUNTIF関数との違い｜どれを使うべき？</a><ol><li><a href="#toc15" tabindex="0">3ウェイ比較表（UNIQUE関数／重複の削除／COUNTIF関数）</a></li><li><a href="#toc16" tabindex="0">COUNTIF関数で重複をチェックする書き方</a></li><li><a href="#toc17" tabindex="0">場面別の使い分け基準</a></li></ol></li><li><a href="#toc18" tabindex="0">UNIQUE関数のよくあるエラーと注意点</a><ol><li><a href="#toc19" tabindex="0">結果に「0」が表示される</a></li><li><a href="#toc20" tabindex="0">#CALC!エラー</a></li><li><a href="#toc21" tabindex="0">#SPILL!エラー</a></li><li><a href="#toc22" tabindex="0">#NAME?エラー</a></li><li><a href="#toc23" tabindex="0">全角・半角や表記ゆれは「別の値」として残る</a></li><li><a href="#toc24" tabindex="0">データを追加しても一覧が増えない</a></li></ol></li><li><a href="#toc25" tabindex="0">よくある質問（FAQ）</a><ol><li><a href="#toc26" tabindex="0">Excel 2019でUNIQUE関数は使えますか？</a></li><li><a href="#toc27" tabindex="0">なぜ結果に「0」が表示されるのですか？</a></li><li><a href="#toc28" tabindex="0">全角・半角が混在するデータは重複と判定されますか？</a></li><li><a href="#toc29" tabindex="0">複数列を指定するときの注意点は？</a></li><li><a href="#toc30" tabindex="0">UNIQUE関数とCOUNTIF関数はどちらを使うべきですか？</a></li></ol></li><li><a href="#toc31" tabindex="0">まとめ</a><ol><li><a href="#toc32" tabindex="0">この記事で紹介した関数・関連記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">UNIQUE関数とは？Excelで重複を除いた一覧を作る関数</span></h2>



<h3 class="wp-block-heading"><span id="toc2">UNIQUE関数の読み方とできること</span></h3>



<p class="wp-block-paragraph">UNIQUE関数（読み方：ユニーク関数）は、指定した範囲から重複を取り除いた一覧を返す関数です。英語の「unique」は「唯一の・重複のない」という意味。名前のとおりの働きをしてくれます。</p>



<p class="wp-block-paragraph">たとえば、こんな場面で使えます。</p>



<ul class="wp-block-list"><li>顧客名簿から重複なしの顧客一覧を作る</li><li>商品コードの入力履歴から取扱商品のマスタを起こす</li><li>入力規則（プルダウン）の選択肢を自動で用意する</li></ul>



<p class="wp-block-paragraph">こうした作業が、数式1本で終わります。</p>



<p class="wp-block-paragraph">大事なのは、UNIQUE関数が「動的配列関数」だという点。動的配列関数とは、1つのセルに数式を入れるだけで、結果が必要な広さまで自動で広がるタイプの関数のことです。この自動的に広がる動きを「スピル」と呼びます。</p>



<p class="wp-block-paragraph">つまり4件の一覧が返るなら、数式を入れたセルから下に4行ぶんが勝手に埋まるわけですね。1行ずつコピーする必要はありません。</p>



<p class="wp-block-paragraph">スピルの仕組みそのものを知りたい方は、<a href="https://mashukabu.com/excel-unique-filter-sort-sequence-spill/">スピルで集計・抽出を自動化する方法</a>もあわせてどうぞ。</p>



<h3 class="wp-block-heading"><span id="toc3">UNIQUE関数が使えるExcelのバージョン</span></h3>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>対応バージョン</strong>: UNIQUE関数はMicrosoft 365とExcel 2021以降で使えます。<strong>Excel 2019以前は非対応</strong>です。2019以前で入力すると、関数名が認識されず <code>#NAME?</code> エラーになります。</p></blockquote>



<p class="wp-block-paragraph">対応している環境を具体的に挙げると、次のとおりです。</p>



<ul class="wp-block-list"><li>Microsoft 365（Windows / Mac）</li><li>Excel 2024（Windows / Mac）</li><li>Excel 2021（Windows / Mac）</li><li>Excel for the web（ブラウザ版）</li><li>iPad / iPhone / Android版Excel</li></ul>



<p class="wp-block-paragraph">ブラウザ版のExcelでも問題なく動きます。会社のPCが2019のままでも、Web版が使える環境ならそちらで試せますよ。</p>



<p class="wp-block-paragraph">なお、UNIQUE関数を含むブックを非対応のバージョンで開いた場合は、少し話が変わります。Microsoftの説明では、動的配列数式は互換性チェッカーで検知されます。そのうえでCSE配列数式として表示される、とされています。</p>



<p class="wp-block-paragraph">CSE配列数式とは、Ctrl+Shift+Enterで確定する従来型の配列数式のこと。新規に入力したときの<code>#NAME?</code>とは別の挙動なので、混同しないようにしましょう。</p>



<p class="wp-block-paragraph">バージョン違いによる<code>#NAME?</code>は、<a href="https://mashukabu.com/excel-xlookup-filter-name-error-version/">XLOOKUP・FILTERが使えない原因と対処</a>で詳しく解説しています。9関数×5バージョンの対応表つきです。</p>



<h3 class="wp-block-heading"><span id="toc4">基本構文と3つの引数</span></h3>



<p class="wp-block-paragraph">UNIQUE関数の構文はこちらです。</p>



<pre class="wp-block-code"><code>=UNIQUE(配列, [列の比較], [回数指定])</code></pre>



<p class="wp-block-paragraph">英語表記では <code>=UNIQUE(array, [by_col], [exactly_once])</code> となります。角かっこ [ ] で囲まれた引数は、省略できるという意味です。</p>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/省略可</th><th>内容</th><th>既定値</th></tr></thead><tbody><tr><td>配列（array）</td><td>必須</td><td>重複を取り除く元のセル範囲や配列</td><td>&#8211;</td></tr><tr><td>列の比較（by_col）</td><td>省略可</td><td>FALSE＝行同士を比較して一意の行を返す／TRUE＝列同士を比較して一意の列を返す</td><td>FALSE</td></tr><tr><td>回数指定（exactly_once）</td><td>省略可</td><td>FALSE＝重複を1件にまとめた全ユニーク値／TRUE＝1回だけ出現した値のみ</td><td>FALSE</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">必須の引数は第1引数だけ。縦に並んだふつうのリストなら <code>=UNIQUE(A2:A8)</code> と書くだけで動きます。</p>



<p class="wp-block-paragraph">第2引数「列の比較」は、縦長のリストなら省略でOK。横方向に並んだデータを扱うときだけTRUEにする、と覚えておきましょう。</p>



<p class="wp-block-paragraph">第3引数「回数指定」はTRUEにすると意味がガラッと変わります。「重複を1件にまとめる」のではなく、「そもそも1回しか出てこない値だけ」を抜き出す動きになるんです。ここは取り違えやすいポイント。</p>



<h2 class="wp-block-heading"><span id="toc5">UNIQUE関数の使い方｜基本・複数列・組み合わせまで</span></h2>



<p class="wp-block-paragraph">ここからは実際のデータで見ていきます。以下の受注データ（A1:D8）を使って解説しますね。</p>



<figure class="wp-block-table"><table><thead><tr><th>担当者</th><th>部署</th><th>商品名</th><th>金額</th></tr></thead><tbody><tr><td>田中</td><td>営業部</td><td>ノートPC</td><td>128,000</td></tr><tr><td>鈴木</td><td>総務部</td><td>モニター</td><td>32,000</td></tr><tr><td>田中</td><td>経理部</td><td>ノートPC</td><td>128,000</td></tr><tr><td>佐藤</td><td>営業部</td><td>プリンター</td><td>45,000</td></tr><tr><td>鈴木</td><td>総務部</td><td>モニター</td><td>32,000</td></tr><tr><td>佐藤</td><td>営業部</td><td>ノートPC</td><td>128,000</td></tr><tr><td>山田</td><td>開発部</td><td>タブレット</td><td>68,000</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">1行目が見出しで、データは2行目から8行目までの7行です。営業部の「田中」さんと経理部の「田中」さんは別人（同姓同名）という設定にしています。</p>



<h3 class="wp-block-heading"><span id="toc6">重複を除いたリストを作る（もっとも基本の形）</span></h3>



<p class="wp-block-paragraph">まずは担当者の一覧を、重複なしで取り出してみます。</p>



<pre class="wp-block-code"><code>=UNIQUE(A2:A8)</code></pre>



<p class="wp-block-paragraph">結果は4件です。上から「田中」「鈴木」「佐藤」「山田」の順に並びます。</p>



<figure class="wp-block-table"><table><thead><tr><th>担当者</th></tr></thead><tbody><tr><td>田中</td></tr><tr><td>鈴木</td></tr><tr><td>佐藤</td></tr><tr><td>山田</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">数式を入れたのは1セルだけ。それなのに結果は4行ぶんに広がります。これがスピルの働きですね。</p>



<p class="wp-block-paragraph">並び順にも注目してください。UNIQUE関数は元データに登場した順（初出順）で値を返します。あいうえお順や数値の昇順に並べ替えてはくれません。</p>



<p class="wp-block-paragraph">並び順を変えたいときは、後述のSORT関数と組み合わせます。</p>



<p class="wp-block-paragraph">商品名でも書き方は同じ。</p>



<pre class="wp-block-code"><code>=UNIQUE(C2:C8)</code></pre>



<p class="wp-block-paragraph">こちらは「ノートPC」「モニター」「プリンター」「タブレット」の4件が返ります。</p>



<h3 class="wp-block-heading"><span id="toc7">複数列でユニーク判定する｜同姓同名を1件にまとめないために</span></h3>



<p class="wp-block-paragraph">さきほどの <code>=UNIQUE(A2:A8)</code> の結果、実は少し危ういんです。「田中」は1件にまとまっていますが、営業部の田中さんと経理部の田中さんは別人でした。氏名だけで比べると、別人が同一人物として消えてしまいます。</p>



<p class="wp-block-paragraph">こういうときは、範囲を複数列にします。</p>



<pre class="wp-block-code"><code>=UNIQUE(A2:B8)</code></pre>



<p class="wp-block-paragraph">結果は5行2列。担当者と部署のペアで判定されます。</p>



<figure class="wp-block-table"><table><thead><tr><th>担当者</th><th>部署</th></tr></thead><tbody><tr><td>田中</td><td>営業部</td></tr><tr><td>鈴木</td><td>総務部</td></tr><tr><td>田中</td><td>経理部</td></tr><tr><td>佐藤</td><td>営業部</td></tr><tr><td>山田</td><td>開発部</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">UNIQUE関数は既定で「行同士」を比べます。<code>A2:B8</code> を渡すと、氏名と部署の組み合わせがそっくり同じ行だけが重複とみなされるわけです。営業部の田中さんと経理部の田中さんは、別の行としてきちんと残ります。</p>



<p class="wp-block-paragraph">実務では、社員番号や取引先コードを一緒に渡すのが安全策。氏名や商品名のような「人が手入力する文字列」だけで判定すると、思わぬ取りこぼしが起きますよ。</p>



<h3 class="wp-block-heading"><span id="toc8">1回だけ出現する値を抽出する（第3引数）</span></h3>



<p class="wp-block-paragraph">第3引数「回数指定」をTRUEにしてみましょう。</p>



<pre class="wp-block-code"><code>=UNIQUE(A2:A8,FALSE,TRUE)</code></pre>



<p class="wp-block-paragraph">返ってくるのは「山田」だけです。田中・鈴木・佐藤はいずれも2回登場しているため、対象から外れます。</p>



<p class="wp-block-paragraph">第2引数を省略して、カンマだけを置く書き方もできます。</p>



<pre class="wp-block-code"><code>=UNIQUE(A2:A8,,TRUE)</code></pre>



<p class="wp-block-paragraph">商品名で試すとどうなるでしょうか。<code>=UNIQUE(C2:C8,,TRUE)</code> の結果は「プリンター」「タブレット」の2件。ノートPC（3回）とモニター（2回）は除かれます。</p>



<p class="wp-block-paragraph">第3引数の違いは、次のように整理しておくと迷いません。</p>



<ul class="wp-block-list"><li><strong>FALSE（既定）</strong>: 2回以上出た値も1件にまとめ、すべてのユニーク値を返す</li><li><strong>TRUE</strong>: ちょうど1回だけ出た値のみを返す</li></ul>



<p class="wp-block-paragraph">「一度しか取引のない顧客を洗い出す」「1回しか出てこない伝票番号を探す」といった場面で活躍します。</p>



<h3 class="wp-block-heading"><span id="toc9">横並びのリストは第2引数をTRUEにする</span></h3>



<p class="wp-block-paragraph">データが横方向に並んでいるケースも見ておきましょう。別のシートのA1:F1に「田中／鈴木／田中／佐藤／鈴木／山田」と入力されているとします。</p>



<pre class="wp-block-code"><code>=UNIQUE(A1:F1,TRUE)</code></pre>



<p class="wp-block-paragraph">第2引数にTRUEを指定すると、UNIQUE関数は列同士を比較します。結果は「田中」「鈴木」「佐藤」「山田」の1行4列。今度は横方向にスピルします。</p>



<p class="wp-block-paragraph">では、ここで第2引数を省略するとどうなるか。行同士の比較になりますが、対象は1行しかありません。重複は何も除かれず、A1:F1がそのまま6列返ってくるだけです。</p>



<p class="wp-block-paragraph">横並びのデータで「重複が消えない」と感じたら、まず第2引数を疑ってみてください。</p>



<h3 class="wp-block-heading"><span id="toc10">SORT関数で並べ替える</span></h3>



<p class="wp-block-paragraph">UNIQUE関数の結果は初出順でした。見やすく並べ替えたいときは<a href="https://mashukabu.com/excel-function-howto-use-sort/">SORT関数</a>で包みます。</p>



<pre class="wp-block-code"><code>=SORT(UNIQUE(C2:C8))</code></pre>



<p class="wp-block-paragraph">商品名の一覧が昇順で返り、「タブレット」「ノートPC」「プリンター」「モニター」の順に並びます。降順にしたいなら、並べ替えの基準列と順序を指定してください。</p>



<pre class="wp-block-code"><code>=SORT(UNIQUE(C2:C8),1,-1)</code></pre>



<p class="wp-block-paragraph">ひとつ注意があります。漢字を含む文字列は、ふりがな通りの五十音順にはならないことがあります（文字コード順に近い並びになるとされていますが、Microsoft公式のSORT関数ページに明記された仕様ではありません）。確実に五十音順で並べたいときは、<a href="https://mashukabu.com/excel-function-howto-use-sortby/">SORTBY関数</a>とPHONETIC関数の組み合わせを検討しましょう。</p>



<h3 class="wp-block-heading"><span id="toc11">FILTER関数で絞り込んでから重複を除く</span></h3>



<p class="wp-block-paragraph">条件で絞ったうえで重複を除きたい。そんなときは<a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER関数</a>を内側に入れます。</p>



<pre class="wp-block-code"><code>=UNIQUE(FILTER(C2:C8,B2:B8=&quot;営業部&quot;))</code></pre>



<p class="wp-block-paragraph">ちょっと複雑に見えますが、やっていることはシンプルです。まずFILTER関数が営業部の行だけを抜き出します。次にUNIQUE関数が、その中の重複を取り除きます。</p>



<p class="wp-block-paragraph">営業部の行は3行（ノートPC・プリンター・ノートPC）。ノートPCが1件にまとまり、結果は「ノートPC」「プリンター」の2件になります。</p>



<p class="wp-block-paragraph">なお、内側と外側を逆にした書き方は動きません。</p>



<pre class="wp-block-code"><code>=FILTER(UNIQUE(C2:C8),B2:B8=&quot;営業部&quot;)</code></pre>



<p class="wp-block-paragraph">抽出結果の行数と、条件の行数が食い違うためです。「絞ってから重複除去」の順で覚えておきましょう。</p>



<h3 class="wp-block-heading"><span id="toc12">件数を数える・1セルにまとめる</span></h3>



<p class="wp-block-paragraph">一意な値が何件あるかだけ知りたい。そんなときは<a href="https://mashukabu.com/excel-function-howto-use-counta/">COUNTA関数</a>で囲みます。</p>



<pre class="wp-block-code"><code>=COUNTA(UNIQUE(A2:A8))</code></pre>



<p class="wp-block-paragraph">結果は4。担当者が実質4人いる、とひと目で分かります。</p>



<p class="wp-block-paragraph">ここで気をつけたいのが<a href="https://mashukabu.com/excel-function-howto-use-count/">COUNT関数</a>との違いです。COUNT関数は数値だけを数えるため、担当者名のような文字列の一覧に使うと0が返ってしまいます。文字列を含む一覧を数えるなら、COUNTA関数を選んでください。</p>



<p class="wp-block-paragraph">一意な値をカンマ区切りで1セルにまとめたいときは、<a href="https://mashukabu.com/excel-function-howto-use-textjoin/">TEXTJOIN関数</a>の出番。</p>



<pre class="wp-block-code"><code>=TEXTJOIN(&quot;、&quot;,TRUE,UNIQUE(A2:A8))</code></pre>



<p class="wp-block-paragraph">結果は「田中、鈴木、佐藤、山田」という1つの文字列です。第2引数のTRUEは「空欄を無視する」という指定。メール本文や報告書に貼り付けたいときに重宝します。</p>



<h3 class="wp-block-heading"><span id="toc13">出現回数もあわせて表示する（COUNTIF・COUNTIFS）</span></h3>



<p class="wp-block-paragraph">一意な一覧に「それぞれ何件あるか」を添えると、そのまま簡易集計表になります。</p>



<p class="wp-block-paragraph">まずF2に <code>=UNIQUE(A2:A8)</code> を入力してください。F2:F5に4件の担当者名が展開されます。続いてG2に、次の数式を入力しましょう。</p>



<pre class="wp-block-code"><code>=COUNTIF($A$2:$A$8,F2#)</code></pre>



<p class="wp-block-paragraph"><code>F2#</code> の「#」はスピル範囲演算子と呼ばれる記号です。「F2から広がった結果の全体」をまとめて指します。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-countif/">COUNTIF関数</a>の数式はG2の1か所だけ。それでも田中2・鈴木2・佐藤2・山田1という件数が、縦に並んで出てきます。</p>



<p class="wp-block-paragraph">複数列の組み合わせで数えるなら、<a href="https://mashukabu.com/excel-function-howto-use-countifs/">COUNTIFS関数</a>の出番。さきほどのF列・G列とぶつからないよう、今度はJ2に <code>=UNIQUE(A2:B8)</code> を入力します。J2:K6に5行2列で展開されますよ。</p>



<p class="wp-block-paragraph">L2に次の数式を入力し、L6までコピーしてください。</p>



<pre class="wp-block-code"><code>=COUNTIFS($A$2:$A$8,J2,$B$2:$B$8,K2)</code></pre>



<p class="wp-block-paragraph">結果は上から1・2・1・2・1。営業部の田中さんは1件、総務部の鈴木さんは2件、という具合に件数が出せます。ピボットテーブルを作るほどでもない集計に便利ですよ。</p>



<h2 class="wp-block-heading"><span id="toc14">「重複の削除」機能・COUNTIF関数との違い｜どれを使うべき？</span></h2>



<p class="wp-block-paragraph">Excelで重複を扱う方法は、UNIQUE関数だけではありません。データタブの「重複の削除」機能、そしてCOUNTIF関数による重複チェック。この3つの違いを押さえておくと、場面に応じて迷わず選べます。</p>



<h3 class="wp-block-heading"><span id="toc15">3ウェイ比較表（UNIQUE関数／重複の削除／COUNTIF関数）</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>比較軸</th><th>UNIQUE関数</th><th>「重複の削除」機能</th><th>COUNTIF関数</th></tr></thead><tbody><tr><td>やること</td><td>重複を除いた一覧を別の場所に作る</td><td>元の表から重複行を消す</td><td>重複しているかを判定する</td></tr><tr><td>元データへの影響</td><td>変更しない（非破壊）</td><td>上書きして削除する（破壊的）</td><td>変更しない（非破壊）</td></tr><tr><td>元データを直したとき</td><td>自動で再計算される</td><td>反映されない（実行し直し）</td><td>自動で再計算される</td></tr><tr><td>一覧づくり</td><td>数式1つで完結</td><td>手作業で都度実行</td><td>単体では作れない</td></tr><tr><td>使えるバージョン</td><td>Microsoft 365 / Excel 2021以降</td><td>ほぼすべてのバージョン</td><td>ほぼすべてのバージョン</td></tr><tr><td>向いている場面</td><td>集計表・プルダウンの元リスト</td><td>一度きりのデータ整理</td><td>入力ミスの発見・重複箇所の可視化</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">いちばん大きな違いは「元データを壊すかどうか」です。Microsoftの公式ページも注意を促しています。「重複する値を削除すると、重複する値が完全に削除されます」という説明です。</p>



<p class="wp-block-paragraph">実行前に別シートや別ブックへコピーしておくことが推奨されているほど。一方のUNIQUE関数は、結果を別のセルに書き出すだけです。気に入らなければ数式を消せば済みます。</p>



<p class="wp-block-paragraph">この気軽さが、日常的に使ううえでは大きな差になりますよ。</p>



<h3 class="wp-block-heading"><span id="toc16">COUNTIF関数で重複をチェックする書き方</span></h3>



<p class="wp-block-paragraph">COUNTIF関数は一覧を作る関数ではありません。「この行は重複か？」を教えてくれる関数です。E2に次の数式を入れて、下方向にコピーします。</p>



<pre class="wp-block-code"><code>=COUNTIF($A$2:$A2,A2)&gt;1</code></pre>



<p class="wp-block-paragraph">範囲の始点だけを絶対参照（$A$2）にして、終点は相対参照（A2）にするのがポイント。こうすると「自分より上に同じ値があるか」を数えられます。</p>



<p class="wp-block-paragraph">サンプルデータでは、4行目の田中・6行目の鈴木・7行目の佐藤がTRUEになります。いずれも2回目に登場した行ですね。条件付き書式と組み合わせれば、重複セルに色を付けることもできます。</p>



<p class="wp-block-paragraph">ただしCOUNTIF関数だけでは、重複を除いた一覧までは作れません。一覧がほしいならUNIQUE、チェックだけならCOUNTIF。この線引きで考えると分かりやすいですよ。</p>



<h3 class="wp-block-heading"><span id="toc17">場面別の使い分け基準</span></h3>



<ul class="wp-block-list"><li><strong>集計表やダッシュボードの元リストを作る</strong> → UNIQUE関数。データが増えても自動で追随します</li><li><strong>入力規則（プルダウン）の選択肢を自動更新したい</strong> → UNIQUE関数</li><li><strong>配布用のファイルから重複行を物理的に消したい</strong> → 「重複の削除」機能</li><li><strong>Excel 2019以前で作業している</strong> → 「重複の削除」機能かCOUNTIF関数（UNIQUEは使えません）</li><li><strong>どこが重複しているかを目で確認したい</strong> → COUNTIF関数＋条件付き書式</li><li><strong>重複は消さずに件数だけ把握したい</strong> → COUNTIF関数 / COUNTIFS関数</li></ul>



<p class="wp-block-paragraph">迷ったら、まずUNIQUE関数を試してみてください。元データを壊さないので、失敗しても数式を消せば元通りです。</p>



<h2 class="wp-block-heading"><span id="toc18">UNIQUE関数のよくあるエラーと注意点</span></h2>



<h3 class="wp-block-heading"><span id="toc19">結果に「0」が表示される</span></h3>



<p class="wp-block-paragraph">元の範囲に空白セルが混じっていると、その空白が「0」として返ることがあります。名前の一覧を作ったはずなのに、末尾にぽつんと0が並ぶ。ありがちなトラブルですよね。</p>



<p class="wp-block-paragraph">理由はシンプルです。Excelでは空のセルを参照すると0として扱われるため、その0がユニークな値の1つとして返ってきます。</p>



<p class="wp-block-paragraph">ちなみに空白セルが何個あっても、出てくる0は1件だけ。重複としてまとめられるからです。</p>



<p class="wp-block-paragraph">対処法は3つあります。1つ目は<a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER関数</a>で空白を除いてから渡す方法。</p>



<pre class="wp-block-code"><code>=UNIQUE(FILTER(A2:A20,A2:A20&lt;&gt;&quot;&quot;))</code></pre>



<p class="wp-block-paragraph">2つ目は<a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数</a>で空白を空文字に置き換える方法です。</p>



<pre class="wp-block-code"><code>=UNIQUE(IF(A2:A20=&quot;&quot;,&quot;&quot;,A2:A20))</code></pre>



<p class="wp-block-paragraph">この書き方だと、0の代わりに空欄が1件残ります。見た目さえ整えばよい場面なら、これで十分でしょう。</p>



<p class="wp-block-paragraph">3つ目は、複数列をまとめて1列にしたいときの技。<a href="https://mashukabu.com/excel-function-howto-use-tocol/">TOCOL関数</a>の第2引数に1を指定すると、空白を無視して1列に並べ直せます。</p>



<pre class="wp-block-code"><code>=UNIQUE(TOCOL(A2:C20,1))</code></pre>



<p class="wp-block-paragraph">複数の列に散らばった値から、まとめてマスタを作りたいときに便利な組み合わせです。</p>



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



<p class="wp-block-paragraph"><code>#CALC!</code> は「計算結果が空っぽ」のときに出るエラーです。UNIQUE関数単体で出ることは少なく、内側に入れたFILTER関数が原因になるケースがほとんど。</p>



<pre class="wp-block-code"><code>=UNIQUE(FILTER(C2:C8,B2:B8=&quot;法務部&quot;))</code></pre>



<p class="wp-block-paragraph">サンプルデータに法務部の行はありません。FILTER関数の結果が0件になり、そのまま<code>#CALC!</code>が返ります。</p>



<p class="wp-block-paragraph">対処は、FILTER関数の第3引数（空の場合）を指定するだけ。</p>



<pre class="wp-block-code"><code>=UNIQUE(FILTER(C2:C8,B2:B8=&quot;法務部&quot;,&quot;該当データなし&quot;))</code></pre>



<p class="wp-block-paragraph">これで「該当データなし」という文字列が表示され、エラーは消えます。空白除去の数式を書いたあとに<code>#CALC!</code>が出たら、この第3引数を思い出してくださいね。</p>



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



<p class="wp-block-paragraph"><code>#SPILL!</code> は「結果を広げたいのに広げられない」ときのエラーです。UNIQUE関数に固有の問題ではなく、スピルする関数に共通のもの。主な原因は次の4つです。</p>



<ul class="wp-block-list"><li><strong>展開先のセルに何か入っている</strong>: 結果が4行必要なのに、2つ下のセルに文字や数式がある</li><li><strong>展開先に結合セルがある</strong>: 結合されたセルにはスピルできません</li><li><strong>Excelテーブルの中に直接入力した</strong>: テーブル内のセルはスピルに対応していません</li><li><strong>列全体（A:Aなど）を参照した</strong>: 展開先がシートの末尾を超えてしまいます</li></ul>



<p class="wp-block-paragraph">対処法は原因ごとにはっきりしています。</p>



<ul class="wp-block-list"><li>展開先のセルを空ける</li><li>結合を解除する</li><li>数式はテーブルの外に置く</li><li>範囲は <code>A2:A1000</code> のように具体的な行数で指定する</li></ul>



<p class="wp-block-paragraph">エラーが出たセルには警告マークが表示され、クリックすると原因の説明を確認できます。まずはそこを見るのが近道ですよ。他のエラー表示については、<a href="https://mashukabu.com/excel-error-value-list/">Excelのエラー値一覧｜種類・原因・対処法</a>にまとめています。</p>



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



<p class="wp-block-paragraph"><code>#NAME?</code> は、関数名そのものが認識されていないサインです。原因は2つに絞られます。</p>



<p class="wp-block-paragraph">1つ目はバージョン。Excel 2019以前にはUNIQUE関数が存在しないため、入力しても関数として扱われません。</p>



<p class="wp-block-paragraph">2つ目は単純なスペルミスです。「UNIQE」「UNIQUR」のような打ち間違い、意外とやりがちですよね。</p>



<p class="wp-block-paragraph">バージョンが原因なら、Microsoft 365やExcel 2021以降への移行が根本的な解決になります。すぐに移行できない場合は、「重複の削除」機能かCOUNTIF関数で代用しましょう。</p>



<p class="wp-block-paragraph">判定の手順は<a href="https://mashukabu.com/excel-xlookup-filter-name-error-version/">XLOOKUP・FILTERが使えないときの対処法</a>で詳しく説明しています。</p>



<h3 class="wp-block-heading"><span id="toc23">全角・半角や表記ゆれは「別の値」として残る</span></h3>



<p class="wp-block-paragraph">ここは誤解が多いところ。UNIQUE関数の重複判定には、次のようなクセがあると考えられます。ただしMicrosoft公式のUNIQUE関数ページにはこの挙動の個別記載がなく、COUNTIFなど他の多くのExcel関数に共通する一般的な文字列比較ルールをもとにした整理です。運用前に手元の環境で確認しておくと安心です。</p>



<ul class="wp-block-list"><li><strong>大文字・小文字は区別しない</strong>: 「apple」と「APPLE」は同じ値とみなされ、1件にまとまります</li><li><strong>全角・半角は区別する</strong>: 「ABC-01」と「ＡＢＣ－０１」は別の値として2件とも残ります</li><li><strong>前後の空白も区別する</strong>: 「東京都」と「東京都 」（末尾に空白）は別の値です</li></ul>



<p class="wp-block-paragraph">複数人が入力したデータでは、この違いが必ずと言っていいほど起こります。「見た目は同じなのに重複が消えない」ときは、まず表記ゆれを疑ってみてください。</p>



<p class="wp-block-paragraph">対策は、UNIQUE関数に渡す前に表記をそろえることです。<a href="https://mashukabu.com/excel-function-howto-use-asc/">ASC関数</a>で全角文字を半角に変換し、TRIM関数で余分な空白を落とします。</p>



<pre class="wp-block-code"><code>=UNIQUE(TRIM(ASC(A2:A20)))</code></pre>



<p class="wp-block-paragraph">逆に大文字・小文字までしっかり区別したい場合は、<a href="https://mashukabu.com/excel-function-howto-use-exact/">EXACT関数</a>による比較を検討してください。こうした「見えない違い」でつまずいたときは、<a href="https://mashukabu.com/excel-aggregation-search-mismatch/">Excel集計・検索が合わない原因5つと直し方</a>も参考になります。</p>



<h3 class="wp-block-heading"><span id="toc24">データを追加しても一覧が増えない</span></h3>



<p class="wp-block-paragraph">「新しい行を入力したのに、一覧に出てこない」。これは範囲の指定が原因です。</p>



<p class="wp-block-paragraph"><code>=UNIQUE(A2:A8)</code> と書いた場合、9行目に追加したデータは範囲の外側。当然ながら結果には反映されません。</p>



<p class="wp-block-paragraph">解決策は2つあります。1つは <code>=UNIQUE(A2:A1000)</code> のように、あらかじめ余裕を持たせる方法。ただし空白セルが0として出るので、さきほどのFILTER関数との組み合わせをセットで使ってください。</p>



<p class="wp-block-paragraph">もう1つはExcelテーブルにする方法です。範囲を選んで <code>Ctrl + T</code> でテーブルに変換します。</p>



<p class="wp-block-paragraph">あとは構造化参照で書くだけ。構造化参照とは、テーブル名と列名で範囲を指定する書き方のことです。</p>



<pre class="wp-block-code"><code>=UNIQUE(テーブル1[担当者])</code></pre>



<p class="wp-block-paragraph">テーブルに行を追加すると範囲が自動で広がり、UNIQUE関数の結果も一緒に増えます。こちらのほうが圧倒的にラクですね。</p>



<p class="wp-block-paragraph">ただし数式は、テーブルの外側のセルに置いてください。テーブル内に書くとスピルできず、<code>#SPILL!</code>になってしまいます。</p>



<h2 class="wp-block-heading"><span id="toc25">よくある質問（FAQ）</span></h2>



<h3 class="wp-block-heading"><span id="toc26">Excel 2019でUNIQUE関数は使えますか？</span></h3>



<p class="wp-block-paragraph">使えません。対応しているのはMicrosoft 365・Excel 2024・Excel 2021の3つです。</p>



<p class="wp-block-paragraph">Windows版・Mac版・Excel for the web（ブラウザ版）のいずれでも動きます。iPad / iPhone / Android版Excelでも使えますよ。</p>



<p class="wp-block-paragraph">Excel 2019以前で入力すると<code>#NAME?</code>エラーになります。代わりの手段は、データタブの「重複の削除」機能かCOUNTIF関数による重複チェック。ただし自動更新はされないため、データを更新するたびに作業をやり直す必要があります。</p>



<h3 class="wp-block-heading"><span id="toc27">なぜ結果に「0」が表示されるのですか？</span></h3>



<p class="wp-block-paragraph">指定した範囲に空白セルが含まれているためです。Excelは空のセルを参照すると0として扱うので、その0がユニークな値の1つとして返ってきます。</p>



<p class="wp-block-paragraph"><code>=UNIQUE(FILTER(A2:A20,A2:A20<>""))</code> と書けば解決します。ただし条件に合う行が1件もないと<code>#CALC!</code>になるため、FILTER関数の第3引数もあわせて指定しておくと安心。</p>



<h3 class="wp-block-heading"><span id="toc28">全角・半角が混在するデータは重複と判定されますか？</span></h3>



<p class="wp-block-paragraph">基本的には判定されません。全角と半角は別の文字として扱われるため、「ABC-01」と「ＡＢＣ－０１」は2件とも残ります。一方で大文字・小文字は区別されないため、「apple」と「APPLE」は1件にまとまります（いずれもMicrosoft公式のUNIQUE関数ページに個別の明記はなく、他の多くのExcel関数に共通する一般的な文字列比較ルールに基づく整理です）。</p>



<p class="wp-block-paragraph">事前に<code>ASC</code>関数や<code>TRIM</code>関数で表記をそろえてから渡すのが確実です。</p>



<h3 class="wp-block-heading"><span id="toc29">複数列を指定するときの注意点は？</span></h3>



<p class="wp-block-paragraph">複数列を渡すと「行全体の組み合わせ」で重複が判定されます。1列でも値が違えば、別の行として残ります。判定に関係ない列まで含めると、重複が消えません。</p>



<p class="wp-block-paragraph">たとえば氏名・部署・登録日時の3列を渡した場合、登録日時が違うだけで別人扱いになります。判定に使いたい列だけを範囲に含めるのがコツ。</p>



<p class="wp-block-paragraph">なお、指定できるのは連続した列だけです。離れた列どうしを組み合わせたいときは、作業列を使いましょう。<code>=A2&"_"&D2</code> のような連結値を作り、その列をUNIQUE関数に渡すと確実ですよ。</p>



<h3 class="wp-block-heading"><span id="toc30">UNIQUE関数とCOUNTIF関数はどちらを使うべきですか？</span></h3>



<p class="wp-block-paragraph">目的が違うので、そもそも競合しません。重複を除いた「一覧」がほしいならUNIQUE関数。どの行が重複しているかの「判定」がほしいならCOUNTIF関数です。</p>



<p class="wp-block-paragraph">一覧に件数を添えたいなら、両方を組み合わせるのが正解。<code>=UNIQUE(A2:A8)</code> で一覧を作ります。隣の列に <code>=COUNTIF($A$2:$A$8,F2#)</code> を置けば、担当者ごとの件数まで並びますよ。</p>



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



<p class="wp-block-paragraph">ExcelのUNIQUE関数について、基本の使い方からエラー対処まで解説しました。ポイントをおさらいしておきましょう。</p>



<ul class="wp-block-list"><li><code>=UNIQUE(A2:A8)</code> と書くだけで、重複を除いた一覧がスピルで展開される</li><li>結果は<strong>元データの初出順</strong>。並べ替えたいならSORT関数と組み合わせる</li><li>複数列を渡すと<strong>行全体の組み合わせ</strong>で判定され、同姓同名も区別できる</li><li>第3引数をTRUEにすると「1回だけ出現した値」だけが返る</li><li>元データを壊さず自動更新される点が「重複の削除」機能との最大の違い</li><li>「0」が出たら空白セル、<code>#SPILL!</code>が出たら展開先、<code>#NAME?</code>が出たらバージョンを疑う</li><li>全角・半角や前後の空白は区別されることが多いので、事前にそろえておくと安心</li><li>対応はMicrosoft 365 / Excel 2024 / Excel 2021 / Excel for the webなど。2019以前は非対応</li></ul>



<p class="wp-block-paragraph">GoogleスプレッドシートにもUNIQUE関数があります。構文は <code>UNIQUE(範囲, 列で判定, 完全一致)</code>。引数の数・並び・既定値（いずれもFALSE）はExcel版とほぼ同じです。</p>



<p class="wp-block-paragraph">Sheets版の使い方は<a href="https://mashukabu.com/spreadsheet-unique-function/">スプレッドシートのUNIQUE関数の使い方｜重複を瞬時に除去</a>で解説しています。</p>



<p class="wp-block-paragraph">まずは手元のリストで <code>=UNIQUE(範囲)</code> を試してみてください。慣れてきたらSORT関数やFILTER関数を重ねていくと、毎月のコピペ作業が一気に減りますよ。</p>



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



<h3 class="wp-block-heading"><span id="toc32">この記事で紹介した関数・関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-sort/">SORT関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-sortby/">SORTBY関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-countif/">COUNTIF関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-countifs/">COUNTIFS関数の使い方</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-count/">COUNT関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-textjoin/">TEXTJOIN関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-tocol/">TOCOL関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-xlookup/">XLOOKUP関数の使い方</a></li><li><a href="https://mashukabu.com/excel-unique-filter-sort-sequence-spill/">スピル（動的配列）で集計・抽出を自動化する</a></li><li><a href="https://mashukabu.com/sheets-unique-sequence-sort-dynamic-list/">スプレッドシートのUNIQUE・SEQUENCE・SORT関数で動的リストを作る方法</a></li><li><a href="https://mashukabu.com/excel-function/">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-unique/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのDCOUNT関数の使い方｜条件に一致する数値データの個数を数える</title>
		<link>https://mashukabu.com/excel-function-howto-use-dcount/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-dcount/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Tue, 14 Feb 2023 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[COUNTIF]]></category>
		<category><![CDATA[DCOUNT]]></category>
		<category><![CDATA[DCOUNTA]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[データベース関数]]></category>
		<category><![CDATA[条件付きカウント]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=2805</guid>

					<description><![CDATA[ExcelのDCOUNT関数の使い方を解説。構文・引数の意味から実践例、AND/OR条件、DCOUNTA関数やCOUNTIF関数との使い分けまでわかりやすく紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Excelで「営業部の売上データが何件あるか数えたい」「特定の条件に一致する数値データだけをカウントしたい」と思ったことはありませんか？</p>



<p class="wp-block-paragraph">データ量が多くなると、フィルターで絞り込んで手動で数えるのは手間がかかりますよね。条件を変えるたびにやり直すのも面倒です。</p>



<p class="wp-block-paragraph">そんなときに便利なのがExcelの <strong>DCOUNT関数</strong> です。条件に一致するレコードの中から、数値が入っているセルの個数を自動で数えてくれますよ。</p>



<p class="wp-block-paragraph">この記事では、DCOUNT関数の基本的な書き方から複数条件・OR条件・期間指定などの応用例まで解説します。よくあるエラーの対処法や、似た関数との使い分けもあわせて紹介しますね。</p>




  <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">ExcelのDCOUNT関数とは？</a></li><li><a href="#toc2" tabindex="0">ExcelのDCOUNT関数の書き方（構文と引数）</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">DCOUNT関数の基本的な使い方</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">DCOUNT関数の応用：複数条件やOR条件でカウントする</a><ol><li><a href="#toc10" tabindex="0">AND条件（すべての条件を同時に満たす）</a></li><li><a href="#toc11" tabindex="0">OR条件（いずれかの条件を満たす）</a></li><li><a href="#toc12" tabindex="0">数値の範囲条件（◯以上◯以下）</a></li></ol></li><li><a href="#toc13" tabindex="0">DCOUNT関数でよくあるエラーと対処法</a><ol><li><a href="#toc14" tabindex="0">#VALUE! エラー</a></li><li><a href="#toc15" tabindex="0">結果が0になる</a></li><li><a href="#toc16" tabindex="0">#NAME? エラー</a></li></ol></li><li><a href="#toc17" tabindex="0">DCOUNT関数と似た関数の違い・使い分け</a><ol><li><a href="#toc18" tabindex="0">DCOUNT関数とDCOUNTA関数の違い</a></li><li><a href="#toc19" tabindex="0">DCOUNT関数とCOUNTIF関数の違い</a></li></ol></li><li><a href="#toc20" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">DCOUNT関数は「ディーカウント」と読みます。Database COUNTの略で、データベース形式の表から条件に一致するレコードの「数値データの個数」を求める関数です。</p>



<p class="wp-block-paragraph">Excelにはデータベース関数と呼ばれるグループがあります。DCOUNT関数はそのひとつで、<a href="https://mashukabu.com/excel-function-howto-use-dcounta/">DCOUNTA関数</a>（空白以外をカウント）や<a href="https://mashukabu.com/excel-function-howto-use-daverage/">DAVERAGE関数</a>（条件付き平均）と同じ仲間です。</p>



<p class="wp-block-paragraph">データベース関数の特徴は、条件をセル上に書き出して指定するところです。数式の中に条件を埋め込まないので、条件を変えたいときはセルの値を書き換えるだけで済みますよ。</p>



<p class="wp-block-paragraph">DCOUNT関数の大きなポイントは <strong>数値データだけを数える</strong> ところです。文字列や空白はカウントしません。「売上が入力されているレコードだけ数えたい」「テストの点数が記録されている人数を知りたい」といった場面にぴったりですね。</p>



<p class="wp-block-paragraph">DCOUNT関数はExcel 2003以降のすべてのバージョンで使えます。Googleスプレッドシートでも同じ書き方で動くので、覚えておくと活用の幅が広がりますよ。</p>



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



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



<pre class="wp-block-code"><code>=DCOUNT(データベース, フィールド, 検索条件)</code></pre>



<p class="wp-block-paragraph">引数は3つあり、すべて必須です。</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>見出し行を含むセル範囲（例: A1:D10）</td></tr><tr><td>フィールド</td><td>必須</td><td>カウント対象の列の見出し名（&#8221;売上&#8221;）または列番号（1始まり）</td></tr><tr><td>検索条件</td><td>必須</td><td>見出し行＋条件値を含むセル範囲</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><strong>データベース</strong> には、表全体を見出し行ごと指定します。見出し行がないと正しく動作しないので注意してください。</p>



<p class="wp-block-paragraph"><strong>フィールド</strong> には、数値を数えたい列を指定します。指定方法は2通りあります。</p>



<figure class="wp-block-table"><table><thead><tr><th>指定方法</th><th>書き方の例</th><th>説明</th></tr></thead><tbody><tr><td>列の見出し名をダブルクォーテーションで囲む</td><td>&#8220;売上&#8221;</td><td>見出しが「売上」の列を対象にする</td></tr><tr><td>列番号を数値で指定する</td><td>4</td><td>左端から4番目の列を対象にする</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">見出し名で指定するほうが数式の意味がわかりやすいので、基本的にはこちらをおすすめしますよ。</p>



<p class="wp-block-paragraph"><strong>検索条件</strong> には、見出し行と条件値がセットになったセル範囲を指定します。条件範囲はデータベースの範囲と重ならない場所に作ってください。重なっていると正しい結果が返りません。</p>



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



<p class="wp-block-paragraph">ここでは、社員データから特定の部署で売上データが入っている人数を求める例で解説します。</p>



<h3 class="wp-block-heading"><span id="toc6">サンプルデータ</span></h3>



<p class="wp-block-paragraph">以下のような社員リストがA1:D7に入っているとします。</p>



<figure class="wp-block-table"><table><thead><tr><th>名前</th><th>部署</th><th>年齢</th><th>売上</th></tr></thead><tbody><tr><td>田中</td><td>営業部</td><td>32</td><td>450</td></tr><tr><td>佐藤</td><td>総務部</td><td>28</td><td>&nbsp;</td></tr><tr><td>鈴木</td><td>営業部</td><td>45</td><td>620</td></tr><tr><td>高橋</td><td>開発部</td><td>35</td><td>&nbsp;</td></tr><tr><td>伊藤</td><td>営業部</td><td>29</td><td>380</td></tr><tr><td>渡辺</td><td>総務部</td><td>41</td><td>&nbsp;</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">総務部と開発部の売上列は空白になっています。DCOUNT関数は数値だけを数えるので、空白セルはカウントされません。</p>



<h3 class="wp-block-heading"><span id="toc7">条件の設定</span></h3>



<p class="wp-block-paragraph">F1:F2に条件を入力します。</p>



<figure class="wp-block-table"><table><thead><tr><th>F1</th><th>F2</th></tr></thead><tbody><tr><td>部署</td><td>営業部</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">F1にはデータベースの見出しと同じ文字列を入力します。F2には抽出条件の値を入力します。</p>



<h3 class="wp-block-heading"><span id="toc8">数式の入力</span></h3>



<p class="wp-block-paragraph">営業部で売上データが入っている人数を求める数式は次のとおりです。</p>



<pre class="wp-block-code"><code>=DCOUNT(A1:D7, &quot;売上&quot;, F1:F2)</code></pre>



<p class="wp-block-paragraph">この数式は「A1:D7のデータベースから、部署が営業部のレコードを探して、売上列に数値が入っているセルの個数を返す」という意味です。</p>



<p class="wp-block-paragraph">営業部のメンバーは田中（450）、鈴木（620）、伊藤（380）の3人で、全員売上が入っています。結果は <strong>3</strong> になります。</p>



<p class="wp-block-paragraph">条件を「総務部」に変えるとF2のセルを書き換えるだけでOKです。総務部は佐藤と渡辺の2人ですが、売上列が空白なので結果は <strong>0</strong> になりますよ。</p>



<h2 class="wp-block-heading"><span id="toc9">DCOUNT関数の応用：複数条件やOR条件でカウントする</span></h2>



<h3 class="wp-block-heading"><span id="toc10">AND条件（すべての条件を同時に満たす）</span></h3>



<p class="wp-block-paragraph">複数の条件をすべて満たすレコードの数値データを数えるには、条件を <strong>同じ行</strong> に並べます。</p>



<p class="wp-block-paragraph">たとえば「営業部」かつ「年齢が30以上」で売上データがあるレコードを数えるには、条件範囲を次のように設定します。</p>



<figure class="wp-block-table"><table><thead><tr><th>F1</th><th>G1</th></tr></thead><tbody><tr><td>部署</td><td>年齢</td></tr><tr><td>営業部</td><td>>=30</td></tr></tbody></table></figure>



<pre class="wp-block-code"><code>=DCOUNT(A1:D7, &quot;売上&quot;, F1:G2)</code></pre>



<p class="wp-block-paragraph">営業部かつ30歳以上は田中（32歳・450）と鈴木（45歳・620）の2人です。どちらも売上に数値が入っているので、結果は <strong>2</strong> になります。</p>



<h3 class="wp-block-heading"><span id="toc11">OR条件（いずれかの条件を満たす）</span></h3>



<p class="wp-block-paragraph">いずれかの条件を満たすレコードの数値データを数えるには、条件を <strong>別の行</strong> に書きます。</p>



<p class="wp-block-paragraph">たとえば「営業部」または「開発部」で売上データがあるレコードを数えるには、条件範囲を次のように設定します。</p>



<figure class="wp-block-table"><table><thead><tr><th>F1</th></tr></thead><tbody><tr><td>部署</td></tr><tr><td>営業部</td></tr><tr><td>開発部</td></tr></tbody></table></figure>



<pre class="wp-block-code"><code>=DCOUNT(A1:D7, &quot;売上&quot;, F1:F3)</code></pre>



<p class="wp-block-paragraph">営業部は田中・鈴木・伊藤の3人で全員売上あり。開発部は高橋の1人で売上は空白です。数値が入っているのは3件なので、結果は <strong>3</strong> になります。</p>



<h3 class="wp-block-heading"><span id="toc12">数値の範囲条件（◯以上◯以下）</span></h3>



<p class="wp-block-paragraph">「売上が400以上700以下」のような範囲指定も、同じ列の見出しを2つ並べてAND条件で表現します。</p>



<figure class="wp-block-table"><table><thead><tr><th>F1</th><th>G1</th></tr></thead><tbody><tr><td>売上</td><td>売上</td></tr><tr><td>>=400</td><td><=700</td></tr></tbody></table></figure>



<pre class="wp-block-code"><code>=DCOUNT(A1:D7, &quot;売上&quot;, F1:G2)</code></pre>



<p class="wp-block-paragraph">400以上700以下にあてはまるのは田中（450）、鈴木（620）の2人なので、結果は <strong>2</strong> です。「100以上」「2026年4月以前」のような期間集計もこのパターンで対応できますよ。</p>



<p class="wp-block-paragraph">AND条件とOR条件の使い分けがデータベース関数のポイントです。「同じ行に書けばAND、別の行に書けばOR」と覚えておけば迷いませんよ。</p>



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



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



<p class="wp-block-paragraph">フィールド名が間違っている場合に発生します。</p>



<ul class="wp-block-list"><li><strong>原因</strong>: フィールドに指定した見出し名がデータベースの見出し行に存在しない</li><li><strong>対処法</strong>: ダブルクォーテーションの中の文字列が、データベースの見出し行と完全に一致しているか確認してください。スペースの有無や全角半角の違いにも注意しましょう</li></ul>



<p class="wp-block-paragraph">フィールドを列番号で指定しているときは、番号が列数の範囲内に収まっているかも確認してみてください。</p>



<h3 class="wp-block-heading"><span id="toc15">結果が0になる</span></h3>



<p class="wp-block-paragraph">条件に一致するレコードがないか、対象列に数値が入っていない場合に起こります。</p>



<ul class="wp-block-list"><li><strong>原因1</strong>: 検索条件の値が正しくない（スペルミス、全角半角の違いなど）</li><li><strong>原因2</strong>: フィールドで指定した列に文字列しか入っていない</li><li><strong>原因3</strong>: 条件範囲の見出しがデータベースの見出しと一致していない</li><li><strong>対処法</strong>: 条件の値と見出しが正しいか確認してください。DCOUNT関数は数値だけを数えるので、文字列をカウントしたい場合は<a href="https://mashukabu.com/excel-function-howto-use-dcounta/">DCOUNTA関数</a>を使いましょう</li></ul>



<h3 class="wp-block-heading"><span id="toc16">#NAME? エラー</span></h3>



<p class="wp-block-paragraph">数式の入力ミスで発生します。</p>



<ul class="wp-block-list"><li><strong>原因</strong>: 関数名のスペルミス、またはフィールド名のダブルクォーテーション忘れ</li><li><strong>対処法</strong>: 「DCOUNT」のスペルを確認してください。フィールド名を文字列で指定する場合は <code>"売上"</code> のようにダブルクォーテーションで囲む必要があります</li></ul>



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



<h3 class="wp-block-heading"><span id="toc18">DCOUNT関数とDCOUNTA関数の違い</span></h3>



<p class="wp-block-paragraph">いちばん混同しやすいのがDCOUNT関数と<a href="https://mashukabu.com/excel-function-howto-use-dcounta/">DCOUNTA関数</a>です。違いはカウント対象にあります。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>DCOUNT関数</th><th><a href="https://mashukabu.com/excel-function-howto-use-dcounta/">DCOUNTA関数</a></th></tr></thead><tbody><tr><td>カウント対象</td><td>数値のみ</td><td>空白以外すべて（文字列・数値・日付など）</td></tr><tr><td>空白セル</td><td>カウントしない</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">先ほどのサンプルデータで比べてみます。</p>



<ul class="wp-block-list"><li><code>=DCOUNT(A1:D7, "売上", F1:F2)</code> → <strong>3</strong>（数値が入っている田中・鈴木・伊藤をカウント）</li><li><code>=DCOUNTA(A1:D7, "売上", F1:F2)</code> → <strong>3</strong>（空白以外をカウント、この例では同じ結果）</li></ul>



<p class="wp-block-paragraph">もし売上列に「未確定」のような文字列が入っているセルがあった場合、DCOUNT関数は数えませんがDCOUNTA関数は数えます。「数値だけ数えたい」ならDCOUNT関数、「空白以外を数えたい」ならDCOUNTA関数を選んでください。</p>



<h3 class="wp-block-heading"><span id="toc19">DCOUNT関数とCOUNTIF関数の違い</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-countif/">COUNTIF関数</a>も条件付きカウントができますが、仕組みが異なります。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>DCOUNT関数</th><th><a href="https://mashukabu.com/excel-function-howto-use-countif/">COUNTIF関数</a> / <a href="https://mashukabu.com/excel-function-howto-use-countifs/">COUNTIFS関数</a></th></tr></thead><tbody><tr><td>条件の指定方法</td><td>セル範囲で指定（条件表を作る）</td><td>数式の中に直接書く</td></tr><tr><td>カウント対象</td><td>数値のみ</td><td>条件に一致するセルすべて</td></tr><tr><td>複数条件</td><td>AND/OR条件を行の並びで表現</td><td>COUNTIFS関数を使う</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"><strong>DCOUNT関数が向いているケース:</strong></p>



<ul class="wp-block-list"><li>条件をユーザーが自由に切り替えたいとき</li><li>AND条件とOR条件を組み合わせた複雑な抽出をしたいとき</li><li>データベース関数ファミリー（<a href="https://mashukabu.com/excel-function-howto-use-daverage/">DAVERAGE</a>・<a href="https://mashukabu.com/excel-function-howto-use-dget/">DGET</a>・<a href="https://mashukabu.com/excel-function-howto-use-dproduct/">DPRODUCT</a>など）と一緒に使うとき</li></ul>



<p class="wp-block-paragraph"><strong>COUNTIF関数が向いているケース:</strong></p>



<ul class="wp-block-list"><li>条件がシンプルで固定されているとき</li><li>条件表を別に作りたくないとき</li></ul>



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



<p class="wp-block-paragraph">この記事では、ExcelのDCOUNT関数の使い方を解説しました。</p>



<ul class="wp-block-list"><li>DCOUNT関数は、データベース形式の表から条件に一致するレコードの「数値データの個数」を数える関数</li><li>引数は「データベース」「フィールド」「検索条件」の3つで、すべて必須</li><li>数値だけをカウントする（文字列や空白はカウントしない）</li><li>AND条件は同じ行、OR条件は別の行に条件を書く</li><li>同じ列の見出しを並べると「以上以下」の範囲条件も指定できる</li><li>文字列も含めて数えたい場合は<a href="https://mashukabu.com/excel-function-howto-use-dcounta/">DCOUNTA関数</a>を使う</li></ul>



<p class="wp-block-paragraph">データベース関数は条件をセル上で管理できるのが最大のメリットです。フィルターをかけて手動で数える作業から卒業して、DCOUNT関数で効率的にデータ集計をしてみてくださいね。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-dcount/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのSUMIF関数の使い方｜条件別4パターン完全ガイド</title>
		<link>https://mashukabu.com/excel-function-howto-use-sumif/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-sumif/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Mon, 21 Feb 2022 12:32:50 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[COUNTIF]]></category>
		<category><![CDATA[SUMIF]]></category>
		<category><![CDATA[SUMIFS]]></category>
		<category><![CDATA[ワイルドカード]]></category>
		<category><![CDATA[条件付き合計]]></category>
		<category><![CDATA[比較演算子]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=1219</guid>

					<description><![CDATA[ExcelのSUMIF関数の使い方を解説。引数3つの意味から、文字列・数値比較・ワイルドカード・日付の条件パターン4種を豊富な例で紹介。結果が0になる原因と対処法も丁寧に説明します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「りんごの売上だけ合計したい」「営業部の経費だけ集計したい」。Excelで条件付きの合計をしたい場面、よくありますよね。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-sum/">SUM関数</a>で手作業で足していくのは現実的ではありません。データが増えるたびに数式を直すのも手間です。</p>



<p class="wp-block-paragraph">そんなときはSUMIF関数を使いましょう。この記事では基本の書き方から条件パターン4種、0になるときの対処法まで解説します。</p>




  <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">SUMIF関数とは？何ができる関数か</a></li><li><a href="#toc2" tabindex="0">SUMIF関数の書き方（構文と引数）</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">SUMIF関数の基本的な使い方</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">SUMIF関数の条件指定テクニック</a><ol><li><a href="#toc10" tabindex="0">比較演算子で数値条件を指定する（以上・以下）</a></li><li><a href="#toc11" tabindex="0">ワイルドカードで部分一致検索する</a></li><li><a href="#toc12" tabindex="0">日付を条件にする</a></li><li><a href="#toc13" tabindex="0">不一致（○○以外）で絞り込む</a></li></ol></li><li><a href="#toc14" tabindex="0">SUMIF関数の実務活用パターン</a><ol><li><a href="#toc15" tabindex="0">パターン1: 部署別の経費集計</a></li><li><a href="#toc16" tabindex="0">パターン2: ワイルドカードでカテゴリ集計</a></li><li><a href="#toc17" tabindex="0">パターン3: 基準値以上の売上を集計</a></li><li><a href="#toc18" tabindex="0">パターン4: 空白以外のセルだけを合計</a></li></ol></li><li><a href="#toc19" tabindex="0">SUMIF関数の結果が0になる原因と対処法</a></li><li><a href="#toc20" tabindex="0">SUMIF関数とSUMIFS関数の違い</a></li><li><a href="#toc21" tabindex="0">似た関数との違い・使い分け</a></li><li><a href="#toc22" tabindex="0">まとめ</a><ol><li><a href="#toc23" tabindex="0">この記事で紹介した関数・関連記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">SUMIF関数とは？何ができる関数か</span></h2>



<p class="wp-block-paragraph">SUMIF関数は、条件に一致するセルだけを合計する関数です。</p>



<p class="wp-block-paragraph">読み方は「サムイフ」です。SUM（合計）とIF（もし）を組み合わせた名前になっています。「もし条件に合えば合計する」という意味ですね。</p>



<p class="wp-block-paragraph">たとえば売上表で「りんご」の金額だけを合計したい場合を考えてみましょう。商品名の列から「りんご」を探し、該当する行の金額を自動で合計してくれます。</p>



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



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



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



<pre class="wp-block-code"><code>=SUMIF(範囲, 検索条件, [合計範囲])</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>条件を検索するセル範囲（例: A2:A7）</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">第3引数の「合計範囲」は省略できます。省略すると「範囲」そのものが合計対象になります。ただし実務では範囲と合計範囲を分けるのが一般的です。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>合計範囲は先頭セルだけ合わせればOK</strong></p><p>合計範囲は範囲と同じサイズにするのが基本です。Excelの仕様では、合計範囲の<strong>先頭セル</strong>を基準に範囲と同じサイズで自動展開されます。たとえば範囲がA2:A7なら、合計範囲にC2だけ指定してもC2:C7として処理されますよ。</p></blockquote>



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



<p class="wp-block-paragraph">この記事では以下の売上データを使って解説します。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A列（商品名）</th><th>B列（数量）</th><th>C列（金額）</th></tr></thead><tbody><tr><td>2行目</td><td>りんご</td><td>5</td><td>500</td></tr><tr><td>3行目</td><td>みかん</td><td>8</td><td>400</td></tr><tr><td>4行目</td><td>りんご</td><td>3</td><td>300</td></tr><tr><td>5行目</td><td>バナナ</td><td>10</td><td>600</td></tr><tr><td>6行目</td><td>みかん</td><td>6</td><td>360</td></tr><tr><td>7行目</td><td>りんご</td><td>4</td><td>400</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc6">文字列で条件を指定する（完全一致）</span></h3>



<p class="wp-block-paragraph">「りんご」の売上金額を合計するには次のように入力します。</p>



<pre class="wp-block-code"><code>=SUMIF(A2:A7,&quot;りんご&quot;,C2:C7)</code></pre>



<ul class="wp-block-list"><li><strong>A2:A7</strong>（範囲）: 商品名から「りんご」を探す</li><li><strong>&#8220;りんご&#8221;</strong>（検索条件）: 完全一致で絞り込む</li><li><strong>C2:C7</strong>（合計範囲）: 一致した行の金額を合計する</li></ul>



<p class="wp-block-paragraph">A2・A4・A7が「りんご」なので、500 + 300 + 400 = <strong>1,200</strong> が結果です。</p>



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



<p class="wp-block-paragraph">条件をセル参照にすると、集計の切り替えが簡単です。E2セルに商品名を入力して数式で参照しましょう。</p>



<pre class="wp-block-code"><code>=SUMIF(A2:A7,E2,C2:C7)</code></pre>



<p class="wp-block-paragraph">E2を「みかん」にすれば760、「バナナ」にすれば600に自動で切り替わります。ドロップダウンリストと組み合わせると便利ですよ。</p>



<h2 class="wp-block-heading"><span id="toc8">条件パターン別の書き方早見表</span></h2>



<p class="wp-block-paragraph">SUMIF関数で使える条件パターンを一覧にまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>パターン</th><th>書き方の例</th><th>意味</th></tr></thead><tbody><tr><td>完全一致</td><td>&#8220;りんご&#8221;</td><td>「りんご」と一致</td></tr><tr><td>セル参照</td><td>E2</td><td>E2の値と一致</td></tr><tr><td>以上</td><td>&#8220;>=500&#8221;</td><td>500以上</td></tr><tr><td>より大きい</td><td>&#8220;>500&#8221;</td><td>500より大きい</td></tr><tr><td>以下</td><td>&#8220;<=300"</td><td>300以下</td></tr><tr><td>未満</td><td>&#8220;<300"</td><td>300未満</td></tr><tr><td>不一致</td><td>&#8220;<>りんご&#8221;</td><td>りんご以外</td></tr><tr><td>前方一致</td><td>&#8220;り*&#8221;</td><td>「り」で始まる</td></tr><tr><td>後方一致</td><td>&#8220;*ご&#8221;</td><td>「ご」で終わる</td></tr><tr><td>部分一致</td><td>&#8220;<em>かん</em>&#8220;</td><td>「かん」を含む</td></tr><tr><td>任意の1文字</td><td>&#8220;?かん&#8221;</td><td>2文字目以降が「かん」</td></tr><tr><td>空白以外</td><td>&#8220;<>&#8220;</td><td>空白でないセル</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">文字列や比較演算子はダブルクォーテーションで囲むのがポイントです。</p>



<h2 class="wp-block-heading"><span id="toc9">SUMIF関数の条件指定テクニック</span></h2>



<h3 class="wp-block-heading"><span id="toc10">比較演算子で数値条件を指定する（以上・以下）</span></h3>



<p class="wp-block-paragraph">金額が500以上の合計を求めてみましょう。</p>



<pre class="wp-block-code"><code>=SUMIF(C2:C7,&quot;&gt;=500&quot;,C2:C7)</code></pre>



<p class="wp-block-paragraph">500・600・400のうち500以上は500と600です。結果は <strong>1,100</strong> になります。</p>



<p class="wp-block-paragraph">セル参照と演算子を組み合わせることもできます。E2セルに基準値が入っている場合は次のように書きます。</p>



<pre class="wp-block-code"><code>=SUMIF(C2:C7,&quot;&gt;=&quot;&amp;E2,C2:C7)</code></pre>



<p class="wp-block-paragraph">演算子を &#8220;&#8221; で囲み、&#038; でセル参照と連結するのがポイントです。</p>



<h3 class="wp-block-heading"><span id="toc11">ワイルドカードで部分一致検索する</span></h3>



<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>*</td><td>任意の文字列（0文字以上）</td><td>&#8220;り*&#8221;</td><td>りんご</td></tr><tr><td>?</td><td>任意の1文字</td><td>&#8220;?かん&#8221;</td><td>みかん</td></tr><tr><td>~*</td><td>*そのものを検索</td><td>&#8220;~*付き&#8221;</td><td>*付き</td></tr><tr><td>~?</td><td>?そのものを検索</td><td>&#8220;~?マーク&#8221;</td><td>?マーク</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">「り」で始まる商品の金額合計を求める例です。</p>



<pre class="wp-block-code"><code>=SUMIF(A2:A7,&quot;り*&quot;,C2:C7)</code></pre>



<p class="wp-block-paragraph">「りんご」が該当するので、結果は500 + 300 + 400 = <strong>1,200</strong> です。データに * や ? そのものが含まれる場合は、チルダ ~ でエスケープしてください。</p>



<h3 class="wp-block-heading"><span id="toc12">日付を条件にする</span></h3>



<p class="wp-block-paragraph">日付で絞り込む場合は、<a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a>と比較演算子を組み合わせます。</p>



<pre class="wp-block-code"><code>=SUMIF(A2:A100,&quot;&gt;=&quot;&amp;DATE(2026,4,1),B2:B100)</code></pre>



<p class="wp-block-paragraph">日付を直接文字列で指定すると環境によって解釈が変わります。DATE関数を使うのが確実ですよ。</p>



<h3 class="wp-block-heading"><span id="toc13">不一致（○○以外）で絞り込む</span></h3>



<p class="wp-block-paragraph">「りんご以外」の金額合計を出すには <> を使います。</p>



<pre class="wp-block-code"><code>=SUMIF(A2:A7,&quot;&lt;&gt;りんご&quot;,C2:C7)</code></pre>



<p class="wp-block-paragraph">みかん400 + バナナ600 + みかん360 = <strong>1,360</strong> が結果です。</p>



<p class="wp-block-paragraph">空白セルを除外したい場合は &#8220;<>&#8221; を指定します。</p>



<pre class="wp-block-code"><code>=SUMIF(A2:A7,&quot;&lt;&gt;&quot;,C2:C7)</code></pre>



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



<h3 class="wp-block-heading"><span id="toc15">パターン1: 部署別の経費集計</span></h3>



<p class="wp-block-paragraph">A列に部署名、C列に金額が入ったデータから、特定の部署だけ合計できます。</p>



<pre class="wp-block-code"><code>=SUMIF(A2:A100,&quot;営業部&quot;,C2:C100)</code></pre>



<p class="wp-block-paragraph">ドロップダウンでセル参照にすれば切り替えも簡単です。<a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数</a>と組み合わせて予算超過の判定を加えることもできますよ。</p>



<h3 class="wp-block-heading"><span id="toc16">パターン2: ワイルドカードでカテゴリ集計</span></h3>



<p class="wp-block-paragraph">カテゴリ名にサブカテゴリが含まれる場合、ワイルドカードが便利です。</p>



<pre class="wp-block-code"><code>=SUMIF(A2:A100,&quot;飲料*&quot;,C2:C100)</code></pre>



<p class="wp-block-paragraph">「飲料・炭酸」「飲料・お茶」など、「飲料」で始まるすべての行を合計できます。</p>



<h3 class="wp-block-heading"><span id="toc17">パターン3: 基準値以上の売上を集計</span></h3>



<p class="wp-block-paragraph">数量が一定以上のデータだけを集計したい場合です。</p>



<pre class="wp-block-code"><code>=SUMIF(B2:B7,&quot;&gt;=&quot;&amp;E1,C2:C7)</code></pre>



<p class="wp-block-paragraph">E1セルに基準値を入れておけば、条件を柔軟に変更できます。達成件数を知りたいときは<a href="https://mashukabu.com/excel-function-howto-use-countif/">COUNTIF関数</a>を使ってみてください。</p>



<h3 class="wp-block-heading"><span id="toc18">パターン4: 空白以外のセルだけを合計</span></h3>



<p class="wp-block-paragraph">データに空白行が混在している場合の対処法です。</p>



<pre class="wp-block-code"><code>=SUMIF(A2:A100,&quot;&lt;&gt;&quot;,C2:C100)</code></pre>



<p class="wp-block-paragraph">商品名が入力されている行の金額だけを合計できます。<a href="https://mashukabu.com/excel-function-howto-use-sum/">SUM関数</a>は空白を自動スキップしますが、「条件列が空白でない行だけ合計」にはSUMIFが必要です。</p>



<h2 class="wp-block-heading"><span id="toc19">SUMIF関数の結果が0になる原因と対処法</span></h2>



<p class="wp-block-paragraph">SUMIF関数で最も多いトラブルが「結果が0になる」ケースです。原因と対処法をまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>原因</th><th>症状</th><th>対処法</th></tr></thead><tbody><tr><td>余分なスペース</td><td>「りんご 」と「りんご」が不一致</td><td><a href="https://mashukabu.com/excel-function-howto-use-trim/">TRIM関数</a>でスペースを除去</td></tr><tr><td>全角・半角の不一致</td><td>「ABC」と「ＡＢＣ」が不一致</td><td>ASC関数で半角に統一</td></tr><tr><td>文字列型の数値</td><td>数値に見えるが左揃え</td><td><a href="https://mashukabu.com/excel-function-howto-use-value/">VALUE関数</a>で数値に変換</td></tr><tr><td>範囲の先頭行ずれ</td><td>検索範囲と合計範囲の行が不一致</td><td>両方の先頭行を揃える</td></tr><tr><td>ダブルクォート忘れ</td><td>=SUMIF(A:A,りんご,C:C)</td><td>&#8220;りんご&#8221; と囲む</td></tr><tr><td>ワイルドカードを数値列に使用</td><td>数値にはワイルドカード不可</td><td>比較演算子に変更</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">結果がおかしいと感じたら、次の手順で確認してみてください。</p>



<ol class="wp-block-list"><li>セルをダブルクリックして前後のスペースを確認</li><li>セルの表示形式を確認（左揃え＝文字列の可能性）</li><li><a href="https://mashukabu.com/excel-function-howto-use-countif/">COUNTIF関数</a>で一致件数を調べる</li></ol>



<pre class="wp-block-code"><code>=COUNTIF(A2:A7,&quot;りんご&quot;)</code></pre>



<p class="wp-block-paragraph">この結果が0なら、条件ではなくデータ側に問題があります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>SUMIF関数は大文字・小文字を区別しません</strong></p><p>「Apple」と「apple」は同じ条件として扱われます。区別して集計したい場合は<a href="https://mashukabu.com/excel-function-howto-use-sumproduct/">SUMPRODUCT関数</a>とEXACT関数の組み合わせが必要です。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc20">SUMIF関数とSUMIFS関数の違い</span></h2>



<p class="wp-block-paragraph">SUMIF関数とよく混同されるのが<a href="https://mashukabu.com/excel-function-howto-use-sumifs/">SUMIFS関数</a>です。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>SUMIF</th><th>SUMIFS</th></tr></thead><tbody><tr><td>条件の数</td><td>1つだけ</td><td>複数（最大127個）</td></tr><tr><td>引数の順番</td><td>範囲 → 条件 → 合計範囲</td><td><strong>合計範囲</strong> → 条件範囲1 → 条件1 → &#8230;</td></tr><tr><td>ワイルドカード</td><td>使える</td><td>使える</td></tr><tr><td>比較演算子</td><td>使える</td><td>使える</td></tr><tr><td>対応バージョン</td><td>Excel 2003以降</td><td>Excel 2007以降</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">最大のポイントは<strong>引数の順番が違う</strong>ことです。</p>



<pre class="wp-block-code"><code>=SUMIF(A2:A7,&quot;りんご&quot;,C2:C7)
=SUMIFS(C2:C7,A2:A7,&quot;りんご&quot;)</code></pre>



<p class="wp-block-paragraph">SUMIF関数は「範囲→条件→合計範囲」の順です。SUMIFS関数は「合計範囲」が先頭に来ます。</p>



<p class="wp-block-paragraph">条件が1つならSUMIF関数のほうがシンプルです。条件が2つ以上になったら<a href="https://mashukabu.com/excel-function-howto-use-sumifs/">SUMIFS関数</a>に切り替えましょう。</p>



<p class="wp-block-paragraph">たとえば「りんご」かつ「数量5以上」で絞り込む場合です。</p>



<pre class="wp-block-code"><code>=SUMIFS(C2:C7,A2:A7,&quot;りんご&quot;,B2:B7,&quot;&gt;=5&quot;)</code></pre>



<p class="wp-block-paragraph">りんごかつ数量5以上は2行目（数量5、金額500）のみ該当します。結果は <strong>500</strong> になります。詳しくは<a href="https://mashukabu.com/excel-sumif-sumifs-sumproduct-comparison/">SUMIF・SUMIFS・SUMPRODUCT比較記事</a>も参考にしてみてください。</p>



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



<p class="wp-block-paragraph">条件付きの集計関数はSUMIF以外にもあります。目的に応じて使い分けましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>用途</th><th>条件数</th></tr></thead><tbody><tr><td>SUMIF</td><td>条件に合う数値を<strong>合計</strong></td><td>1つ</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-sumifs/">SUMIFS</a></td><td>複数条件で数値を<strong>合計</strong></td><td>複数</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-countif/">COUNTIF</a></td><td>条件に合うセルの<strong>個数</strong></td><td>1つ</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-countifs/">COUNTIFS</a></td><td>複数条件でセルの<strong>個数</strong></td><td>複数</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-averageif/">AVERAGEIF</a></td><td>条件に合う数値の<strong>平均</strong></td><td>1つ</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-averageifs/">AVERAGEIFS</a></td><td>複数条件で数値の<strong>平均</strong></td><td>複数</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">「数える」のが<a href="https://mashukabu.com/excel-function-howto-use-countif/">COUNTIF関数</a>、「足す」のがSUMIF関数です。「平均する」なら<a href="https://mashukabu.com/excel-function-howto-use-averageif/">AVERAGEIF関数</a>を使います。</p>



<p class="wp-block-paragraph">OR条件（いずれかに一致）で合計したい場合は、SUMIF関数を足し算するか<a href="https://mashukabu.com/excel-function-howto-use-sumproduct/">SUMPRODUCT関数</a>を使いましょう。</p>



<pre class="wp-block-code"><code>=SUMIF(A2:A7,&quot;りんご&quot;,C2:C7)+SUMIF(A2:A7,&quot;みかん&quot;,C2:C7)</code></pre>



<p class="wp-block-paragraph">りんご1,200 + みかん760 = <strong>1,960</strong> が結果です。</p>



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



<p class="wp-block-paragraph">SUMIF関数のポイントをおさらいしましょう。</p>



<ul class="wp-block-list"><li>SUMIF関数は「条件を1つ指定して合計する」関数</li><li>書き方: =SUMIF(範囲, 検索条件, [合計範囲])</li><li>比較演算子（>= / <> など）で以上・以下の条件を指定できる</li><li>ワイルドカード（* / ?）で部分一致の合計ができる</li><li>結果が0になったらスペース・全角半角・文字列型を確認</li><li>条件が2つ以上なら<a href="https://mashukabu.com/excel-function-howto-use-sumifs/">SUMIFS関数</a>に切り替え</li></ul>



<p class="wp-block-paragraph">SUMIF関数を使いこなせば、大量データから必要な数値だけを取り出せます。集計作業の効率が大幅にアップするので、ぜひ活用してみてください。</p>



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



<h3 class="wp-block-heading"><span id="toc23">この記事で紹介した関数・関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-sum/">SUM関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-sumifs/">SUMIFS関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-countif/">COUNTIF関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-countifs/">COUNTIFS関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-averageif/">AVERAGEIF関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-averageifs/">AVERAGEIFS関数の使い方</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-if/">IF関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-trim/">TRIM関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-value/">VALUE関数の使い方</a></li><li><a href="https://mashukabu.com/excel-sumif-sumifs-sumproduct-comparison/">SUMIF・SUMIFS・SUMPRODUCTの違い</a></li><li><a href="https://mashukabu.com/excel-error-value-list/">Excelエラー値一覧</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-sumif/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
