• 締切済み

2つのエクセルファイルの比較

仕事で使用している顧客一覧(エクセルファイル)があります。 このファイルは会社のシステムで自動的に生成され、 毎日その日の最新版が日付ごとのフォルダ(今日だったら20080527) に上書きされます。ファイル名は同じです。 そこで昨日のファイルと本日のファイルに変更点が あればどのような形でも良いので分かるようにしたいと思っています。 変更点の色が変わって2つのファイルが比較できるフリーソフトを試してみましたが、 当然なのですが、新規の顧客が従来の顧客の間に入ってしまうと、 順番が変わりそれ以降の顧客のデータ全て変更点とみなされてしまいます。 できれば名前が入っている列、例えばB列をキーとし、 新規の顧客データや、従来の顧客のデータの順番が入れ替わっても 変更点のみ色が変わるようにするにはどのようにすればよいでしょうか。 また、そのような機能を満たしているソフトなどありましたら、 教えていただけると大変助かります。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

(1)VLOOKUP関数利用 (2)VBA利用 (3)アクセス利用 (4)出来合いのソフト利用 (1)は一方から他方を検索表と看做して検索し列ごとに内容を比較する。見つからないものはエラーが出るから、増加分はわかる。 消滅分は他方から検索しないと判らない。 行が多いとシートが式だらけになって、エクセルが動くかどうか心配。 (2)色々なやり方があるが、私なら両方をソートしてマッチング方で比較する。 両方あわせて56千件以下なら下に貼り付けて、マッチングキーでソートし上下行を比較する。 しかしマッチングキーも明確に意識して内容だし、キーの重複出現 についても言及がなく、そのレベルではプログラムは難しかろう。 (3)エクセルと違って、道具立てがそろっています。 (4)マッチングキーの位置を指定させ、同じフォーマットという前提で比較するソフトはWEB上で見つかりませんか。 昔の大型機のソフトなどではそういうものが提供されていたように思うので、諸所にニーズはあると思うが。(ファイル比較 ユティリティソフトでWEB照会は。FileCompare)

pimo2020
質問者

お礼

ありがとうございます。 (4)に関してですが、午前中からしばらく検索していますが、 それらしいものにヒットしません。 (マッチング、照合、突合、比較、コンペアをエクセルに組み合わせて 検索しました) 私もこういったソフトのニーズはあると思うのですが。 ちなみにファイル内でのキーの重複はありません。 (1)~(3)に関しては初心者ゆえ、利用することを 考えていない、というよりは利用できないという感じです。

  • higekuman
  • ベストアンサー率19% (195/979)
回答No.1

その程度のことであれば、VBAで比較的簡単に処理できます。 でも、このような質問をしているということは、VBAを知らないのでしょうから、VBAを使わないとすると・・・ 新規の顧客が従来の顧客の間に入ってしまったら、昨日のデータに、新規顧客にあたる空列を追加するしかないでしょうね。 そうすれば、そのフリーソフトで対応できます。 新規顧客が毎日数十もあるのであれば大変でしょうけど、毎日5つくらいであれば、そんなに手間でもないでしょう。 どうしても自動化したいのであれば、VBAを学びましょう。 初歩レベルの技術で作れると思います。

pimo2020
質問者

お礼

おっしゃるとおりVBAは理解していません。 空列を挿入する方法も思いついたのですが、 毎日何十件と新規が加わるので時間がかかってしまいます。 VBAを学んで自作するのが一番でしょうね。

関連するQ&A