見出し画像

【EXCEL】マクロが遅すぎる時に読むと良いサイト

こんにちは!フリーランスエンジニアのtomisanです
EXCELでマクロ組んだものはいいものの、実際に大量のデータを処理しようとすると、めちゃくちゃ時間がかかるじゃないか。。!ということありますよね
そんな時にマクロの速度改善に役立つサイトを今回はご紹介します


気軽に試せる方法を紹介しているサイト

まずはなるべくすぐに試せる
改善方法を紹介しているサイトです
マクロの冒頭である記述を追加するだけで、
処理速度が少し上がるかもしれません
具体的にはマクロ実行中のEXCELへの反映等の必要のない処理を止めることでメモリを節約し処理速度を改善する方法です
ぜひ試してみてください

少し深い内容も紹介しているサイト

1つ目のサイトではあまり速度が改善しなかった
満足のいく処理速度まで改善しなかった人には
以下のサイトをお勧めします
処理が遅い時に試すべきことが10個以上紹介されています
それぞれの改善法についてこういう処理の書き方だったら、
どれくらい改善されるかが詳しく書かれています
筆者が試した結果どれくらい改善されたかも記載があります
マクロを高速化させたい時に、
一通り読んで自分のコードと照らし合わせてどの改善策が良いか
考えながら読むと良いです

まとめ

以上マクロの速度改善について参考になりそうなサイトを紹介させていただきました!
最後にどこの処理に時間がかかっているかを計測するコードを書いてみたので、参考にしてください
性能改善する際どこの処理がボトルネックになっているかを把握するために便利です

Sub 時間計測()
    Dim startTime As Double
    Dim endTime As Double
    Dim processTime As Double
    Dim i As Long
          
    '開始時間取得
    startTime = Timer
         
    '計測したい処理
    For i = 1 To 1000000
        Cells(i, 1) = "AAA"
    Next i
    
    '終了時間取得
    endTime = Timer
        
    '処理時間表示
    processTime = endTime - startTime
    MsgBox "処理時間:" & processTime
End Sub


この記事が気に入ったらサポートをしてみませんか?