Excelを普段使いしていると、どのExcelファイルの内容が最新かわからなくなったり、内容に違いが出て混乱したりすることがあります。まずはデータごとの差異をチェックし、違いを浮き彫りにしてから内容を確かめましょう。
今回は、Excelでの差異(Diff)の比較方法について解説します。便利に使える関数やツールも紹介しているので、業務効率化にお役立てください。
Excel関数を使った差異の計算
Excelでは、関数を使って差異を計算できます。関数を使えばセルをひとつずつ目視で確認する必要がないため、大量のデータを一気に比較できるのがメリットです。
以下では、差異計算に便利な関数をひとつずつ紹介します。
「=」を使用した比較
【1】最も簡単な手法として、「=」を使った比較があります。比較したい2つのセルに入力されている内容が一致していれば「TRUE」を、間違っていれば「FALSE」を返します。
ここでは「=C4=D4」と入力し、C4セルとD4セルの内容を比較しています。
【2】同じ内容を他のセルにコピーすることで、広範囲を一気に比較できます。ただし、「=」で比較する場合、アルファベットの大文字と小文字は区別されません。「A」でも「a」でも合致とみなして「TRUE」を返すため、大文字・小文字を区別しなくてよいときに使いましょう。
EXACT関数による正確な比較
【1】EXACT関数とは、2つのテキスト文字列を比較し、両者が完全に同一の場合は論理値TRUE、そうでない場合はFALSEを返す関数です。アルファベットの大文字と小文字を区別できるので、「=」での比較では不十分なときに役立ちます。
「=EXACT(C4,D4)」で、C4とD4のセルを比較できます。
【2】同じ内容を他のセルにコピーすることで、広範囲を一気に比較できます。アルファベットの大文字・小文字も別のものとみなされるため、「TRUE」と返されるのは完全に一致しているセルのみに変わります。
IF関数を使用した比較
【1】IF関数とは、指定した条件を満たしている時と満たしていない時で異なる値を表示させることができる関数です。IF関数とEXACT関数を使い分けることで、「TRUE」「FALSE」以外のわかりやすい表記で結果を返せます。例えばTRUEを「〇」に、FALSEを「×」にしたいときは、=IF(EXACT(C4,D4),”〇”,”×”)と表記します。
【2】一致・不一致が記号で示されるため、直観的にわかりやすい一覧を作れます。なお、ここではEXACT関数を使ってアルファベットの大文字と小文字を区別しています。
DATEDIF関数を使った日付の差異計算
【1】DATEDIF関数とは、2つの日付のシリアル値から期間を求め、その間の「年数」「月数」「日数」を求める関数です。入力された日付を起算日として経過日数を求めるときによく使われる関数ですが、差異を計算したいときにも役立ちます。
「=DATEDIF(C4,D4,”D”)」で、C4の日付からD4の日付までに経過した日数がわかります。
【2】同様のDATEDIF関数を関数を適用することで、それぞれの経過日数がわかりました。結果が「0」であれば完全に同一の日付であり、それ以外の結果であれば日付に差があるとわかります。
【3】DATEDIF関数は「=DATEDIF(開始日,終了日,単位)」で示せますが、単位は「年数」「月数」「日数」で変わります。「年数」のときは「Y」、「月数」のときは「M」、「日数」のときは「D」を入力しましょう。
ただし、差異を確認したいときは「日数」を示す「D」にするのがおすすめです。「年数」を示す「Y」や「月数」を示す「M」を入力した場合、日付に差異があっても同じ年内・月内であれば「0」が返ってきます。一方、「日数」を示す「D」であれば、±1日の範囲で細かく差異を表示できるので、一致・不一致をわかりやすく判定できます。
Excelツールを使った差異の比較
ここでは、Excelツールを使って差異を確認する方法を解説します。個別に関数を入力する手間を省きたいときは、以下を活用しましょう。
データ比較ウィザードの使用
データ比較ウィザードとは、その名の通りExcel上のデータを個別に比較できる機能です。「ウィザード」はExcelに搭載されている機能のひとつで、グラフや表を簡単に作成する補助ツールを指します。特にシートが異なるデータを比較するときに役立ちます。
【1】「作成」タブ内にある「クエリ」グループから、「クエリウィザード」をクリックします。クエリとは、外部にある各種データに問い合わせを行い、必要なデータをExcelにインポートする機能を指します。
【2】クエリの種類は「不一致クエリウィザード」を指定します。
【3】不一致クエリウィザードで開く最初のウィンドウにて、不一致が疑われるテーブルの名前をクリックして「次へ」に進みます。
【4】不一致が疑われるテーブルと比較したいテーブルを指定します。
【5】比較したいフィールドをそれぞれ指定します。例えば、不一致が疑われるテーブルにおける「ID」と、比較したいテーブルにおける「商品ID」を比較したいとき、関連付けるフィールドは「ID < = > 商品ID」と指定します。
テーブルごとに 1 つのフィールドのみを選択できるので、複数のフィールドで比較したいときは再度フィールドの設定をし直て挑戦する必要があります。
【6】結果を表示するか、クエリのデザインを変更するか選択します。今回のクエリ名は「商品と受注明細との差分」と指定していますが、その他自分でわかりやすいタイトルにしながら使いましょう。クエリのデザインに大きなこだわりがなく、差分を確認すればよいだけであれば「クエリを実行して結果を表示する」を選択しましょう。
【7】結果、片方のテーブルにはあってもう片方のテーブルにはないものだけが抽出されます。表示された部分だけ内容を確認すればよいだけなので面倒な目視も要らず、関数を入力して個別に確認する必要もありません。
外部ツールの活用
外部ツールを使って、Excel上の差異を簡単に可視化する方法もあります。主に「Diffツール」と呼ばれており、複数のファイルにおける「違い(Difference)」を比較するツールとして活用されています。人の目だけでは見落としてしまう細かな違いも機械的に見つけられるので、比較したいデータ量が多いときに活用しましょう。
代表的なDiffツールとして、以下が挙げられます。
ただし、WindowsとMacどちらに対応しているかはDiffツールごとに異なります。自分の操作環境と照らし合わせながらツールを選定しましょう。
よくある質問
Excelで差異(Diff)を比較する方法に関して「よくある質問」を紹介します。
ExcelのDiffツールの使い方は?
ExcelのDiffツールは、ツールごとに公開されている方法に沿って活用します。まずはツールのインストールが必要になるため、自身の使用環境に合う最新バージョンを選択してインストールを進めましょう。
同じExcel内のデータ比較だけでなく、テーブルごとの比較やファイルごとの比較にも対応していて便利です。
Excelでファイルの違いを調べるには?
【1】「検査」タブ内にある「ファイルの比較」をクリックします。
【2】比較するファイルを問われるため、比較するファイルと、比較対象となるファイルを指定します。いずれも現在開いているExcelファイルのみが対象となるため、事前にファイルを開いた状態で始めるのがおすすめです。指定ファイルが開かれていない場合、エラーとなって同じ画面に戻ってしまうので注意しましょう。
【3】比較した結果、異なる部分だけが抽出されます。最初は表示されるタブが左側に寄っているため、調整しながら内容をチェックしましょう。
まとめ
Excelでの差異(Diff)は、関数やツールを使ってチェックするのがおすすめです。
同じテーブル内の差異はもちろん、テーブルやファイルが違っていても差異をチェックできるので、内容ごとの違いがわからなくなってしまったときに活用しましょう。
Excel Diffに関する重要用語
用語 | 説明 |
EXACT関数 | 2つのテキスト文字列を比較し、両者が完全に同一の場合は論理値TRUE、そうでない場合はFALSEを返す関数。アルファベットの大文字と小文字を区別できる。 |
IF関数 | 指定した条件を満たしている時と満たしていない時で異なる値を表示させることができる関数。 |
DATEDIF関数 | 2つの日付のシリアル値から期間を求め、その間の「年数」「月数」「日数」を求める関数。 |
ウィザード | Excelに搭載されている機能。グラフや表を簡単に作成する補助ツール。 |
クエリ | 外部にある各種データに問い合わせを行い、必要なデータをExcelにインポートする機能。 |