• 締切済み

Excel 2つのシートを比較して重複項目を出力

旧データと新データの2つを管理しているExcelファイルがあります。 シート1には旧データがシート2には新データがあります。 新データは旧データに幾つかの商品が追加されております。 シート1のデータを参照してシート2に旧データの番号を追加したいです。 --------------- シート1 --------------- AAA 123 BBB 456 --------------- --------------- シート2 3番目に旧データにあるシート1の2番目の項目を表示したいです --------------- AAA 111 BBB 222 CCC 333 DDD 444 --------------- ↓こんな感じにしたいです。 --------------- 処理後のシート2  --------------- AAA 111 123 BBB 222 456 CCC 333 - DDD 444 - --------------- わかりにくい説明ですみません。 商品番号が変わったのですが400件近くあるので まとめて更新したかったので質問させて頂きました。

みんなの回答

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんにちは! すでに回答は出ていますので、参考程度で・・・ ↓の画像でSheet2のC2セルに =IF(A2="","",IF(COUNTIF(Sheet1!$A:$A,A2),VLOOKUP(A2,Sheet1!$A:$B,2,0),"-")) という数式を入れ、オートフィルで下へコピーすると画像のような感じになります。m(__)m

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

コンピュターの経験が余りなさそうで、無理も無いのだが、AAAなどがシート1、シート2のそれぞれのA列の中で重複しないかどうかが、書いてないが、これが回答の死命を制するのだ。 いちおう重複無いものとする。 ーー シート2において、シート1分はB列に(固定して)持ってきていいのか。 シート1にあって、シート2に無いものがあるとシート2のA列でシート1のデータを左寄せするなどとなると、関数では難しい。 VBAでやるようなことになるが。 それは無いとする。 またシート1にあるAAAなどはシート2では必ずあるのかどうか? あるとすると シート2のC1に =IF(ISERROR(VLOOKUP(A1,Sheet1!$A$1:$B$100,2,FALSE)),"",VLOOKUP(A1,Sheet1!$A$1:$B$100,2,FALSE)) を入れてC4まで式複写。 結果 シート2 A1:C4 AAA 111 123 BBB 222 456 CCC 333 DDD 444 シート名はSheet1,Sheet2のままでやったので変えてください。 100の部分はA列の、AAAなどの数以上に設定すること。 ーー こんなことを望んでいるのかな?疑問をいだきつつ。

  • web2525
  • ベストアンサー率42% (1219/2850)
回答No.1

=IF(ISERROR(MATCH(A1,データ範囲A,0)),"-",VLOOKUP(A1,データ範囲B,0)) データ範囲AはSheet1のA列のデータ入力された範囲 データ範囲Bは同じくSheet1のA:B列のデータ入力された範囲 ※データ範囲はそれぞれ名前付けして置くと式はそのまま利用出来ます こんな感じでSheet2のC1に入力し下方向にコピーで

関連するQ&A

専門家に質問してみよう