<再現>
Form.DirtyイベントにSetProperty/プロパティを設定
- コントロール名:(コントロール名)
- プロパティ:値
- 値:任意
<現象>
マクロが再帰呼び出しされる。カウンタをこさえて確認
<対処>
エラー時マクロアクションでエラーメッセージを表示させないことは可能だが、再帰呼び出しは発生する。なので、2007同様値の代入マクロアクションを使う。
もしくは、VBAで対応。
Private Sub Form_Dirty(Cancel As Integer) DoCmd.SetProperty Me.フィールド3.Name, acPropertyValue, Now() End Sub
と、思い込んでたけど、VBAでもだめなんだな。値の代入であれば、Dirtyイベントが発生しないんだけど、Dirtyイベントでプロパティの設定を実行させた場合、さらにDirtyイベントが発生してしまうと。
Private i As Integer Private Sub Form_Dirty(Cancel As Integer) DoCmd.SetProperty Me.フィールド1.Name, acPropertyValue, 1234 i = i + 1 Debug.Print i '73までカウントした End Sub
サポート:現象確認済み