Office
 Computer >> コンピューター >  >> ソフトウェア >> Office

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

Excelでの正確なデータ分析には、重複レコードの管理が不可欠です。重複データは計算結果の不正確さを招き、ファイルサイズを肥大化させ、混乱の原因にもなります。Excelには、重複を削除するためのさまざまな機能が用意されています。

このチュートリアルでは、データを失うことなくExcelの重複を削除できる8つの方法を紹介します。

1. 「重複の削除」ツールを使う

Excelに標準搭載されている「重複の削除」機能は、直感的なインターフェースで素早く重複を取り除ける手軽なソリューションです。

手順:

  • 見出しを含むデータ範囲を選択します。
  • データタブ >> データ ツールグループ >> 重複の削除を選択します。
  • チェックボックスのオン/オフで、どの列の組み合わせを重複判定の対象にするかを指定します。
  • OKをクリックします。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

ケース例:

  • すべての列を選択した場合、1行目と完全に一致している6行目(OrderID 1002)のみが削除されます。
  • 「1個の重複値が検出され、削除されました。」というメッセージが表示されます。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

  • OrderIDのチェックを外し、他の列をすべて選択した場合は以下のようになります。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

  • 5行目、6行目、8行目が重複として削除されます。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

メリット:

  • 視覚的なインターフェースで簡単に操作できる。
  • データに対して直接実行できる。
  • チェック対象の列を指定できる。

注意点:

  • 重複行が完全に削除される(元に戻せない)。
  • 各レコードの最初の出現だけが残る。
  • バックアップがない限り、元データは復元できない。

プロのコツ: 元のデータセットを残しておきたい場合は、このツールを使う前に必ず別シートへコピーしておきましょう。

2. フィルターオプションの設定(固有のレコードのみ)

詳細フィルター(フィルターオプションの設定)を使えば、ユニークなレコードだけを別の場所へ抽出でき、より細かいコントロールが可能です。

手順:

  • 見出し付きでデータを整理します。
  • データタブ >> 並べ替えとフィルターグループ >> 詳細設定を選択します。
  • 指定した範囲内の「リスト範囲」に A1:G12 を指定します。
  • 抽出先に J1 を指定します。
  • 重複するレコードは無視するにチェックを入れます。
  • OKをクリックします。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

重複行である6行目(OrderID 1002)は結果から除外されます。重複行を除いたデータがセルJ1以降にコピーされます。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

応用例: OrderIDに関係なく、商品情報が重複している取引を特定したい場合は、次のようにします。

  • 見出し(B1:G1)を使って検索条件範囲を設定します。
  • この検索条件範囲を指定して詳細フィルターを適用し、同一の取引を検出します。

メリット:

  • 元データが保持される。
  • ユニークなレコードだけを別の場所へコピーできる。
  • 必要に応じて複雑な検索条件にも対応できる。

注意点:

  • 抽出結果用の空きスペースが必要。
  • 元データが変わった場合は手動で再実行する必要がある。

3. Power Query(データの取得と変換)

Power Queryは、元データを保持したまま大規模データセットも処理できる強力なソリューションです。

手順:

  • データを選択します。
  • データタブ >> データの取得と変換グループ >> テーブル/範囲からを選択します。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

  • 比較対象の列を選択します(すべての列でも特定の列だけでも可)。
  • ホームタブ >> 行の削除グループ >> 重複の削除を選択します。
  • 閉じて読み込むをクリックすると、結果が新しいシートに出力されます。

例:

  • すべての列を基準に重複を削除した場合、6行目(OrderID 1002)だけが削除されます。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

  • OrderIDを除外し、Customer、Product、Quantity、Price、Dateのみを基準にした場合、4行目と8行目の両方が重複として識別されます。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

出力結果:

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

メリット:

  • 更新可能な独立した結果セットを作成できる。
  • 大規模データセットを効率的に処理できる。
  • 元データが保持される。
  • 繰り返し使えるプロセスの一部に組み込める。
  • 高度なデータ変換機能を利用できる。

注意点:

  • Power Queryの基本的な知識が必要。
  • 非常に大きなデータセットではリソースを多く消費する。
  • 複雑な重複排除ロジックには追加の手順が必要。

4. UNIQUE関数(Excel 365/2021)

新しいバージョンのExcelでは、UNIQUE関数を使って一意の値を動的に抽出できます。

重複行の削除:

  • セルI1を選択し、次の数式を入力します。

数式:

スピル範囲としてすべての一意な行が返されます。このリストは元データを変更すると自動的に更新されます。重複行6行目を除く、データセット内のすべての一意な行が取得できます。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

カテゴリ別の商品一覧: ProductとCategoryの一意な組み合わせを抽出します。

  • 任意のセルを選択し、次の数式を入力します。

数式:

この数式は、一意な商品リストのスピル範囲を返します。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

顧客の一覧表: 一意な顧客名のリストを取得します。

  • 任意のセルを選択し、次の数式を入力します。

数式:

この数式は、一意な顧客名のスピル範囲を返します。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

メリット:

  • 元データの変更に応じて自動的に更新される動的な結果になる。
  • 元データを破壊しない。
  • 他の関数と組み合わせられる。
  • 複数列にまたがる一意な組み合わせを返せる。

注意点:

  • Excel 365およびExcel 2021でのみ使用可能。
  • スピル配列数式が生成される(自動的に拡張される)。
  • 作業スペースの設計が必要な場合がある。
  • 非常に複雑な重複排除ロジックには対応できない。

5. 条件付き書式+フィルター

この視覚的なアプローチでは、まず重複をハイライト表示してからフィルターで絞り込みます。

手順:

  • データ範囲を選択します。
  • ホームタブ >> 条件付き書式 >> セルの強調表示ルール >> 重複する値を選択します。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

  • 書式スタイルとして「濃い赤の文字、明るい赤の背景」を選びます。
  • OKをクリックします。
  • Excelが列ごとに重複するセルをハイライト表示します。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

  • データタブ >> フィルターを選択します。
  • セルの色でフィルターし、重複値または一意の値を表示します。
  • 一意の値を表示する場合は自動を、重複値の場合はを選択します。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

一意の値の表示:

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

重複値の表示:

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

重複する行全体をハイライトしたい場合は、次のような数式ルールを使います。

  • ホームタブ >> 条件付き書式 >> 新しいルールを選択します。
  • 「数式を使用して、書式設定するセルを決定」を選択します。
  • 次の数式を入力します。
=COUNTIFS($A$2:$A$12, $A2, $B$2:$B$12, $B2, $C$2:$C$12, $C2, $D$2:$D$12, $D2, $E$2:$E$12, $E2, $F$2:$F$12, $F2, $G$2:$G$12, $G2)>1
  • 塗りつぶしの色を選択します。
  • OKをクリックします。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

メリット:

  • 削除前に重複を視覚的に確認できる。
  • すべてのデータが保持される。
  • 選択的に削除できる。
  • すべてのExcelバージョンで使える。
  • 重複パターンの把握に役立つ。

注意点:

  • 手順が複数ステップに及ぶ。
  • 手動でのフィルター操作が必要。
  • 自動更新されない。
  • データ変更時はフィルターを再適用する必要がある。

6. ピボットテーブル方式

ピボットテーブルはデータを自然に集約するため、その過程で重複が効果的に排除されます。

手順:

  • データを選択します。
  • 挿入タブ >> ピボットテーブルを選択します。
  • 既存のワークシートと配置場所を選択します。
  • OKをクリックします。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

  • ピボットテーブルのフィールドリストから、次のフィールドをエリアへドラッグします:
    • Order ID、Customer、Product、Category、Date
  • 次のフィールドをエリアへドラッグします:
    • Quantity、Price

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

重複していた行(3行目と6行目)が統合され、Quantityの合計(5+5=10)とPriceの合計(129.5+129.5=259)が表示されます。

重複する商品や顧客を表示したい場合は、OrderIDを除外します。

  • まずエリアからOrderIDを削除します。
  • 作成されたピボットテーブルには、OrderID以外がすべて同じ取引だけが表示されます。

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

メリット:

  • 重複データを単に削除するだけでなく、集約できる。
  • 大規模データセットを効率的に処理できる。
  • 数値を自動的に集計する。

注意点:

  • ピボットテーブルの基本的な知識が必要。
  • 抽出後に追加の書式設定が必要な場合がある。
  • 数値はデフォルトで集計される(一部のフィールドでは望ましくない場合もある)。

7. COUNTIF補助列方式

この方法では補助列を追加し、各レコードの最初の出現を識別します。

手順:

  • 「重複チェック」という見出しを付けた補助列(H列)を追加します。
  • 数式を使って一意な行を識別します。
  • 適切な値でフィルターし、一意なレコードだけを表示します。

完全な重複の識別:

  • セルH2を選択し、次の数式を入力します。

数式:

=IF((COUNTIFS($A$2:$A$12, $A2, $B$2:$B$12, $B2, $C$2:$C$12, $C2, $D$2:$D$12, $D2, $E$2:$E$12, $E2, $F$2:$F$12, $F2, $G$2:$G$12, $G2))=1, "Unique","Duplicate")

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

この数式は、行全体が完全に一致する重複をマークします。

OrderIDを無視する場合: 取引内容に基づいて重複を識別したい場合は、次の数式を使います。

=IF((COUNTIFS($B$2:$B$12, $B2, $C$2:$C$12, $C2, $D$2:$D$12, $D2, $E$2:$E$12, $E2, $F$2:$F$12, $F2, $G$2:$G$12, $G2))=1, "Unique","Duplicate")

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

この数式では、取引内容が重複しているため、2、3、5、6、10行目が「Duplicate」とマークされます。

メリット:

  • どのレコードが重複かを表示しながら、元データも保持できる。
  • 複雑な条件にもカスタマイズできる。
  • 重複している行を特定できる。

注意点:

  • 補助列が必要。
  • 複数列を扱うと数式が複雑になりがち。
  • データ変更時に調整が必要。
  • 新規データには数式をコピーする必要がある。

8. 数式による抽出(INDEX/MATCHまたはFILTER)

上級者向けには、INDEX、MATCHなどの関数を組み合わせて一意の値を抽出する方法があります。

INDEX/MATCHを使う(旧バージョンのExcel): 一意な顧客名を別の場所へ抽出します。

  • 任意のセルを選択し、次の数式を入力します。

数式:

=IFERROR(INDEX($B$2:$B$12,MATCH(0,COUNTIF($I$1:I1,$B$2:$B$12),0)),"")

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

FILTERを使う(Excel 365/2021): すべての列を保持したまま一意なレコードを抽出します。

  • 任意のセルを選択し、次の数式を入力します。

数式:

=FILTER(A2:G12, MATCH(A2:A12&B2:B12&C2:C12&D2:D12&E2:E12&F2:F12&G2:G12, A2:A12&B2:B12&C2:C12&D2:D12&E2:E12&F2:F12&G2:G12, 0)=ROW(A2:A12)-ROW(A2)+1)

整合性を維持しながらExcelの重複データを削除する8つの実証済みの方法

メリット:

  • 高いカスタマイズ性を持つ。
  • 他の方法が使えない場面でも機能する。
  • 複雑なロジックを組み込める。
  • 元データを破壊しない。
  • 元データの変更に応じて動的に更新される。

注意点:

  • 高度なExcelの知識が必要。
  • 実装とメンテナンスがやや複雑。
  • 旧バージョンのExcelでは配列数式が必要な場合がある。
  • 大規模データセットでは処理負荷が高くなることがある。

まとめ

Excelで重複を削除することは、危険でも難しくもありません。小規模なレポートから大規模なデータセットまで、Excelには重複を安全かつ柔軟に特定・除去する方法が複数用意されています。データの種類に応じて、これら8つの方法から最適なものを選べば、データを失うことなく重複を削除できます。最適な方法は、Excelのバージョン、データサイズ、そして数式派かツール派かによって異なります。この8つのテクニックをマスターすれば、どんな重複データのクリーンアップにも対応できるでしょう。特に元データを直接変更する方法を使う場合は、重複削除の前に必ずデータのバックアップを取ることを忘れないでください。

無料の高度なExcel演習問題と解答はこちら!

  1. OutlookがOffice 365接続時にパスワードを繰り返し求める原因と対処法

    OutlookがOffice 365への接続時にパスワードを繰り返し求められる問題とは Windows 10デバイスでMicrosoft Outlookを使用していて、Microsoft 365(旧Office 365)に接続するたびにパスワードの入力を何度も求められる——そんな経験はありませんか?この記事では、この不具合の原因と具体的な解決方法をわかりやすく解説します。 典型的な症状 Outlookプロファイルを作成しようとしたり、Microsoft 365のメールボックスに接続しようとしたりすると、クライアント画面に「接続を試みています…」というメッセージが表示され続け、資格情報の入力を何

  2. Microsoft 365 for Businessの「アカウント通知」メッセージを無効にする方法

    Microsoft Office 365 for Businessのサブスクリプションの一環としてWindows PCにOfficeソフトウェアをインストールしているユーザーは、組織が別のOffice 365 for Businessプランへ切り替える際、異なるバージョンのOfficeへの移行が必要になることがあります。移行をスムーズに行い、適切なタイミングでユーザーに知らせるため、Microsoftは1〜3日程度の猶予期間の経過後、以下のようなメッセージを表示します。 アカウント通知:お使いのOffice 365サブスクリプションには保留中の変更があります。アプリケーションを中断することなく