• ベストアンサー

異なるシートに同じ雛形のデータがあって相違点を見つける方法?

ExcelでA~H列、2~2817行にデータがあって同様のシート(sheet1~3)が3つあります。 それらのシートの内容はほとんど同じなのですが、一部相違点があります。 これらのシートの各セルの相違点を何らかの関数などを使って、自動的にどこかにそれらを表示させるようなことは出来ないでしょうか? 「MATCH」という関数がありますが、これを使うのでしょうか? そうだとしたらどのように使うのでしょうか? よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • _mya_mya
  • ベストアンサー率41% (7/17)
回答No.3

補足欄の方法です。 差異がない部分が空白となりますし、もう少し良い方法があると思いますが… handomariさんと同様、 Sheet4 A2セルに =IF(Sheet1!A2=Sheet2!A2,IF(Sheet1!A2=Sheet3!A2,"",3),2) と入力、「A2:H2817」にコピー Sheet4 J2セルに =COUNT(A2:H2) と入力、「J2:J2817」にコピー Sheet4 L2セルに =IF($J2=0,"",IF(A2=2,Sheet2!A2,IF(A2=3,Sheet3!A2,Sheet1!A2))) と入力、「L2:S2817」にコピー

Youyou
質問者

お礼

補足の補足です。 #1のお礼欄に補足した方法は無理でしょうか?

Youyou
質問者

補足

ありがとうございます。 知識不足な質問になりますが、J列とL列に表示される数値は何なのでしょうか? 解説をお願いいたします。

その他の回答 (3)

  • _mya_mya
  • ベストアンサー率41% (7/17)
回答No.4

「A2:H2817」と「J2:J2817」は作業用セルです。 セルに関数式を入れると、このように表示されます。 (Sheet3 D4 を「テ」としました)   A B C D E   J   L M N O P 1  2   2       1   か キ く け こ 3           0   4      3    1   た ち つ テ と 「A2:H2817」   Sheet1と違う部分を表示   「2」~ Sheet2 が違う   「3」~ Sheet3 が違う 「J2:J2817」   その行にSheet1と違う部分があるかどうかを表示   「1」~ 違う部分がある   「0」~ 違う部分がない 「L2:S2817」   行にひとつでも違う部分があれば、表示   (違う部分がなければ、空白)

Youyou
質問者

お礼

ありがとうございます。 とてもいい勉強になりました。

  • meron_
  • ベストアンサー率40% (51/127)
回答No.2

Excelのバージョンを教えてください。

Youyou
質問者

補足

Excel2003ですが、Excel2000で同様の作業をすることもあります。

  • handomari
  • ベストアンサー率47% (83/174)
回答No.1

相違点を調べるだけであれば、Sheet4を用意して、A2のセルに「=IF(Sheet1!A2=Sheet2!A2,IF(Sheet1!A2=Sheet3!A2,"","1=2≠3"),"1≠2")」と入力して、A2:H2817にコピーするだけでいいんじゃないですか? 結果として、1=2≠3や1≠2が表示されたセルが相違点ですね。

Youyou
質問者

お礼

お礼欄ですが、補足の訂正をさせていただきます。 例えばsheet1が下記   A    B     C     D    E 1  あ   い    う     え    お 2  か   き    く     け    こ 3  さ   し    す     せ    そ 4  た   ち    つ     て    と 5  な   に    ぬ     ね    の sheet2が    A    B    C     D    E 1  あ   い    う     え    お 2  か   キ    く     け    こ 3  さ   し    す     せ    そ 4  た   ち    つ     て    と 5  な   に    ヌ     ね    の sheet3が    A    B    C     D    E 1  あ   い    う     え    お 2  か   き    く     け    こ 3  さ   し    す     せ    そ 4  た   ち    つ     て    と 5  な   に    ヌ     ね    の だとした場合にsheet3に    A    B     C     D    E 2  か   き    く     け    こ 2  か   キ    く     け    こ 2  か   き    く     け    こ 5  な   に    ぬ     ね    の 5  な   に    ヌ     ね    の 5  な   に    ヌ     ね    の と表示させる 要するに3つのシートの各行を比較し、その結果1箇所でも違う行が検出された場合に、3つのシートの全ての行を並べて表示させる、ということです。 可能でしょうか? 無理であれば前述「補足欄」の方法でも構いません。 それでも無理なら何かいい方法があるかどうかご教示ください。 それも無理なら諦めるしかないですかね? よろしくお願いいたします。

Youyou
質問者

補足

ありがとうございます。 すみません。この方法もなかなかすばらしいのですが、こういうふうには出来ないものでしょうか? sheet1~3で行単位で(無理ならセル単位でも可)相違点をチェックし、相違点をsheet4に「1=2≠3」や「1≠2」というふうにではなくその行そのものを表示させる 例えばsheet1が下記   A    B     C     D    E 1  あ   い    う     え    お 2  か   き    く     け    こ 3  さ   し    す     せ    そ 4  た   ち    つ     て    と sheet2が    A    B     C     D    E 1  あ   い    う     え    お 2  か   キ    く     け    こ 3  さ   し    す     せ    そ 4  た   ち    つ     て    と だとした場合にsheet3に    A    B     C     D    E 2  か   キ    く     け    こ と表示させる 可能でしょうか? よろしくお願いいたします。

関連するQ&A

専門家に質問してみよう