• 公開日:

エクセルで2つのシートを比較して抽出する方法

Excelを使用してデータを比較する際、2つのシートを活用する方法があります。

この方法を使えば、同じデータが入ったシート同士を比較し、差異や一致点を簡単に抽出することが可能です。

特に大量のデータを取り扱う場合やデータの整合性を確認する際には非常に便利です。今回は、2つのエクセルシートを比較して抽出する方法について詳しく解説していきます。

エクセルで2つのシートを比較して抽出する方法

2つのシートを比較して異なる値を抽出したい場合は、IF関数が有効です。

条件に合う合わないで表示方法を変えられるため、どの値が異なっているのが一目で分かるようになります。

詳しい方法については、以下の通りです。

シートの違い

ここでは例として、同じレイアウトではあるものの一部内容が異なる「Sheet1」「Sheet2」を用意しました。

Sheet1とSheet2では、赤枠で囲った3つのデータが異なっています。

異なる値を分かりやすく抽出するため、関数を使用してみましょう。

IF関数を入力

ここでは分かりやすいように、Sheet2の表に「Sheet1との違い」という見出しを作成しました。

任意のセル(例:D3)に「=IF(C3=Sheet1!C3,"なし",Sheet1!C3)」と入力し、Ctrl + Enterを押します。

IF関数の書式は「=IF(論理式,値が真の場合,[値が偽の場合])」です。条件に一致するかしないかで処理を変える関数です。関数については以下の記事をご覧ください。

ExcelのIF関数の使い方|論理式の条件(IF文)によって処理を分岐

今回の例では、「C3=Sheet1!C3」が条件にあたります。

つまり「C3セルが、Sheet1のC3セルと一致する場合」と指定しています。

一致する場合「なし」と表示し、しない場合は「Sheet1のC3セルのデータ」を表示するようにしています。

オートフィルする

関数を入力したセルの右下にあるフィルハンドルを選択し、関数を入力したいセル(例:D8)までドラッグします。

違いを抽出できた

関数が入力されました。

Sheet1と比較したうえで、データに違いがない場合は「なし」、違いがある場合は「Sheet1のデータ」を表示しています。

これにより、Sheet1とSheet2で異なるデータを抽出できます。

新しいシートに異なるデータを抽出したい場合

新しいシートに異なるデータのみを抽出したい場合は、IF関数を少し調整します。関数をコピペするだけの簡単な作業で抽出可能です。

関数を入力

新しいシートを用意し、どこでも良いので任意のセル(例:A1)に「=IF(Sheet2!B2:C8<>Sheet1!B2:C8, Sheet2!B2:C8, "")」と入力し、Enterキーを押します。

今回のIF関数では、スピルを使って一気に異なるデータを抽出しています。

簡単に説明すると、「Sheet2のB2:C8セル」と「Sheet1のB2:C8セル」間で異なるデータがあった場合、「Sheet2のデータ」を抽出し、異なるデータがない場合は「空白("")」で返すように指定しています。

抽出された

関数の入力を確定すると、自動的に異なるデータのみが抽出されます。