ACCESS 実行時エラー’2467′ サブフォームやコントロールが読み込まれない??

AccessVBA開発

「指定した式で、閉じているかまたは存在しないオブジェクトを参照しています。」
今まで普通に動いていたのに、他のフォームのパーツの修正やらやっていると
急にサブフォームのレコードソースの切り替えの際に、このエラー!?が出て、切り替えできない。

修正・追加したフォームとは全く関係のない既存フォームで発生している。
確認してみるとサブフォームが読み込まれていない。
読み込まれていないサブフォームの情報を参照できないから、このエラーが発生。

なぜ読み込まれないのかが分からない。

<解決策>

このため、対処法としては、Open、Loadイベントは使用せず、OpenFormした後に、フォームに定義したPublicイベントを呼び出すという方法をとっています。この方法だと、オブジェクトの生成後の呼び出しになるため、問題が発生しません。
多分、こんな感じです

Public Function OPEN_MF01_JOB選択F() As Integer
Dim frm As Form_MF01_JOB選択F
DoCmd.OpenForm “MF01_JOB選択F”
Set frm = Forms(“MF01_JOB選択F”)
frm.Init
End Function

Public Sub Init()

Me!T02_PJ_DT.Form.RecordSource = set_sql  ‘20100708 ←ここで止まる

End Sub

 

<参照先>
http://www.vbalab.sakura.ne.jp/vbaqa/c-board.cgi?cmd=ntr;tree=11710;no=11711;id=access

おススメのSQL本はこちら

タイトルとURLをコピーしました