Access VBA 質問スレ Part2 (788レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) レス栞 あぼーん
687: 2023/09/14(木)09:18 ID:t/htNvkA(1/6) AAS
サブフォームをもつフォームにおいて、
親フォーム側から
Me.サブフォーム.Requery
を実行すると、サブフォームのCurrentイベントが2回発生するんだけど、なんでなんだろ?
689: 2023/09/14(木)10:50 ID:t/htNvkA(2/6) AAS
>>688
検証のために、メインフォーム上ににサブフォームとサブフォームをRequeryさせるだけのボタンの最小限の構成にしても
687で書いた現象が発生している(サブフォーム側はCurrentイベントにdebug.printを書いただけ)
私は何か根本的な勘違いをしているのだろうか?それともAccessの仕様なのだろうか?
691(1): 2023/09/14(木)13:40 ID:t/htNvkA(3/6) AAS
>>690
サブフォームは新規作成した状態のものにCurrentイベントにdebug.print書いただけのものでも2回発生してるのよ
提示していただいたページはこちらで調べたときに見ていますが、そのページで書かれてるのは自分自身に対するRequeryのようなのでちょっと事情が違うようです
frmMain
------------------
Option Compare Database
Option Explicit
Private Sub btnRequery_Click()
Debug.Print "clicked ------"
Me.frmSub.Requery
省12
692: 2023/09/14(木)13:41 ID:t/htNvkA(4/6) AAS
んで、実行結果(イミディエイトウィンドウ)が
clicked ------
frmSub Form_Current
frmSub Form_Current
--------------
694: 2023/09/14(木)15:04 ID:t/htNvkA(5/6) AAS
>>693
loadやactivateではrequery時にイベントが発生しないので、本来の目的を達成できません
また、最初にフォームが開かれたときにはcurrentは一度しか発生していません
696: 2023/09/14(木)17:08 ID:t/htNvkA(6/6) AAS
>>695
frmSubはfrmMainに貼り付けられているのでfrmMainを開くと当然frmSubも開かれるので、
Open, Load, Current等のイベントはひととおり発生します(仕様通り)
これについては特に問題ではありません
問題にしているのはbtnRequeryをクリックしたときに、Me.frmSub.Requeryを一度しか呼んでいないのに
frmSubのCurrentイベントが二度発生していることです
紹介いただいたteratailのページを参考にあれこれ試してみたいと思います
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.345s*