- ベストアンサー
アクセスデータの重複確認方法と対策
- アクセスデータの重複を確認したい場合、顧客情報の名寄せ(名前と郵便番号の一致確認)を行い、重複データを排除することが重要です。
- また、顧客情報の修正をオープンにする際には、入力データの重複チェックや適切なエラーメッセージ表示などを実装することで、重複データの発生を防ぐことができます。
- アクセス初心者の方には、データベースクエリを使った重複データの検索方法や、データ管理の基本的なポイントなどを学習することをおすすめします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
もっといい方法があると思いますが、一つの提案です 顧客名と郵便番号の二つのフィールドを主キーとしたテーブル「顧客重複チェック」を作成し、 これに顧客テーブルを追加(insert)します。 「顧客」と 「顧客重複チェック」をIDと顧客IDにリレーションシップで関連つけます。 ※結合プロパティー:顧客の全レコードと顧客重複チェックの同じ結合フィールドのレコードだけ含める 2つのテーブルを基にしたクエリーを開くと、顧客重複チェック部分が空白のレコードが重複レコードです 二つのフィールドを主キーにする テーブルをデザインビューで開いてフィールドの左端をshift+クリックで複数選択し主キーをクリック レコードの追加は追加クエリーでも出来ますがVBAだと次のようになります 尚、DoCmd.RunSQL "delete from 顧客重複チェック"は 繰り返し実行できるように顧客重複チェックを初期化する処理です。 Private Sub 重複チェック_Click() DoCmd.RunSQL "delete from 顧客重複チェック" DoCmd.RunSQL ("insert into 顧客重複チェック(顧客名,郵便番号) select 顧客名,郵便番号 from 顧客 ") End Sub
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
http://www.feedsoft.net/access/access-technic/access-technic12.html などに、アクセスでの重複データの確認法の操作が載っています。 Googleで「アクセス データ 重複チェック」で照会すればたくさん記事が出ます。 これは取り立てて、ここへ質問するようなことではないですが。 ーー >情報が少なく、申し訳ございませんが、 質問の背景がよくわからない。 ・質問者がアクセスの全くの初心者なのか ・もっとむつかしいシステムの事情があるのか。 周りに聞く人・アクセス熟達者がいないのか。 ーー (1)新規顧客登録時に会社?側で、プログラムでチェックをするはず。 氏名+郵便番号より氏名+電話坂東番号の方が有効ではないですか、とか (2)定期的に、いろいいろな観点からチェックプログラムを走らせて、重複や氏名変更や住所や電話番号変更(ダイレクトメールの不着など、応対時の確認などで)に注意する必要があると思います。(例 1文字違いの名で同じ住所の人がいないかなどプログラムを作ってチェック。ただし余り重複を重要に考えなくても良い顧客登録なら、やらないだろうが) ーー それと会社・事業者のコンピュターシステムを、素人がいじくるのは危険が多いと思います。業者や、相談できる人や業者を作ることです。 >名前と郵便番号)で名寄せする、と決めたのは、システムの経験者ですか? 事業者の問題をアクセスででも処理するのは、VBAででも処理できることが必要で、質問者がアクセスVBAでも駆使できる域になるまでは要注意。
- toi_awase_01
- ベストアンサー率31% (133/429)
そもそも、名前と郵便番号で名寄せすれば高い確率で重複すると思います。 サンプルデータであれば顧客名と電話番号では重複しないでしょう。 (本当は住所も欲しいが) 余談はさておき、Accessに詳しくなくても、Excelは多少できるでしょう ID~電話番号の列をコピーしてExcelに貼り付けて 顧客名と郵便番号でソートして 顧客名1番目=顧客名2番目と電話番号1番目=電話番号2番目を ・・・ 顧客名N番目=顧客名N+1番目と電話番号N番目=電話番号N+1番目の 結果を別のセルに求めれば、ID何番と何番が重複しているか分かります。