VBAの参照設定(最終確認)
VBAの参照設定でACCESSの2003と2007で不具合があったが、再現できなかったと記事を書きました。
古いバージョンの操作用MDBで確認したところ、
2007でOFFICE関連の参照不可が出ていたことが判りました。
この参照自体は、今の統合管理には不要なものなので、今後の作成バージョンでは、あらかじめ外します。
ということで、原因は判ってすっきりしました。
すっきりついでに、参照不可を回避するコードも検証しました。
今の統合管理では、AutoExecと名づけたマクロ(起動時に自動実行します。)で初期設定の為のモジュールを動かしています。
【VBAコード】
'参照設定の有無チェック
For Each Ref In References
If Dir(Ref.FullPath) = "" Then
Application.References.Remove Ref
End If
Next Ref
は、有効に機能していましたが、同じモジュールに下記のコードが存在すると、起動時にエラーとなって、進みませんでした。
モジュールの外に SUB として出して、コールするようにすると、回避できました。
何故、エラーが発生したのか良くはわかっていません。
停止時には、Formatがフォーカスされていましたので、多分、このコード内に、参照不可と絡む部分があったのだと思います。
'If GetINIValue("使用年度", "Data", CurrentProject.Path & "\" & "A_Tougou.INI") = "" Then '3月14日のチェック
' If Format("03/14", "m") - Format(Date, "m") > 0 Then
' DoCmd.OpenForm "F_使用年度選択", , , , , acDialog
' ElseIf Format("03/14", "m") - Format(Date, "m") = 0 Then
' If Format("03/14", "d") >= Format(Date, "d") Then
' DoCmd.OpenForm "F_使用年度選択", , , , , acDialog
' End If
' Else
' SetINI = SetINIValue(Format(Date, "yyyy"), "使用年度", "Data", CurrentProject.Path & "\" & "A_Tougou.INI")
' End If
' End If
尚、デバッグモードでは、
« いたずらパンク | トップページ | 5/14日(火)は臨時休業いたします。 »
「Access 業務管理」カテゴリの記事
- お客様宅の緯度経度情報(2018.07.24)
- モジュールとメインフロー(2018.03.01)
- 受注情報の登録パターン(2017.10.11)
- 懸案は解決しましたが、PCが不調です。(2017.10.08)
- コンボボックスのリスト外入力からの振り仮名取得(2017.10.07)
コメント