Access窗體使用 [Form].[Recalc] 時如何避免閃爍(Flickering )

2019-12-08 08:00:00
zstmtony
轉貼
90
Access窗體使用 [Form].[Recalc] 時如何避免閃爍(Flickering )

我正在使用MS Access 2013,并且有一個計算,在每次更改基礎值時都需要更新。“記錄”本身不需要更新,只需在保存記錄之前更新“監視”值即可。

該表單有12個會計年度的月份(10月-9月),并且在每個文本框中輸入了“Currency”值。每次每次更改時,所有文本框的總值都需要顯示在底部。目前可以,但是閃爍劇烈。

結構如下

每個文件框在 AfterUpdate 事件有如下代碼  : =[Form].[Recalc]

 合計 "Total" 文本框有如下公式:
=Nz([txtOCT_Nc],0)+Nz([txtNOV_NC],0)+Nz([txtDEC_NC],0)+Nz([txtJAN_NC],0)+Nz([txtFEB_NC],0)+Nz([txtMAR_NC],0)+Nz([txtAPR_NC],0)+Nz([txtMAY_NC],0)+Nz([txtJUN_NC],0)+Nz([txtJUL_NC],0)+Nz([txtAUG_NC],0)+Nz([txtSEP_NC],0)

如何使用VBA代碼來避免閃爍呢


解決方法:
在模塊中創建以下函數

Private Function MyRecalc()

    Application.Echo False
    Me.Recalc
    Application.Echo True

End Function

改變控件的更新后事件 AfterUpdate 為
=MyRecalc()
分享
北京十一选五基本走势