Windowsネタなのだが、秀丸のマクロは実行過程を非表示にすると爆速になることに気がついた。大量の置換は実行過程を非表示にすると高速化するのはよく知られていると思うが、マクロの実行も同じ傾向のようだ。
コードの内容にもよるが、画面書き換えが多い場合、実行過程を非表示にすると動作速度が数十倍以上にはなる。
実行過程を非表示にするには、マクロのコード中で、ウインドウをアイコン化すれば良い。具体的にはたとえば、
showwindow 2; // 高速化のためアイコン化する
(高速化したい処理をここに記述)
showwindow 1; // ウインドウを元に戻す
とする。
コメント
では、便乗してVBAネタも。
Excelなんかもマクロも過程を非表示にすると爆速になりますよ。
Application.ScreenUpdating = False
Application.ScreenUpdating = True
あと、処理時は再計算もオフにすると良い場合が。
Application.Calculationを使います。
ほほう。
会社のExcel VBA実行待ちで給料を貰っている人に
教えてあげなければ(笑
置換をたくさん含むマクロが文字通り10倍速になりましたよ!
これはありがたい
お役に立てて良かったです!