
OS:Win10
Access2016
access初心者です。
帳票フォームにて入力チェックを設定したいのですが、
主キーに設定している項目を未入力の状態で登録しようとすると、
自分で設定した未入力チェックより先にAccessのエラーメッセージが出てしまいます。
*「’[フィールド名]’フィールドに値を入力してください」というメッセージが出ます。
*自身で設定した入力チェックは、登録ボタン押下後の処理で設定しています。
自分で設定した未入力チェックが優先で働くようにする方法はあるのでしょうか。
詳しい方いらっしゃいましたら、ご教示のほどよろしくお願いいたします。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
ダメでしたか。
メッセージの内容としてはレコードの保存をしようとしたときに主キーに設定した項目で
キー違反が発生しているのでメッセージが表示されるのでそれより前のイベントであれば
入力チェックができると思うのですが。
回避方法としてとりあえず主キーの設定をやめて入力チェックを徹底することですかね。
No.1
- 回答日時:
イベントが発生する順番があるのでその影響だと思います。
https://support.office.com/ja-jp/article/%E3%83% …
フォームの更新前処理のイベントで主キーに設定した項目は入力チェックしてはどうですか?
Private Sub Form_BeforeUpdate(Cancel As Integer)
If IsNull(主キーの項目) = True Then
MsgBox ("nullですよ")
Cancel = True
End If
End Sub
y504さん
ご回答ありがとうございます。
イベントの発生は順番が決まっているのですね。
勉強になりました。ありがとうございます。
ただ、教えて頂いた通り、フォーム更新前処理に入力チェックを入れてみても、
やはりAccessのメッセージが先に来てしまいました。
(質問のときに書き忘れていたのですが、accessのメッセージはフォームを更新した直後に表示されます)
教えて頂いたURLのページによると、フォーム更新前処理の前にキークリック処理もあるようなので、
下記のように書いてみたのですが、それでもaccessのチェックが優先されるようでした。
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If IsNull(主キーの項目) = True Then
MsgBox ("nullですよ")
Cancel = True
End If
End Sub
主キーの場合は、自分でチェックをすることができないのでしょうか……?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Access(アクセス) Accessで予定表を作成しようとしてます。 テーブル フィールド名 連番 オートナンバー型 年月日 2 2023/07/23 11:40
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- その他(プログラミング・Web制作) Accessの代わりのノンプログラムデータベース作成 4 2022/10/21 09:26
- その他(Microsoft Office) こんにちは。Windows10でaccess(拡張子accdb)を右クリックし、プロパティ→全般タブ 1 2023/02/03 19:14
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- JavaScript javaScriptで画面に値を入れるには 1 2022/08/14 12:27
- JavaScript ラジオボタンによるフォームの開閉を行いたい 3 2022/03/31 21:30
- Access(アクセス) チェックボックスにチェックが入った後の挙動 1 2022/08/21 12:39
このQ&Aを見た人はこんなQ&Aも見ています
-
[Access]帳票フォームにて連続する非連結コントロールに個々の値を入れるには
Access(アクセス)
-
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
Accessで、最後(更新)にエラーチェックをしたい。
Access(アクセス)
-
-
4
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
5
サブフォームを利用したクエリーの抽出条件について
その他(データベース)
-
6
Accessのオブジェクトの表示順はかえられる?
Access(アクセス)
-
7
アクセスのマクロ
Visual Basic(VBA)
-
8
Access サブフォームでの選択行の取得
その他(データベース)
-
9
accessで未入力の場合にメッセージボックスを表示したい
Access(アクセス)
-
10
入力途中の入力した値をすべて削除する方法
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
passwordが入れられません・・・・
-
データベースのINT型項目にNULL...
-
アクセスで数値型のフィールド...
-
Access(office)のマクロの「値...
-
このオブジェクトに値を代入す...
-
入力規則違反-任意のエラーメ...
-
Accessで西暦の年だけ表示したい
-
フォームで入力しても反映されない
-
Access2000VBAでEscキーを禁止!
-
入力条件の指定・・・・
-
アクセス コンボボックスのリ...
-
ACCESS2000にて「うるう年」の...
-
Access VBA のテキストボックス...
-
ワード「フォーム」について
-
[access]帳票フォームでの入力...
-
非連結のtxtBoxのデータをcmdボ...
-
Excelで入力したデータを自動的...
-
Access フォーム フィールドへ...
-
Access レポート印刷するときに...
-
サブフォームに対してGoToRecor...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
データベースのINT型項目にNULL...
-
アクセスで数値型のフィールド...
-
passwordが入れられません・・・・
-
フォームで入力しても反映されない
-
Excelで入力したデータを自動的...
-
アクセスのテキストボックスの...
-
Access(office)のマクロの「値...
-
Access2007、フォームのテキス...
-
このオブジェクトに値を代入す...
-
入力規則違反-任意のエラーメ...
-
Accessで西暦の年だけ表示したい
-
Access2007 textboxに入力でき...
-
ACCESS2000にて「うるう年」の...
-
Access2000VBAでEscキーを禁止!
-
【Access】 VBA 入力漏れを防...
-
EXCELのユーザーフォームで入力...
-
Accessで小数の入力について
-
ファイルメーカー 一ヵ月後の...
-
アクセス2003 入力規則
-
ユーザーフォームで数字にカン...
おすすめ情報