新旧の表を超スピードで比較する
1月 21st, 2005ここのところ、Excelを使った作業がやたら多い。その中で、けっこう面倒くさい作業が表の比較だ。例えば、以前に作った表データを元に、新しい表データを作った場合。新しい表データに含まれる項目の一部を古い表に書き戻したくなったとする。
この時、新旧の表で行の順番が入れ替わっていなければ問題はない。ところが、住所録のようなデータであれば新しく連絡先を追加しているかもしれないし、データを並べ替えているかもしれない。新しい表と古い表で、データの順番が同じになっているかチェックする必要があるわけだ。
Excel 2003では、「ウィンドウ」メニュー→「?と並べて比較」という機能が付いたが、これは2つの表データのスクロールを同期してくれるだけ。チェックは自分が見てやらなければならないのだ。
せっかくコンピュータを使っているのに、これではあまりにも馬鹿馬鹿しい。そこで、比較をExcelにやらせることにする。
古い表と新しい表から比較したい項目を取り出し、別のブックにコピー。そして、C列の項目に「=IF(A2=B2,TRUE,FALSE)」と入力。下の行にもこの内容をコピーする(セルの右下にあるハンドルをドラッグするだけで自動的にコピーできる)。
こうすると、A列とB列の内容が違っている場合には、「FALSE」と表示されるのだ。
データが多い時は、「FALSE」を探すのも面倒かもしれない。こんな時は、「データ」メニュー→「フィルタ」→「オートフィルタ」を実行。すると、項目名の部分に下向き三角のボタンが付く。これをクリックすれば「TRUE」の行だけ、「FALSE」の行だけを絞り込んで表示できる。
下の画像では2行目と3行目の内容が新旧で異なり、C列に「FALSE」と表示されている。