ALL Program VBA

【VBA】EXCEL-画面遷移を止める方法【コード有】

VBA-EXCELの画面遷移を止める方法

 

EXCEL VBA動作時EXCELの画面遷移止めたいです!
 

こんな悩みに回答します。

 

非表示にできる< 目次 >

こんな悩みの人向け

 

こんな悩みの人向け

  • VBA動作時に EXCEL画面遷移を止めたい人
.

なぜEXCEL画面遷移を止める必要があるかというと、
VBAで情報量が多いものを扱うと処理スピードが一気に遅くなりますからね。

EXCELの画面遷移を止めてあげることにより、画面遷移に使用するPCメモリが抑制され、VBA実行動作は驚くほど 早くなります。

VBA動作中に、VBAユーザーに不用意な処理をさせないためにも必要なスキルだったりします。
知っておいて損のないVBAスキルですので、このタイミングで抑えときましょう。
Nakamura

 

 

ということで、説明いたします。

 

 

コードの紹介

EXCELの画面を抑止するコードは以下の通り。

 

一緒にEXCEL画面遷移を再開させる方法 ↓ も紹介してすので、併せて動作確認してみて下さい。

 

 

ここでの ワンポイント アドバイスですが、VBA処理の最後には必ず「Application.ScreenUpdating = True」を入れてあげましょう。

このコードを入れてあげないと、EXCELの画面が止まったままになります。

これってどういうこと?という人向けに説明すると、
「Application.ScreenUpdating = False  'False → EXCEL画面遷移を止める」を実行すると、
EXCELそのものの画面遷移設定を 止める設定に変更されます。

つまり、EXCELの設定が変わったまま処理を終えてしまうため、EXCELを触れなくなります。

ですので、VBA処理の最後には必ず True で画面遷移設定を復活させてあげましょう。
意外に忘れちゃうんですよね。この設定・・・。
Nakamura

 

 

終わりに

Application.ScreenUpdating のコードは、VBAの動作スピードを向上させる方法で、もっともポピュラーな方法の1つです。

簡単にVBAスピードを向上させることが出来るのですが、
本記事で説明しました通り注意点もありますので、その辺は理解した上でVBAをコーディングしましょう。

今後も、VBAに関する有用なコードがありましたら、
紹介していきますので、どうぞよろしくお願いいたします。

今回はここまでとなります。




-ALL, Program, VBA
-, ,