とっておきの「夜食」教えて下さい

Excel2007でVBAでマクロを組み込んだところ、
クリックイベントが走る度に、仮想メモリが増加し続けるようになってしまいました。

シート上にActiveXコントロールを配置し、
ActiveXコントロールのクリックイベントプロシージャに
VBAでマクロを組み込んでいます。

内部で使っているオブジェクトは、
きちんとNothingで解放しています。

マクロを組み込むと必ず発生する現象ではなく、
シート上に配置しているコントロールの数、
ブックのシート数、
モジュールの数、ステップ数、
イベントプロシージャの処理ステップ数、
などのオブジェクトの量が多くなると、
仮想メモリが増加し続けるという現象が起きるようです。

オブジェクトの数、サイズによっては、
1クリックで50Mくらいずつ増加することもあり、
すぐにメモリリークしてしまいます。

XP+Excel2007の環境でのみ発生します。
Vistaでは発生しません。

SPはそれぞれ、XP SP2、Excel 2007 SP1です。

なぜ、このような現象がおきるのでしょうか?

A 回答 (1件)

問題の切り分けをしましょう。


クリックイベントプロシージャに何も記述していなくてもメモリは増加しつづけるのですか?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報