エクセル2003で列全体を指定して文字の中央揃えをしていたら
突然
「リソース不足のため、このタスクを完了できません。
選択するデータを少なくするか、ほかのアプリケーションを
終了して再度試してくださ」
とメッセージがでました。
確かに大きなファイル(50MB)でマクロも数式もたくさん使用していますが
こんなのは初めての経験なので驚いています。
このとき
ほかのアプリケーションは起動させていませんでした
マクロの変数宣言でリソースを使い過ぎているのでしょうか
選択するデータを少なくすればこのまま使い続けられるか不安です
対処法を教えてください
No.2ベストアンサー
- 回答日時:
Barracudaです。
> マクロの変数宣言でリソースを使い過ぎているのでしょうか
この部分に注目しすぎました。
Excelマクロは標準モジュールに記述するから、ここに変数を大量に定義すればリソース不足になるかもしれない、と思ったのです。
しかし、マクロ実行中ではなく列全体を中央揃えしているときにリソース不足が発生したのなら、マクロは関係ありません。
大量に変数を定義していても、マクロが終了すれば解放されるからです。
このあたりがアプリを作成する際のAccess的考え方をしていました。
ちなみに、グローバル変数を説明すると長くなるので、「すべてのワークシートから参照できる変数」と思ってください。
キーボードマクロが記録される「標準モジュール」内に記述するとグローバル変数になります。
これに対し、シートやフォームで定義する変数が「ローカル変数」で、定義したモジュール内でしか使えません。
当然グローバル変数の方がリソースを多く使うので、なるべくローカル変数にすると良いかもしれないと思いました。
ちなみに、標準モジュールに記述する必要があるのは、複数のモジュールで共通に使用するサブルーチンや変数、ロード時に実行させたいコードなど、限られています。
ご質問のリソース不足ですが、画像がない状態で50MBもあり、計算式が大量に記述されていれば、再計算時に相当リソースを消費しそうです。
計算を手動にしてリソース不足が発生しなければ、単にファイルが大きすぎるだけ、という可能性が高くなります。
それにしても50MBとは、あまりに大きすぎるような気がします。
300-400KBの画像を1400枚貼り付けたExcelファイルを作ったことがありますが、それでも49MB程度でした。
ご参考までに。
仕事上1年間のデータを蓄積する為に、大きな範囲(5000行)
にデータベース関数を貼り付け
ご丁寧にも異常な箇所が判明しやすいようにと条件付書式を
設定していますので、
こんな馬鹿でかいファイルになってしまいました
>計算を手動にしてリソース不足が発生しなければ、単にファイルが>大きすぎるだけ、という可能性が高くなります。
ありがとうございます。
この一文だけでホットしました。
単にファイルが大きすぎるだけでフリーズの可能性は低そうなので
安心しました。
今、ファイルのダイエットに奮闘しています。
それと、計算を手動にするのも忘れないようにっと。
No.1
- 回答日時:
リソース不足とは、また懐かしいエラーが発生しましたね。
Win9xはリソースが64KBしかないために頻発しましたが、NT系は1MB or 3MBあるので事実上不足することはないと聞いたことがあります。
しかし、Excelで50MBというサイズでグローバル変数を大量に定義していたら、リソース不足になるかもしれませんよ。
一時的にリソースを使いそうな部分をコメントアウトしてみて、どうなるか確かめるのがいいのではないでしょうか。
また、グローバル変数の使用は最小限にするといいかもしれません。
当方Access使いなので、Excelではあまり参考にならないかもしれませんが。
早速回答ありがとうございます
>一時的にリソースを使いそうな部分をコメントアウトしてみて、ど>うなるか確かめるのがいいのではないでしょうか。
>また、グローバル変数の使用は最小限にするといいかも
>しれません。
グローバル変数を最小限にするとは具体的にどのようにするのでしょう
よろしかったら教えてください
Access使い・・・・うらやましいです(^_^)
当方Accessに挑戦したのですが挫折組です。(T_T)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VisualStudioのプロジェクトリ...
-
URLってなんですか? あと、読...
-
URLを要求されました
-
サーバにあるEXEを複数の端末で...
-
C言語初心者の質問失礼します。
-
バッファとは何ですか
-
どんなプログラムを書いても指...
-
フルパスから最後のディレクト...
-
ファイル出力の場所を指定
-
FTPでputすると空ファイルが出...
-
EXCEL VBAでテキストファイルの...
-
csvファイルを開かずに文字を検...
-
Access クエリ実行が急に非常に...
-
テキストファイルの最終行を削...
-
c/c++ ビルドしたにもかかわら...
-
ファイル名の先頭にアンダース...
-
エラー:ストリームの終わりを...
-
VBAで他のプログラムが起動して...
-
エラーの原因は?「この関数の...
-
c言語の質問です。 ランダムに4...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VisualStudioのプロジェクトリ...
-
リソースの編集ができません。...
-
Excel 2007でアイコンセットを...
-
パラレルポートのリソース
-
エクセルのファイルだけが閉じ...
-
「元に戻す」回数設定について
-
リソースは何者?
-
リソースメーターのGDIリソ...
-
ウイルスバスターで……
-
URLを要求されました
-
印刷時のみ「複写禁止」などを...
-
ブラウザで大量のコンボボック...
-
インターネットエクスプローラ...
-
サーバにあるEXEを複数の端末で...
-
C言語初心者の質問失礼します。
-
どんなプログラムを書いても指...
-
バッファとは何ですか
-
フルパスから最後のディレクト...
-
Access クエリ実行が急に非常に...
-
FTPでputすると空ファイルが出...
おすすめ情報