|    | 
     Accessでフォーム機能を使って新規レコードを追加する時、入力途中でフォームを閉じる『×』ボタンを押下すると、 
 必須入力項目が未入力でない限り、レコードの追加がされない方法を教えてください  
 
Accessでフォーム機能を使って新規レコードを追加する時、入力途中でフォームを閉じる『×』ボタンを押下すると、 
 必須入力項目が未入力でない限り、レコードの追加がされてしまいます。 
  
例えば、 
  
1.質問.accdbの質問用フォームの新規レコードを表示し、右上の『×』ボタンを押下する。 
 2.質問.accdbの質問用フォームの新規レコードを表示し、いずれかのテキストボックスに入力する。 
オートナンバーを表示するIDのテキストボックスに数値が自動挿入された状態を作り、右上の『×』ボタンを押下する。 
  
の場合、1では新規レコードがテーブルに追加されることなくフォームが閉じられます。しかし、2の場合はレコードが追加 
 されてしまいます。2のような場面で『×』ボタンを押下した時に、レコードの追加をしないようにする方法はありますか? 
  
『×』ボタンが使えないようにして、VBA(コマンドボタン)からフォームを閉じる記述に変更しても、フォームを閉じる行為 
 がレコード追加の発生根拠なのか、思い通りにいきませんでした。次に、Form_AfterInsert()メソッド内にCanselプロパティ 
 を使用し、更新処理前に新規レコードの追加をキャンセルしようとしましたが、効果がありませんでした。 
 現在は、同メソッド内に直前に登録したレコードを削除する「DoCmd.RunCommand acCmdUndo」を記述し、とりあえずの対応を 
 していますが、いちいち確認ダイアログボックスが表示されるのでストレスフリーには程遠い状態です。 
 | 
     
    
   |