Access

Accessの画面描画時のちらつきを防ぐ(一時的に非表示にする)方法

記事内に商品プロモーションを含む場合があります

描画時のちらつき、処理中の画面

Accessの画面に表示するデータをあれこれ操作していると、ユーザーには見られたくない描画状態が発生したりします。

例えばフォームのソースにワークテーブルを使っている場合など、再検索したタイミングで一旦ワークテーブルを削除したりすると一瞬以下のような画面が表示されたりします。

ワークテーブル削除

画面表示をOFFにする

こんな時には、検索処理(描画処理)をする前に以下のコードを追加します。

Docmd.Echo False

このコードで画面描画をOFFにし、処理が完了したらONにすることで処理中の画面のちらつきや見せたくない状態を非表示にすることができます。

尚、処理が完了したら必ずEchoをONにするコードを入れることを忘れないようにしましょう。

Private Sub DispForm()
   
On Error GoTo ErrProc

	'画面描画をOFFにする
    DoCmd.Echo False

    '==============
    '検索・描画処理
    '==============
    
EndProc:
	'画面描画をONにする
    DoCmd.Echo True
    Exit Sub
    
ErrProc:
    MsgBox Err.Number & Err.Description, vbOKOnly + vbCritical, "cmdRClear_Click"
    GoTo EndProc
    
End Sub

 

ABOUT ME
アズビーパートナーズ
プログラマー→社内SE→SIerのお仕事をしています。 メーカー勤務を経て、中小企業の社内SE、フリーランスなど様々な形態で働いてきました。 業務上生まれた困った…を解決してきたTipsを備忘録も兼ねて公開しています。 困っている誰かのお役に立てれば幸いです。