現在、仕事でAccessを使用し始めましたが、イベントの発生するタイミングがわからなくて困っています。
「テーブルA」を元にした単純な帳票形式のフォームを作成し、そのフォームのレコードが1件更新(追加、変更)される度に、他のテーブルBの項目を更新する必要があり、VBでフォームのイベント「Form_AfterUpdate」に、テーブルBの更新内容を記述していますが、新規でレコードを入力しても、既存のレコードの変更を行っても、「Form_AfterUpdate」が実行されない様なのです。確認の為に、「Form_AfterUpdate」内にブレークポイントを設定していますが、ブレークする事も無く、テーブルBの更新もされていません。
ネット上で色々検索してみたのですが、結局見つけられずに、困っています。通常、レコードの変更時に、更新後処理が実行されない事ってあるのでしょうか?
No.1ベストアンサー
- 回答日時:
Q、通常、レコードの変更時に、更新後処理が実行されない事ってあるのでしょうか?
A、ありません。ただし、<Tab移動=カレントレコード>という設定であれば別です。
<Tab移動=カレントレコード>という設定でない場合。
1、不良セクタをスキャンして回復させてみる。
2、DB の最適化・修復をしてみる。
3、関数とかコードのコピペを無原則にしていないかを調べる。
大抵の不具合は、1と2で解消されます。
前回、コンセントを引っこ抜いてAccess を異常終了させた場合、1は有効です。
また、定期的にDB の最適化・修復をしないといけないのも Access の特徴です。
例えば、プロシージャを一度だけコピペしても不具合は発生しません。
だが、仮に順序を並び変えたりするとプロシージャの一切の動作は保証されない場合もあります。
これは、初期によく犯す過ちです。
先ずは、1、2、3を・・・。
Husky2007さん、早速の回答ありがとうございました。
教えていただいた方法の1~3を実行した所、1,2を実行した所までは、状況が変わらなかったのですが、3の方法で、Husky2007さんが意図されていた事とは違うかもしれませんが、とりあえず「Form_AfterUpdate」を一旦全て削除し、もう一度作成し直したら、なんと、ちゃんと実行されるようになりました!ありがとうございました!
「Form_AfterUpdate」内で実行する内容を、最初は他のイベント内に入れていて、何回かコピペで移動したりしていたせいでしょうか?
Husky2007さんが書かれていた、
「例えば、プロシージャを一度だけコピペしても不具合は発生しません。
だが、仮に順序を並び変えたりするとプロシージャの一切の動作は保証されない場合もあります。これは、初期によく犯す過ちです。」
について、よろしければもう少し詳しく教えていただけないでしょうか?
今後の参考にもさせていただきたいので、お時間のある時で結構です。
とりあえずは、ありがとうございました。
No.3
- 回答日時:
X そこで一旦念の為にAccess を再起動。
O そこで一旦念の為にプロシージャを削除して Access を再起動。
なお、Access 2.0、VB 4.0 時代から確認されている不具合です。
Husky2007さん、早速の追加の回答、ありがとうございます。
Access 2.0、VB 4.0 時代から確認されている不具合なんですか...
そんなに以前からの不具合なんですね。
こういう症状があるという事がわかったので、今後は気をつけたいと思います。
度々ありがとうございました。
No.2
- 回答日時:
Q、何回かコピペで移動したりしていたせいでしょうか?
A、そうです。
その場合、コピペしたプロシージャを一旦メモ帳等に保存します。
そこで一旦念の為にAccess を再起動。
その後に、メモ帳から戻せば正常化します。
>とりあえず「Form_AfterUpdate」を一旦全て削除し、もう一度作成し直したら・・・
結局は同じことです。
常に、削除、再打キーしなくても回復できますよ!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- Access(アクセス) accessについて(超初心者です) 1 2023/02/11 11:18
- その他(プログラミング・Web制作) google formsを使ったタスク依頼フォーム作成におけるご相談 1 2023/06/22 15:55
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- その他(Microsoft Office) エクセルでテーブルの最終行が自動追加されない 1 2023/01/04 15:09
- Excel(エクセル) 【vba】日付の形式が勝手に変わってしまう。 1 2022/09/29 10:54
- Google Drive Google form を利用して 問い合わせフォームを作りたい 1 2022/04/25 14:15
- Access(アクセス) ACSESS初心者です マンション管理をACCESSで出来ないかとチャレンジしています。 リレーショ 3 2022/10/08 11:45
- Excel(エクセル) エクセル テーブル機能の不明点 2 2022/04/14 14:10
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
Accessの画面更新を一時的に停止する方法。
その他(データベース)
-
Access サブフォームでの選択行の取得
その他(データベース)
-
Accessの更新後処理で特定の条件を満たしている場合、フォーカスを移動させない方法
PowerPoint(パワーポイント)
-
-
4
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
5
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
6
Accessでレコードが更新された時に発生するイベント。
その他(データベース)
-
7
アクセスVBAのMe!と[ ]
Access(アクセス)
-
8
accessの自動更新処理をできないようにするにはどうすれば良いですか?
その他(データベース)
-
9
Access 別フォームへの再クエリ(更新)がしたい。
その他(データベース)
-
10
Accessのフォームにて、詳細行のボタンを行の内容により、表示/非表
その他(Microsoft Office)
-
11
Accessの桁区切りについて教えてください。
Access(アクセス)
-
12
アクセスでテーブルの変更内容をフォームに反映させるには?
その他(データベース)
-
13
Access VBA Me.Requery レコードは削除されています エラー
その他(データベース)
-
14
フォームで入力しても反映されない
Access(アクセス)
-
15
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
16
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
17
サブフォームに対してGoToRecordするには?
その他(Microsoft Office)
-
18
親フォームからサブフォームのレコードソースを設定
Access(アクセス)
-
19
ACCESSでタイトルバーを非表示にする方法
Access(アクセス)
-
20
ACCESSでデータ読み取り専用を解除する方法
その他(データベース)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessでレコードの複製
-
Accessフォームで詳細内の任意...
-
ACCESS 複数のフォームから同一...
-
アクセスで複数レコードを1レ...
-
accessでオートナンバーを使わ...
-
AccessのRefresh・Requery・Rep...
-
Access サブフォームでの選択行...
-
エクセルで、抽出したデータだ...
-
ExcelのComboboxでマウスのスク...
-
ソフトの製品コードを知りたい
-
AccessのWHERE句において、変数...
-
Accessでデータを更新したらそ...
-
前のレコードの値を自動で入れたい
-
Accessのコンボボックスでリス...
-
ACCESSで、EXCELのような、sumi...
-
access別のテーブルを参照して...
-
PDFファイルから特定の文字を検...
-
Accessフォームが入力できません。
-
「バリアント型でない変数に Nu...
-
PDFファイルを一部分だけ保存し...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESS 複数のフォームから同一...
-
ACCESSフォーム入力後の確定
-
AccessのRefresh・Requery・Rep...
-
Accessフォームで詳細内の任意...
-
access の 最終レコードの判定...
-
Accessでレコードの複製
-
accessでオートナンバーを使わ...
-
Accessのレコード数をテキスト...
-
Accessで経過日付に応じて色を...
-
MS.Access でサブフォーム付の...
-
DoCmd.SearchForRecord が動か...
-
Accessの「Form_AfterUpd...
-
access2010 特定文字を含むレコ...
-
アクセエスのレコードの更新をV...
-
新しいレコードへの移動時にト...
-
アクセスのコンボボックスの内...
-
アクセスのフォームで自動連番...
-
ファイルメーカーProでレコード...
-
アクションクエリ DoCmd.RunSQ...
-
アクセスで複数レコードを1レ...
おすすめ情報