- ベストアンサー
シート1の列からシート2の列と重複するデータを抜き出したい。
初歩的な質問ですみません。 シート1の列Aに、 1、3、5、8、12、13、16、18、20、23、25というようなデータがあり、シート2の列Aに1、5、13、18、25とある場合、フィルタなどを使って、シート2にある1、5、13、18、25だけを一気にシートAから抜き出すということは可能でしょうか?シート1のデータを、シートのデータに該当するものとそうでないものに分けたいのですが。どなたかご教授ください!
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは~ Sheet1の 2行目からデータがあるとして、 Sheet1の B2に =IF(COUNTIF(Sheet2!A:A,A2),"○","×") と入力して(上の数式をそのままコピーして貼り付け)、A列のデータ最終行までフィルコピーしてください。 Sheet2 と重複するものは B列に ○、重複しないものは × が入ります。 あとは、オートフィルタで B列が ○ または × のものだけを抽出してください。 もしうまくいかないようなら、入力した数式をそのままコピーして提示した上で、どううまくいかなかったのかを具体的に補足してください。
その他の回答 (2)
- an_inack
- ベストアンサー率47% (9/19)
シート1、シート2ともに A列にのみ値があるとして回答します。 --- シート1のB1セルに次の数式を入れ、 A列のデータ行数分コピーしてください。 =IF(ISERROR(VLOOKUP(A1,シート2!$A$1:シート2!$A$10,1,0)),"","1") やっていることは、 1)VLOOKUP関数で値をシート2の値を探す 2)値が見つからないとエラーを返すので ISERROR関数で判断 3)見つからなければ空白を、 あれば"1"をセルに返す。 あとは、オートフィルタで B列が1のものを絞り込んでください。 伝わるかな~。不安。
補足
ありがとうございます。 ご説明の意味はわかったのですが、実践で失敗しました。自分の理解度の低さに嫌気が…。もう少し関数の勉強をする必要がありそうですね。
- surounin
- ベストアンサー率28% (30/106)
シート1に10000行までシート2に3000行まで データが入力されていると仮定します。 シート2のB列(値が入力されていない列であれば、CでもDでもよい、この場合B列が空白と仮定します ) B1に以下の式を入力してください =COUNTIF(シート1!A$1:A$10000,シート2!A1) この式をずーっと下までコピーしてください B列に0より大きい値が表示された場合シート1に 同じ数値が存在するということです、あとはオート フィルターで取捨選択してください
補足
早速のご回答ありがとうございます。 上記の通りにやってみたのですが、値がすべて0になってしまいます(TT)私のやり方が悪いのだとは思うのですが…。それもと、シート1の行数より、シート2の行数が多い場合はこの方法は使えないのでしょうか?
お礼
出来ました!大変助かりました。ありがとうございました。