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*