こんにちはロンピーです。
私が普段実務でVBAを使っていて、「これはよく出てくるコードだな。」と気づくことがあります。
本サイトは、できるだけシンプルなVBAを心がけるようにしていますので、
参考にしていただけるとうれしいです。
今回は、このようなシチュエーションです。
はてな
マクロを動かしたときに、カンタンに時間短縮できる方法はないかな。
このような気持ちになったことはありませんか。
VBAの基礎が分かり、コードを記述して動かすことがある程度できたとしましょう。
そんな時、画面がチカチカ動いてなかなか処理が終わらない、という経験をされた方もいるかもしれません。
実は、これは処理している内容を画面がすべて表示しようとしているので時間がかかってしまうのです。
そんな問題を解消するのが、
ポイント
画面の更新を一時的に停止させる。
です。
先にこの方法のデメリットをあげるとしたら、どんな動作をしているかぱっと見分からない。
ということになりますが、実際にVBAボタンを押してしまえば、途中でとめないですよね。
なので、どんな動きをしていようが関係ないと個人的には考えます。
よって、時間短縮になるメリットばかりなので、ぜひ使用することをおすすめします。
それでは、VBAの記述方法ですが、VBAコードの最初に
Application.ScreenUpdating=False
と記述しましょう。
これで、画面の更新を停止することができます。
そして、処理終了後には再度有効化するために、
Application.ScreenUpdating=True
と記述するようにしてください。
これだけで、カンタンに時間短縮できますので、おすすめです。
Sub 画面更新停止() Application.ScreenUpdating=False '何らかの処理 Application.ScreenUpdating=True End Sub
今回はこの辺で。