dポイントプレゼントキャンペーン実施中!

旧データと新データの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件近くあるので
まとめて更新したかったので質問させて頂きました。

A 回答 (3件)

こんにちは!


すでに回答は出ていますので、参考程度で・・・

↓の画像でSheet2のC2セルに
=IF(A2="","",IF(COUNTIF(Sheet1!$A:$A,A2),VLOOKUP(A2,Sheet1!$A:$B,2,0),"-"))
という数式を入れ、オートフィルで下へコピーすると画像のような感じになります。m(__)m
「Excel 2つのシートを比較して重複項」の回答画像3
    • good
    • 0

コンピュターの経験が余りなさそうで、無理も無いのだが、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
AAA111123
BBB222456
CCC333
DDD444
シート名はSheet1,Sheet2のままでやったので変えてください。
100の部分はA列の、AAAなどの数以上に設定すること。
ーー
こんなことを望んでいるのかな?疑問をいだきつつ。
    • good
    • 0

=IF(ISERROR(MATCH(A1,データ範囲A,0)),"-",VLOOKUP(A1,データ範囲B,0))



データ範囲AはSheet1のA列のデータ入力された範囲
データ範囲Bは同じくSheet1のA:B列のデータ入力された範囲
※データ範囲はそれぞれ名前付けして置くと式はそのまま利用出来ます

こんな感じでSheet2のC1に入力し下方向にコピーで
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!