作る|重複なし一覧
UNIQUEで。
-
入力
=UNIQUE(範囲)。 -
展開
一覧が自動表示。
Office(オフィス)付きパソコンなら格安中古のPC STORE
最終更新日:2026年6月18日
Excel活用ガイド
同じ商品名が何度も出てくる表から、商品ごとの売上合計を出したい。でも重複が邪魔で、手作業でまとめると時間もかかるし、ミスも心配——。こんなとき、Excelには、重複を除いて集計する方法がいくつかあります。大切なのは、お使いのExcelのバージョンに合った方法を選ぶこと。UNIQUEやFILTERといった新しい関数は便利ですが、使える環境が限られます。この記事では、初めての方にもわかるように、4つの方法を、それぞれの長所・短所とともに、正直に解説します。専門用語には折りたたみの用語解説をつけました。
同じ商品名が何回も出てくる表で、商品ごとの売上合計を出したいんです。でも重複が邪魔で…。手作業でまとめると時間もかかるし、ミスも心配で。いい方法はないですか?
方法はいくつかあるよ。ただ、まず大事なのは、使えるExcelのバージョンで選ぶこと。新しい版(Microsoft 365やExcel 2021以降)なら、UNIQUEとSUMIFの組み合わせが分かりやすい。古い版なら、作業列やSUMPRODUCTを使う。まず自分の環境を確認してから、合った方法を選ぼう。それぞれ長所と短所があるから、順番に教えるね。
結論
Excelで、重複を含むデータから、ダブりを除いて集計する方法は、一つではありません。大きく分けて、(1)作業列とSUMIFを使う方法、(2)SUMPRODUCTで作業列なしに計算する方法、(3)UNIQUE関数で重複しない一覧を作りSUMIFで集計する方法、(4)FILTERなどの応用、があります。それぞれに、長所と短所があります。
ここで、いちばん大切なことを、先にお伝えします。それは、お使いのExcelのバージョンによって、使える方法が違う、ということです。とくに、UNIQUE・FILTER・SORTといった便利な新しい関数(動的配列関数)は、Microsoft 365、またはExcel 2021以降でないと使えません。Excel 2019以前のバージョンでは、これらの関数はエラーになります。ですから、まず、ご自身のExcelがどのバージョンかを確認するのが、出発点です。新しいバージョンなら、UNIQUE+SUMIFが分かりやすくおすすめです。古いバージョンでも、作業列やSUMPRODUCTを使えば、同じ集計が確実にできます。「古い方法だからダメ」ということはありません。環境に合った、確実に動く方法を選ぶのが、いちばん賢明です。この記事で、4つの方法を順に解説します。

方法を選ぶ前に、必ず確認したいことがあります。それは、お使いのExcelのバージョンです。これによって、使える関数が変わるからです。
この記事で紹介するUNIQUE関数やFILTER関数は、「動的配列」という比較的新しい仕組みを使った関数です。便利な反面、対応しているのは、Microsoft 365、またはExcel 2021以降のバージョンに限られます。正直にお伝えすると、Excel 2019やそれ以前のバージョンでは、これらの関数を入力してもエラー(#NAME?など)になり、使えません。一方、SUMIFやSUMPRODUCT、COUNTIFといった関数は、古いバージョンでも問題なく使えます。
つまり、お使いのExcelで新しい関数が使えるなら、後述のUNIQUE+SUMIFが分かりやすくおすすめです。使えないなら、作業列やSUMPRODUCTを使えば、同じ集計が確実にできます。バージョンは、Excelの「ファイル」→「アカウント」などから確認できます。どちらが優れている、という話ではなく、ご自身の環境で確実に動く方法を選ぶことが大切です。Excelの新しい関数全般は、検索のExcelのXLOOKUP関数の使い方もあわせてどうぞ。
「動的配列」は、一つの数式が、複数のセルにまたがる結果(配列)を一度に返せる、Excelの仕組みです。「スピル」は、その結果が、隣接するセルに自動的にあふれて表示される動作のことです。たとえばUNIQUE関数を1つのセルに入れるだけで、重複しない一覧が、下のセルへ自動で展開されます。この動的配列・スピルに対応した関数(UNIQUE、FILTER、SORTなど)は、Microsoft 365とExcel 2021以降で使えます。Excel 2019以前では使えないため、古いバージョンでは別の方法を使う必要があります。

まずは、どのバージョンでも確実に動く、基本の方法から。「作業列」を1列足して、重複の最初の1件だけに印をつけ、それを合計します。
やり方はこうです。元データの隣に作業列を作り、最初のデータ行に `=IF(COUNTIF($A$2:A2, A2)=1, 1, 0)` のような数式を入れて、下にコピーします。このCOUNTIF関数は、A列の値が、その行までに何回出てきたかを数えます。`$A$2:A2` という範囲指定が、下にコピーするほど `$A$2:A3`、`$A$2:A4` と自動で広がるのがポイントで、結果、各項目が「最初に出てきた行」にだけ「1」が入ります。あとは、SUMIFで、この作業列が「1」の行だけを合計すれば、重複を除いた集計ができます。
この方法の良さは、何といっても、どのバージョンのExcelでも確実に動くことです。新しい関数が使えない環境でも、安心して使えます。手順も、COUNTIFで印をつけてSUMIFで合計する、という論理が分かりやすいのも利点です。短所としては、元データに作業列を1列足す必要があること。見た目をすっきりさせたい場合は、後述の方法も検討しましょう。とはいえ、「確実に動く」ことの価値は大きく、古い方法と侮れない、堅実な選択肢です。
「作業列」は、計算の途中の判定や値を入れるために、一時的に作る列のことです。ここでは、各データが「最初の出現かどうか」を、1か0で示すために使います。「SUMIF関数」は、指定した条件に合う行だけの数値を合計する関数です。構文は `=SUMIF(条件の範囲, 条件, 合計する範囲)` です。作業列が「1」の行(=最初の出現)の金額だけを合計することで、重複を除いた合計が求められます。SUMIFは古いバージョンのExcelでも使えるため、この組み合わせは、環境を選ばず確実に動きます。

「作業列を足したくない」「表を汚さず、1つのセルで計算したい」。そんなときに使えるのが、SUMPRODUCT関数とCOUNTIFを組み合わせる方法です。
SUMPRODUCT関数は、配列(複数の値のまとまり)どうしを掛け合わせて合計する関数です。これとCOUNTIFを組み合わせると、各データの出現回数で割る、といった計算を一つの数式で行い、作業列なしに、重複を除いた集計ができます。たとえば、重複を除いた件数を数えたいときは、`=SUMPRODUCT(1/COUNTIF(範囲, 範囲))` のような形が使われます。これも、古いバージョンのExcelで動く方法です。
この方法の長所は、作業列がいらず、単一のセルで計算が完結し、表をすっきり保てることです。古いバージョンでも使えます。一方、正直にお伝えすると、SUMPRODUCTを使った数式は、仕組みがやや難しく、後から見て「何をしているのか」が分かりにくい、という短所があります。とくに、合計(売上などの集計)まで一度に行おうとすると、数式が複雑になりがちです。数式の意味を理解した上で使うのがおすすめで、分かりやすさを優先するなら、ほかの方法も検討しましょう。データ分析をさらに深めたい場合はExcelピボットテーブルでのデータ分析もどうぞ。
「SUMPRODUCT関数」は、複数の配列(数値のまとまり)の、対応する要素どうしを掛け算し、その合計を返す関数です。条件を組み合わせた集計にも応用でき、作業列なしで複雑な計算を一つのセルで行えます。「COUNTIF関数」は、範囲の中で、条件に合うセルの個数を数える関数です。`1/COUNTIF(...)` のように、出現回数の逆数を使うことで、重複するデータを「1件分」として数える、といった計算ができます。強力ですが、数式の意味が直感的に分かりにくいため、扱いには少し慣れが必要です。

ここからは、新しいバージョン(Microsoft 365やExcel 2021以降)で使える方法です。UNIQUE関数で重複しない一覧を作り、SUMIFで集計する、分かりやすい組み合わせです。
UNIQUEで。
横に集計。
一括で。
まず、集計したい項目(商品名など)のセルに `=UNIQUE(A2:A10)` と入れると、重複しない一覧が、下のセルへ自動で展開(スピル)されます。次に、その隣のセルでSUMIFを使い、検索条件に、先ほどのUNIQUEの結果を指定します。このとき、`E2#` のように末尾に「#」を付けると、スピルした一覧の範囲全体を参照でき、各項目の合計が一度に表示されます。数式の意味が論理的で分かりやすく、新しいバージョンが使えるなら、これがおすすめの方法です。元データが増えても、後述のテーブル化と組み合わせれば、自動で集計に反映できます。
「UNIQUE関数」は、指定した範囲から、重複を除いた一意の値の一覧を返す関数です。構文は `=UNIQUE(範囲)` で、結果は動的配列としてスピル(自動展開)されます。「スピル範囲演算子(#)」は、スピルして表示された結果の範囲全体を、自動で参照するための記号です。たとえば、UNIQUEの結果がE2セルから下に展開されているとき、`E2#` と書くと、その一覧全体を指せます。これをSUMIFの条件に使うと、項目が増減しても、参照範囲が自動で追従し、集計結果も自動で更新されます。いずれもMicrosoft 365とExcel 2021以降で使えます。

もう少し特殊な条件で集計したいときの、応用です。FILTER関数や、UNIQUEとXLOOKUPの組み合わせなど、新しい関数ならではの方法もあります。
FILTER関数は、指定した条件に合うデータだけを抽出する関数です。たとえば「ある条件に合うものだけを、重複を除いて集計したい」といった場合に、UNIQUEやSUMIFと組み合わせて使えます。また、「重複する項目は、最初に出てきた1行だけを対象にしたい」といった特殊なニーズには、UNIQUEとXLOOKUPを組み合わせる方法もあります。これらは、いずれも新しいバージョンで使える、応用的なテクニックです。
正直にお伝えすると、FILTERやXLOOKUPを使った応用は、強力ですが、その分、数式が複雑になります。まずは、方法3(UNIQUE+SUMIF)のような基本の方法で、やりたい集計ができないか試してみるのがおすすめです。それでも届かない、特殊な条件のときに、応用を検討しましょう。凝った数式は、作った本人以外には分かりにくくなりがちなので、ほどほどに、分かりやすさも大切にしてください。なお、関数を自作して整理したい場合はExcelのLAMBDA関数入門も参考になります。
「FILTER関数」は、指定した条件に合うデータだけを、自動で抽出する関数です。構文は `=FILTER(抽出する範囲, 条件)` で、条件に合う行だけが、動的配列としてスピル(自動展開)されます。たとえば「特定の地域のデータだけ」を抜き出して、そこからさらに重複を除いたり集計したりする、といった使い方ができます。UNIQUEやSUMIFと組み合わせると、柔軟な集計が可能です。便利ですが、Microsoft 365とExcel 2021以降でないと使えず、組み合わせると数式が複雑になりやすい点には、注意が必要です。

最後に、どの方法とも相性のよい、便利なコツを紹介します。元データを「テーブル」にしておくと、データを追加したときに、集計が自動で更新されて楽になります。
Excelには、表を「テーブル」という形式にする機能があります。元データをテーブルにしておくと、行を追加したときに、参照範囲が自動で広がります。たとえば、UNIQUE関数でテーブルの列を参照しておけば、新しいデータを追加するだけで、重複しない一覧にも自動で反映され、集計結果まで更新されます。毎月データを足していくような表で、とくに効果を発揮します。
表の中のセルを選び、「挿入」タブから「テーブル」を選ぶと、テーブル化できます。テーブルにすると、データ範囲が自動で管理されるので、数式の参照範囲を、毎回手で直す必要がなくなります。新しいバージョンの関数(UNIQUEなど)と組み合わせれば、「最新データを貼り付けるだけで、集計表が自動更新される」という、効率的な仕組みが作れます。古いバージョンの作業列方式でも、テーブル化は有効で、数式のコピー忘れを防げます。Excelの操作を速くするコツはExcelショートカットキー活用もどうぞ。
PC STOREでは、Office搭載・動作確認済み、保証つきの中古パソコンをご用意しています。新しい関数を快適に使える一台も。用途とご予算に合わせてご提案しますので、お気軽にご相談ください。
Excelを快適に使う一台を
Excelの新しい関数も快適に使える、Office搭載・保証つきの中古パソコン。用途とご予算に合う一台を選べます。

お使いのExcelが、対応していない可能性があります。UNIQUE関数は、Microsoft 365、またはExcel 2021以降のバージョンでないと使えません。Excel 2019やそれ以前では、入力してもエラー(#NAME?など)になります。お使いのバージョンは、「ファイル」→「アカウント」などから確認できます。新しい関数が使えない場合は、この記事の方法1(作業列+SUMIF)や方法2(SUMPRODUCT)を使えば、同じ集計が確実にできます。環境に合った方法を選びましょう。
お使いのバージョン次第です。Microsoft 365やExcel 2021以降が使えるなら、方法3(UNIQUE+SUMIF)が、数式の意味が分かりやすく、おすすめです。元データを増やしても自動で更新できる利点もあります。一方、Excel 2019以前など、新しい関数が使えない環境なら、方法1(作業列+SUMIF)が、確実で分かりやすい方法です。「古い方法だからダメ」ということはなく、ご自身の環境で確実に動き、後から見て分かりやすい方法を選ぶのが、いちばんです。
いいえ、今でも有効な、確実な方法です。たしかに、新しい関数を使えば、作業列なしでもっとすっきり書けます。しかし、作業列+SUMIFの方法は、どのバージョンのExcelでも確実に動く、という大きな強みがあります。新しい関数が使えない環境では、むしろこちらが頼りになります。また、手順の論理が分かりやすいので、Excelの仕組みを理解する上でも役立ちます。表に1列足す手間はありますが、決して「使ってはいけない古い方法」ではありません。
スピルした結果の範囲を、まとめて参照する記号です。UNIQUE関数などは、結果が複数のセルに自動展開(スピル)されます。その展開された範囲全体を指すのが「#」です。たとえば、UNIQUEの結果がE2セルから下に並んでいるとき、`E2#` と書くと、その一覧全体を参照できます。これをSUMIFの条件に使うと、項目が増えても参照が自動で追従するので、数式をコピーする手間がなくなります。便利な仕組みですが、こちらもMicrosoft 365とExcel 2021以降で使える機能です。
件数を数えるなら、いくつか方法があります。新しいバージョンなら、UNIQUE関数で重複しない一覧を作り、その件数をCOUNTA関数(やROWS関数)で数えるのが分かりやすいです。古いバージョンなら、SUMPRODUCTとCOUNTIFを組み合わせる方法(`=SUMPRODUCT(1/COUNTIF(範囲, 範囲))`)で、重複を1件として数えられます。なお、複数の列の組み合わせで数える場合は、少し計算が複雑になるので、ご自身の表の形に合わせて、方法を選んでください。

Excelで重複を除いて集計する方法は、一つではありません。大切なのは、お使いのExcelのバージョンに合った方法を選ぶことです。UNIQUEやFILTERといった新しい関数は、Microsoft 365やExcel 2021以降でないと使えません。古いバージョンでは、作業列やSUMPRODUCTを使います。まず、ご自身のExcelのバージョンを確認しましょう。
新しいバージョンが使えるなら、方法3(UNIQUE+SUMIF)が、数式が分かりやすく、おすすめです。UNIQUEで重複しない一覧を作り、スピル範囲演算子「#」で参照してSUMIFで集計します。古いバージョンなら、方法1(作業列+SUMIF)が確実で分かりやすく、方法2(SUMPRODUCT)なら作業列なしで計算できます。作業列の方法は古いですが、どの環境でも確実に動く、堅実な選択肢です。さらに、元データをテーブルにしておくと、データ追加時に集計が自動更新され、効率的です。FILTERなどの応用は、特殊な条件のときに。凝りすぎず、分かりやすさも大切にしながら、ご自身の環境と目的に合った方法で、重複の集計を効率化してください。
Excelを快適に使う一台を
Excelの新しい関数も快適に使える、Office搭載・保証つきの中古パソコン。用途とご予算に合う一台を選べます。迷ったらお気軽にご相談ください。
パソコン選びがよく分からない方、ご不安のある方、悩む前に!お気軽にご相談ください!
専門スタッフが、性能・ご予算・お好みなどご希望に合ったパソコンをお探しします!
