- 公開日:
エクセルで2つのシートを比較して抽出する方法
Excelを使用してデータを比較する際、2つのシートを活用する方法があります。
この方法を使えば、同じデータが入ったシート同士を比較し、差異や一致点を簡単に抽出することが可能です。
特に大量のデータを取り扱う場合やデータの整合性を確認する際には非常に便利です。今回は、2つのエクセルシートを比較して抽出する方法について詳しく解説していきます。
エクセルで2つのシートを比較して抽出する方法
2つのシートを比較して異なる値を抽出したい場合は、IF関数が有効です。
条件に合う合わないで表示方法を変えられるため、どの値が異なっているのが一目で分かるようになります。
詳しい方法については、以下の通りです。
ここでは例として、同じレイアウトではあるものの一部内容が異なる「Sheet1」「Sheet2」を用意しました。
Sheet1とSheet2では、赤枠で囲った3つのデータが異なっています。
異なる値を分かりやすく抽出するため、関数を使用してみましょう。
ここでは分かりやすいように、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のデータ」を抽出し、異なるデータがない場合は「空白("")」で返すように指定しています。
関数の入力を確定すると、自動的に異なるデータのみが抽出されます。