- ベストアンサー
エクセルデータの比較をしたい。
エクセルのデータを比較したいのですが、たとえばある会員のデータがありますが、毎月変動します。いままでは、1件づつ目で確認していたのですがかなり大変です。そこで、会員データの前月と今月とで会員を辞めた人、会員に新しくなった人を簡単に確認できる方法を探しています。データは1000件くらいあります。よろしくお願いします。できれば、図解がついてると非常に助かります。簡単なもので結構です。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは! 具体的なレイアウトが判らないので勝手に↓のような感じにしてみました。 上が前月のデータ(Sheet1)・下が今月データ(Sheet2)とします。 「新会員」「脱退員」が一目でわかるように!というのがご希望のようなので、 Sheet2(今月分)に表示するようにしてみました。 とりあえずやり方だけ! Sheet1に作業用の列を設けています。 作業列E2セルに =IF(OR(A2="",COUNTIF(Sheet2!A:A,A2)),"",ROW()) としてオートフィルでずぃ~~~!っと下へコピー! (行番号が表示される人が脱退員になります) Sheet2のE2セルに =IF(A2="","",IF(COUNTIF(Sheet1!A:A,A2)=0,"新","")) としてオートフィルで下へコピー! (E2セルのフィルハンドルでダブルクリックでもOK) F2セルに =IF(COUNT(Sheet1!E:E)<ROW(A1),"",INDEX(Sheet1!A:A,SMALL(Sheet1!E:E,ROW(A1)))) という数式を入れ下へコピーすると 画像のような感じになります。 これでSheet1にデータがあり、Sheet2にデータがない人の会員NOが表示されます。 この程度ですが、 他に良い方法があればごめんなさいね。m(__)m
その他の回答 (4)
- keithin
- ベストアンサー率66% (5278/7941)
そんなにムズカシイあれこれをしなくても たとえばA列に「会員番号」が記入してあって、これで照合できることにします。 先月のリストがSheet1、今月のリストがSheet2にあります。 先月のシート1のB列に B2; =IF(COUNTIF(Sheet2!A:A,A2),"","退会") 以下コピー のように計算すれば、先月いたのに今月やめた人がわかります。 今月のシート2のC列に C2: =IF(COUNTIF(Sheet1!A:A,A2),"新規","") 以下コピー のように計算すれば、今月新規で新たに発生した会員番号がさくっと分ります。
どういう感じでデータが格納されているかで変わりますが、会員データなら会員番号でソートしてやれば、前月と今月での比較はできるのではないでしょうか? このあたりはマクロでなんとでもなりますし、会員番号だけ前月と今月で参照させて並べてやればマクロの作り方もわかりやすいのでは? 毎回それが面倒なら、削除や追加された会員データを保管しておくような仕組みも必要なのっはないでしょうか?
- acha51
- ベストアンサー率41% (436/1042)
- KURUMITO
- ベストアンサー率42% (1835/4283)
どのようにデータが入っているのか示していただけませんか。 それによって対応の仕方が変わりますね。