- 締切済み
2シート間の重複データのチェックについて質問です!
2シート間の重複データのチェックについて質問です! まず、以下のように二つのシートがあるとします。 【シートA】 A列 B列 登録あり あああ社 登録なし いいい社 登録あり ううう社 登録なし えええ社 登録あり おおお社 登録なし かかか社 【シートB】 A列 B列 あああ社 いいい社 えええ社 おおお社 かかか社 さささ社 やりたいのは、シートAのB列の社名がシートBのB列と重複しており、且つシートAにて登録ありの社名のみシートBのA列に「登録あり」とチェックする・・・ということです。 要するに、 以下のようにしたいのです。 【シートB】 A列 B列 登録あり あああ社 いいい社 えええ社 登録あり おおお社 かかか社 さささ社 ちなみに、シートAは5000社、シートBは10000社以上あります。 ここでシートAとシートBを比較し、登録ありの重複データをシートBにてチェックしたいということです。 説明がややこしくて大変申し訳ありません。 どなたか教えていただけませんでしょうか? 何卒よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- MackyNo1
- ベストアンサー率53% (1521/2850)
>ですが、試してみたのですが、重複していないところが“登録あり”となってしまいました。 こちらでは問題なく表示できています。 参照するセル番地をよく確認してください。
- MackyNo1
- ベストアンサー率53% (1521/2850)
目的にもよりますが、たとえば「登録あり」の重複データだけを抽出したいなら、数式にこだわらずに「フィルタオプションの設定」を利用するほうが簡単で計算負荷が少ないのでよいと思います。 たとえば、現在空白のシートBのA列にはすべて「登録あり」と入力し検索条件範囲にしておきます。 次に、シートAで「データ」「フィルタ」「フィルタオプションの設定」でシートAのデータ範囲を指定し、検索条件範囲にシートBのデータ範囲を選択し「OK」すれば、シートAで「登録あり」の重複データだけを抽出することができます。
- MackyNo1
- ベストアンサー率53% (1521/2850)
COUNTIF関数などを含む数式の入力データ数が多い場合は、メモリー不足からエクセルがフリーズしたりすることがあります。 実際に検証していませんが、以下の数式のほうがメモリーの使用量が少ない可能性がありますので、この数式でも試してみてください。 =IF(ISNUMBER(MATCH("登録あり"&B1,INDEX(Sheet1!$A$1:$A$10000&Sheet1!$B$1:$B$10000,),0)),"登録あり","")
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! 色々方法はあるかと思いますが・・・ 一例です。 ↓の画像の右側がシートBになります。 シートBのA2セルに =IF(COUNTIF(シートA!$B$2:$B$10000,B2),IF(INDEX(シートA!$A$2:$A$10000,MATCH(B2,シートA!$B$2:$B$10000,0))="登録あり","登録あり",""),"") という数式を入れ、フィルハンドルの(+)マークでダブルクリックしてみてください。 画像のような感じになると思います。 尚、数式はシートAの10000行まで対応できるようにしていますが、 データ量によって数式の範囲指定領域はアレンジしてみてください。 以上、参考になれば幸いですが、 他に良い方法があれば読み流してくださいね。m(__)m
お礼
先ほど子供を寝かしつけ、やってみました。 できました!! いつも困った時に助けていただいてありがとうございます☆ 本当に助かりました。 ありがとうございました!!
お礼
ご回答ありがとうございました。 いろんな関数があるのですね! 勉強になります。 ですが、試してみたのですが、重複していないところが“登録あり”となってしまいました。 しかしながら、教えていただいた関数は意味などを調べ勉強してみます! ありがとうございました。