ファイルサイズが大きいせいか[応答なし]エラーになってしまうが?

Question 71.4   Previous Next
Windows XP & Excel 2003を使っています。 個人用ブックに10数のマクロを登録していますが、扱うファイルが20000ライン以上あるため、
 (1) 時々「応答なし」エラーとなり、リセット状態にしますが、
 (2) その度に次のエクセル起動時にパーソナルファイルが直接起動せず、8桁の英数字のファイル名が起
   動し「ファイルがありません」のメッセージが現れます。 現在では10回出現し、ようやく「パーソ
   ナル」に到達します。
Answer   Copyright (C) 2005.2.24 永井善王
このご質問は、書籍 「Excel VBA マクロ 500連発 第2弾」の質問フォームで送られてきました。読者さまのようですね。
掲載マクロとは無関係のご質問ですが、お困りのようですので、一応、私のわかる範囲内でお答えします。なお、このホームページには、
いろいろな質問窓口 を設けていますので、今後はご協力ください。

(1) 「応答なし」エラーの原因を除去する
ご使用中のパソコンのメモリ容量が不明ですが、扱うファイルのデータ量に相応しい大きさでしょうか?
1ライン(行)あたりの文字数等の 20,000倍以上相当の情報を処理する訳ですから、場合により、メモリ増設の検討が必要かも知れません。 ちなみに、ファイルサイズはどれだけですか?
増設RAMは
512MBのノーブランド品なら 6千円強、メーカー品でも 1万2千円程度のようです。
まずは根本原因を除去しなければなりませんが、メモリ増設により万事解決となる可能性が考えられます。
ドキュメントの回復 なお、メモリが十分なのにエラーになる場合は、Windowsが不安定になっているのかも知れませんから、再インストールを検討します。
(2) 「次のエクセル起動時」の問題
Excel 2003では、作業中のブックが正常に保存されずに(異常)終了すると、次回起動時に、右図のような [ドキュメントの回復] ツールバーが表示されるはずです。
そのため、この段階で対応策を考えてみたところで、所詮、その後で無理を要求することになるので、上手くいくとは考えられません。 よって、根本原因の除去方法を検討されることをお勧めします。

メモリ容量と Windows自体、そして、ファイルを開くマクロに問題がないのに「応答なし」エラーが出る場合は、ファイルレイアウトを再検討すると良いかもしれません。

たとえば、拙著「
ExcelVBAマクロ組み方講座 プロの定番・裏技・合わせ技[編]」では、全国版郵便番号簿を収録したファイルがあり、約12万件を Excelシートに収容しています。 レイアウトは 9列×約6万5千行で、ファイルサイズは 10MBです。 メモリが 256MBでも検索マクロを実行できます。

なお、個人用ブックにある10数のマクロが目茶苦茶大きくて、それが災いしている場合は、マクロを他のブックに移すことになります。 以上ですが、はずしていたら、すみません。

 

Excel VBA Macro