Excel (VBA)

Excel VBAに関するフォーラムです。
  • 掲示板への投稿には会員登録(無料)が必要です。会員登録がまだの方はこちら
  • 掲示板ご利用上のお願い」に反するご記入はご遠慮ください。
  • Q&A掲示板の使い方はこちらをご覧ください
トピックに返信
質問

 
(Windows 10全般 : Excel 2013)
メモリリークについて
投稿日時: 20/10/28 19:50:57
投稿者: shunya5656

現在、あるショッピングサイトから画像、価格、説明を取得してシートに書き出すマクロを作成しています。
画像、価格、説明は取得できシートに書き出すことができるようになったのですが、大量にループするとリソースが不足して動作が途中で止まります。
 
私はvba初心者で、リソースのことでよく分かっていません。
ネットで調べて、オブジェクトを空にしたり、複数のプロシージャーに書いてみたのですが問題を解決することができません。
 
 
リソースを不足しない書き方について教えて下さい。
 

回答
投稿日時: 20/10/28 22:49:12
投稿者: WinArrow
投稿者のウェブサイトに移動

コードを掲示してみてはいかがでしょうか?
 
内容によっては、解決の方向のアドバイスがあるかも?

回答
投稿日時: 20/10/29 14:29:25
投稿者: Suzu

Excek の VBA の実行中にリソース不足 が発生。
確かにメモリリークの可能性が高いとは思われます。
 

引用:
vba初心者
引用:
オブジェクトを空にしたり、複数のプロシージャーに書いてみた

との事ですので、コードの書き方に起因するかは断言できませんが
 
 
コードとは別の部分でリソース不足が発生する事も考えられます。
 
Excelの起動前/Excelの当該ファイルを開いた後/VBA の実行中 にて
メモリの使用状況を確認してみましょう。
 
 
ソースが見つからないのですが、Excelは仮想メモリの不足が原因 というのを見た記憶があります。
 
・物理メモリ 使用推移
・仮想メモリの設定
・仮想メモリ 使用推移
を確認してみてはいかがでしょうか。
 
NEC LAVIE公式サイト
【Windows 10で、メモリの使用状況を確認する方法について教えてください。】
https://faq.nec-lavie.jp/qasearch/1007/app/servlet/relatedqa?QID=017678
 
 
コミット済み 右辺 9.1GB が 物理メモリ+仮想メモリ 総量
コミット済み 左辺 4.8GB が 物理メモリ+仮想メモリ 使用量
左側 メモリ の 左辺 4.0GB が 物理メモリ の使用量
 になるので、
 仮想メモリ使用量 4.8-4.0= 0.8GB となります。

回答
投稿日時: 20/10/29 17:49:34
投稿者: mattuwan44

複数の掲示板で質問するときは、
複数掲示板で質問していることを明示した上で、
リンクを貼ってもらえるとありがたいです。
 
解決したときも同様に、解決したことを、
書き込んでいただけると、回答側で無駄に時間を使うことがなくなり助かります。
またその方法も教えていただけると、他の方の参考になります。
 
>リソースが不足して動作が途中で止まります。
あと、エラーメッセージは省略せず全文をきちんと書いてください。
なんで、リソースが不足していると判断できたかが解らないし、
>私はvba初心者で、リソースのことでよく分かっていません。
ならば、判断できないのでは?
 
 
本題。
どこで聞いても言われることはだいたい同じで、
現状の文章がなければ添削のしようがないです。
いろいろ調べられたとは思いますが、
 
1)ネット上のデータを取得が原因なら、
瞬時にサイトを読み込めないときがあるので、
「待つ」ということをしないといけないと思いますがしてますか?
 
2)大量のループが原因なら、
途中で休憩して「待つ」ということをしてやるとよいです。
また、
途中で、一旦上書き保存して、閉じて開く
みたいなことも有効かもしれません。
 
で、他人に原因を突き止めてもらいたいなら、
コードを提示してデバッグしてもらうしかないかと思います。
 
ちなみに、参考になりそうな。。。。
http://officetanaka.net/excel/vba/tips/tips116.htm
https://teratail.com/questions/23082
 
 
 
 
 
 

トピックに返信