1つだけ過去を変えられるとしたら?

ACCESS2000を使用しています。
FDのデータをテーブルにインポートしたいのですが、重複しているデータはインポートしたくありません。
キーとなるものは、「個人コード」と「入力日」です。
同じ個人コードでも入力日が違えば別データとしてインポートしたいと思います。
アドバイスの程よろしくお願いします。

※VBAを使って処理をするつもりです。
複数回の手順で行う方法でもよいので、良い方法があれば教えて下さい。

A 回答 (2件)

テーブルにキー設定、重複設定が


ちゃんとされていれば、重複データだけは
インポートされないと思います。

テーブルの設定を確認して
作業してみてください。
    • good
    • 0
この回答へのお礼

主キーだけではなく複数のコードにキーがはれるということですよね?
早速方法を調べてみます。
ありがとうございました。

お礼日時:2002/03/20 09:16

http://oshiete1.goo.ne.jp/kotaeru.php3?q=228783
に条件が増えたんですか?

ではまたSQL文で検出ではいかが?

select 個人コード,入力日,count(*)
from テーブル名
group by 個人コード,入力日
having count(*)>1
;


> FDのデータをテーブルにインポートしたいのですが
FD内のレコードと、もともとACCESS側のテーブルにある「レコードとの重複」なのか
FD内の「レコードとの重複」なのかがとても気になります。

コード(モジュール)で記述する方法の概略としては
1.FDの1レコードを読む。
2.「個人コード」と「入力日」をキーとして
ACCESSのレコードに該当があるか、読む。
(「個人コード・入力日」を主キーにしておくと検索が早い)
3.結果を判断。
該当のレコードがなければACCESSに書き込む。
あれば無視してFDの次のレコードを読む。
4.以下、FDのファイルのレコードが無くなるまで2.3.を繰り返す。
でしょうか。

VBAを使用して
1.ACCESS側に「主キー」を貼る。
2.FDのファイルをインポートする
(重複エラーは別ファイルに吐き出される。不要なら削除コードを記述)
3.インポート後に「主キー」を削除する
方法もありますよ。
    • good
    • 0
この回答へのお礼

午前中に補足を書いたつもりだったのですが、最終確認のボタンを押すのを忘れてたみたいです ( ̄□ ̄;
返事が遅くなり申し訳ありませんでした。

>FD内のレコードと、もともとACCESS側の
>テーブルにある「レコードとの重複」なのか
>FD内の「レコードとの重複」なのか
FDやACCESS側のテーブル自体には重複はありません。
定期的にFDのデータをACCESSにインポートする必要があり、その際に重複チェックをかけたいと考えています。

アドバイス頂いた方法のいずれかで試してみたいと思います。

お礼日時:2002/03/20 20:04

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

このQ&Aを見た人はこんなQ&Aも見ています