アプリ版:「スタンプのみでお礼する」機能のリリースについて

2つの名簿データベースがあります。(約3千件)
元はAデータベースで、これに随時、追加・修正を
加えたBデータベースがあります。
このAとBそれぞれに、重複した名簿データが含まれている
可能性があります。
これを重複がないかチェックし、あった場合は
BデータベースのB列に "重複" 表示させる方法を
教えてください。

希望結果表示イメージは次ぎのとおりです。

Aデータベース   Bデータベース
A列 B列・・・  A列 B列・・・ Z列
aaa         aaa
bbb         bbb       重複
bbc         bbd
ccc         ccc
ddd         bbc
eee         eee
fff         bbb       重複

希望1:Z列に関数を埋め込み表示
希望2:VBでループ処理
希望3:何でもいいです

A 回答 (4件)

多分、Excelなんでしょうね。


データベースA、BってのはExcelのシートなのだとして、そのA列の100行までデータが入ってると仮定します。このとき、A列を昇順でソートされているものとします。
そして、シート名「データベースB」のZ1に以下の式を入力して、下までコピーでどうでしょうか。

=IF(ISERROR(VLOOKUP(A1,データベースA!A$1$:A$100$,1,FALSE)),"","重複")
    • good
    • 0

データベースとありますが、勝手にexcelと解釈して


話を進めます。

1.AデータベースのC列の全ての行に「重複」と入力
2.BデータベースのZ列の1行目に以下の式を入力
 =VLOOKUP(Z1,[Aデータベース.xls]Sheet名!$A:$C,3,FALSE)
3.Z列の全行にコピー

重複したものは「重複」、重複しないものは「#N/A」が
表示されます。
「#N/A」を消す方法もあったと思うのですが、
とりあえず思い出せないので省きます。

<応用>
Aデータベースが加工できないのであれば、
別にどの列を表示させてもよいと思います。
とにかく「#N/A」がでたものが重複していない
行です。

<欠点>
vlookupでは半角・全角は違うものとして
扱われます。A列の表記が全く同一でないと
重複とみなされません。
asc、jis、trim等の関数を使って
調整が必要かもしれません。
(各関数についての詳細はHelpを見てください)

この回答への補足

#1~#4の皆さん、すばやいご回答、ありがとうございます。
データベースはエクセル上です。
ご回答を試してみましたが、いずれもうまくいきませんでした。全て「重複」と表示されたり、空白だったり。
当方の説明がまずく、申し訳ありません。シート1にAデータベース、シート2にBデータベースです。いずれも構造(項目名)は同じです。

AとBは基本的に同じ名簿で、双方に1名づつ名前があれば「OK」です。両方のデータベースをざっと一覧してみると、特にBに重複が見られます。
つまり、今後はBを使用することになりますが、Aに載っている名簿で漏れがないか、Bの中に2重に掲載されたものがないかのチェックをしたいのです。
最初は、VBでBの1件目とAの1件目~3000件目をチェックし、次いでBの1件目とBの2~3000件をそれぞれ重複チェックするものを作成しようとしたのですが、時間がなく挫折気味です。
できたとしても、3千×3千=9百万回の計算をPCに強いることになり、結構な時間がかかりそうで、作成を思いとどまっています。

なお、半角・全角・空白等の問題は解消済です。

もう少し頑張ってみますが、ご支援を引き続きお願いいたします。

補足日時:2002/11/05 14:19
    • good
    • 0
この回答へのお礼

本当は、関数かVBできれいにやりたかったのですが、時間がなくて、それぞれのDBをソートして上下関係でチェックを入れることで解決させました。
ある程度の数(重複は約30件でした)に絞ってしまいましたので、とりあえず目で見て手直しです。
もう少し皆さんのご意見を伺いたい気もするのですが、一旦閉めさせていただきます。

お礼日時:2002/11/05 15:59

Excelとすれば。


=IF(A1<>"",IF(A1=VLOOKUP(A1,[シートA.xls]Sheet1!$A$1:$A$100,1,TRUE),"重複",""),"")
をシートBのZ1に記述しましょう。
並んでいる順は不動でかまいません。$A1:$A100に実際にデータに入っている範囲を指定してください。
    • good
    • 0

初めまして。

使用しているアプリケーションはアクセスですか?それともエクセルですか?これがわからないと処理の方法が違うのでお答えすることができません。どちらで処理をされたいのかお知らせ下さい。
    • good
    • 0

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