秀丸マクロを高速化するには(小ネタ)

Windowsネタなのだが、秀丸のマクロは実行過程を非表示にすると爆速になることに気がついた。大量の置換は実行過程を非表示にすると高速化するのはよく知られていると思うが、マクロの実行も同じ傾向のようだ。

コードの内容にもよるが、画面書き換えが多い場合、実行過程を非表示にすると動作速度が数十倍以上にはなる。

実行過程を非表示にするには、マクロのコード中で、ウインドウをアイコン化すれば良い。具体的にはたとえば、

showwindow 2; // 高速化のためアイコン化する
(高速化したい処理をここに記述)
showwindow 1; // ウインドウを元に戻す

とする。

コメント

  1. MacBS より:

    では、便乗してVBAネタも。

    Excelなんかもマクロも過程を非表示にすると爆速になりますよ。
    Application.ScreenUpdating = False
    Application.ScreenUpdating = True

    あと、処理時は再計算もオフにすると良い場合が。
    Application.Calculationを使います。

  2. Kumadigital より:

    ほほう。
    会社のExcel VBA実行待ちで給料を貰っている人に
    教えてあげなければ(笑

  3. 10年後の世界から より:

    置換をたくさん含むマクロが文字通り10倍速になりましたよ!
    これはありがたい

  4. Kumadigital より:

    お役に立てて良かったです!

タイトルとURLをコピーしました