マクロは、楽に、速くしちゃいましょう♪_秘密の呪文☆
久々になってしまいました><
VBAをとてもがっつり書く機会をもらって、取り組んでいました。
その時に、とても良かった方法を公開していきます。
伝えるなんてもったいない、なんて後悔しません(笑)
さぁ、マクロを書くぞ~、となった時、
Sub と プロシージャ名を書いて、っとEnter!
End Sub が出て来て、上矢印して、本文を、
というのが、いつもの流れですね。
そしてまずやるお約束なことは、
マクロの実行速度を速めるために、っと
① Application.ScreenUpdating = False
② Application.Calculation = CalculationManual
③ Application.EnableEvents = False
そして、End Subの前に、
①’ Application.ScreenUpdating = True
②’ Application.Calculation = xlCalculationAutomatic
③’ Application.EnableEvents = True
と入れる方は多いと思います。
これらは、セットで毎回、ぜひ入れておきたいコードですよね!
(マクロ経験初期の場合、eventは入れ込んでいないと思いますので、
無くてもあまり影響はないのではないでしょうか。)
ただ、この写経、ご覧のように、入力補完機能があるとは言え、
マクロのコードを作成する度に入れるには、
長くて多くてまことにめんどくさいです。
①~③をコピペして①’~③’に打ち換えるとしても、
・ 行の最後にカーソル → BackSpace→ 打ち換え
と、やはりめんどくさい!!
それに大した内容じゃないのに、行を6行も増やしてしまっています。
コードの区切りとして改行とかも入れていきますと、その無駄な行は、
約10行まで膨らんでしまいます。
なので、最強の呪文をお伝えしますね☆
これらをw例によって、ユーザー関数にしちゃいましょう^^☆
Sub Ju
Application.ScreenUpdating = False
Application.Calculation = CalculationManual
Application.EnableEvents = False
End sub
Sub Mon
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End sub
これで、
Sub 何とか()
Ju
・・・・
Mon
End Sub
「ju」「mon」と、たった5文字打つだけで、
同じ実行速度を上げる効果が、毎回楽に得られます!!
(VBEが勝手に、大文字に変換してくれますので、
何も考えずに「ju」「mon」と打つだけで大丈夫です。)
この2つを作っておきますと、新しいモジュールを挿入した時も
気軽に、テストできますね^^
次のように、サクッと、専用モジュールを新しく作って、
上の2つの関数を、コピペしてもらえれば
完了です☆☆
① Alt→I→M
(Alt:アクセスキー起動、I:インサート/挿入、M:モジュール)
続けて、
② F4→Tab:モジュール名の変更
で、
このモジュールの中に、コピペしてください。
あ、プロシージャの名前は、セットで覚えやすいかと思ってつけたものなので、
お好みで変えてくださ~い^▽^