![]() |
![]() |
データ更新前にキーの重複をチェックする方法 | フォーム、VBA |
フォームからのデータ入力では、テーブル上で主キーや重複なしのインデックスに設定されているフィールドに対して、既存のレコードと同じデータを入力・保存しようとすると、次のような、Access既定の難解なメッセージが表示されてしまいます。 ![]() ここでは、データ更新前にキーの重複をチェックし、オリジナルの警告メッセージを表示する方法を紹介します。 ![]() ■テキストボックスの更新前処理イベントプロシージャ Private Sub 顧客コード_BeforeUpdate(Cancel As Integer)
If DCount("顧客コード", "顧客マスタ", _ "顧客コード='" & Me!顧客コード & "'") > 0 Then Beep MsgBox "既存のデータと同じ顧客コードが入力されました! " & _ "別の値を入力してください。", _ vbOKOnly + vbExclamation, "重複エラー" Cancel = True End If End Sub ※ここでは、テーブル「顧客マスタ」上に、テキストボックスに入力された値と同じ「顧客コード」を持つレコードが何件あるかをDCount関数を使って調べています。もし、この数字がゼロなら、そのようなレコードはない、つまりキーが重複していないことになります。 |
|||
|
Copyright © T'sWare All rights reserved | ![]() ![]() |