エクセルVBAシート1だけを使っています。過去のデータをセルに書き込み保存しています。オフラインで過去データを読み込みVBAで計算・判断させていますが、過去データを何回も何回も継続して処理して行くと、ある時点で急に処理スピードが遅くなる事があります。そんな時にはエクセルを保存終了して、再び立ち上げて処理を進めると、先ほどの遅くなったのが嘘のように解消されています。①これはPCの性能によるものでしょうか?②エクセルの中で蓄積されたゴミ?処理過多による何か?をクリアーして、遅くならないようにするVBA命令はありますか?

1件の回答

回答を書く

1132200

2026-04-03 09:30

+ フォロー

コードが不明ですので憶測でしかありませんが。



>オフラインで過去データを読み込みVBAで計算・判断させていますが、過去データを何回も何回も継続して処理



この作業でエクセルが制御できるメモリ容量を圧迫しているのでは?

実行内容が『配列にデータを代入する』且つ『1回毎にデータを取り込み処理し、更にデータを上書きで取り込む』のであれば、



配列の初期化とは

https://popinsight.jp/blog/?p=50104



1回毎に処理が終了したら配列変数名をEraseステートメントで初期化してみるとか?

⇛動的であれば『Array()ステートメント(動的配列のみ可能)』こっちなのかもですが、こちらの経験はないもので。



あとはセルの自動計算を止めてないなら止めて処理後に再実行させる、セルへの書き込み描画についても同様に。

⇛行なっていないのであればですかね。



経験ないですがパワークエリとかじゃ無理なのでしょうか?

⇛処理内容が不明なので判断つきませんけど。

うったえる有益だ(0シェアするブックマークする

関連質問

Copyright © 2026 AQ188.com All Rights Reserved.

博識 著作権所有