
No.3ベストアンサー
- 回答日時:
すでに不足してきているプログラムなので、
これ以上を求めるには物理メモリ容量(の装着)を変えるしかないです。
普段はそんなことまではしないので
無駄な使用を少なくして限られたメモリ内での実行を目指します。
例えば、
DIM SH(256,65536,256)
65536行×256列×256シート分、
こんなのあっても1度に使用する部分はそんなにないので無駄です。
1行単位の確保があればいい、なら
DIM SH(256)
256列分
です。
無駄に準備している変数はないか、確認。
>どのようにしたら、メモリの容量を上げることができますか?
>VBAではメモリを上げることが出来ない仕様なのでしょうか?
利用メモリを制御できるかは、わかりません。
もっとコアな部分を触るのかもしれません。
下手するとほかのアプリが動かなくなる危険があるので、
これは策として考えない方がいいです。
普通そんなプログラムは目指しません。
少ないメモリで動くよう目指す、効率化を図るのが良いです。
No.2
- 回答日時:
はじめまして、通るすがると申します。
私も、同じ状況になったことがありそのとき調べた限りではPCのメモリ不足でした。
VBA自体の言語は、オブジェクト毎にメモリの解放、確保ができるほとちゃんとした言語
ではないため、巨大なソースを作成しようとするとメモリ不足になりがちです。
所詮VBAは、EXCELのおまけみたいなものであり、一システム的なものを作るには、向
かないと思います。(かなり小規模なものはできるとは思いますが。。)
ただ、コーディングの方法についても無駄にメモリを消費する場合もあります。
たとえば、内部サブルーチンコールにおいて、CALL命令を使用せず直接サブルーチン名
を記述すると多くのメモリを消費しているようです。
いずれにしても、VBAで作るのは、ツール的位置ずけで使用するレベルと限定して開発
することをお勧めします。
No.1
- 回答日時:
どんなコードを実行しているのか。
複雑で長くて質問には掲示できないのか。http://officetanaka.net/excel/vba/error/executio …
の「メモリが不足しています」の解説を読んで、思い当たる節は無いか。
質問ぶりから、ス質問者は、そんな大きな(多数行)のコードを作れるレベルに思えないが。
多数のデータを配列に溜め込んだりしてますか。
こういうのは素人的な思い付きのロジックでコード作成に取りか語りすると怖い。
対象のブック数やシート数はどれくらい?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
vbaのエラー対応(実行時エラー7:メモリが不足しています)
Visual Basic(VBA)
-
EXCELのVBAで作業ファイルを閉じてもメモリの解放をしなくて困っています
Excel(エクセル)
-
VBAの配列サイズとメモリに関して
Visual Basic(VBA)
-
-
4
エクセルのメモリ使用状況/Application.Memoryの代替手段
Visual Basic(VBA)
-
5
VBAで「メモリが不足しています」
Visual Basic(VBA)
-
6
DoEventsが必要な理由について
Visual Basic(VBA)
-
7
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
8
【Excel VBA】マクロでExcel自体を終了させたい
Excel(エクセル)
-
9
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
10
worksheetFunctionクラスのVlookupプロパティを取得できません エラーへの対応
Visual Basic(VBA)
-
11
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
12
ExcelのVBAでフォームが表示されない
Excel(エクセル)
-
13
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
14
VBAのXML処理でメモリが足りない?
Visual Basic(VBA)
-
15
配列をEraseしてもメモリが開放されていない?
Visual Basic(VBA)
-
16
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
17
【Excel】【VBA】実行時エラー メモリ不足
Excel(エクセル)
-
18
DoEventsがやはり分からない
Visual Basic(VBA)
-
19
EXCEL-VBAにてADOのレコードセットを使用している際のメモリの開放について
Visual Basic(VBA)
-
20
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAの配列サイズとメモリに関して
-
CImage::ReleaseDC()のエラーで...
-
使わなくなった変数に違う値を...
-
メモリのセグメント違反の解決...
-
C言語における再帰呼び出しの...
-
H8 マイコン セクションの設...
-
ファミコンって8ビットしかない...
-
組み込み系でのmallocについて
-
64bit C#アプリ メモリをたくさ...
-
Bitmapを重ね合わせる方法
-
PIC 文字 を 数値に 変換
-
「ヒープサイズの設定」て何?
-
C言語:関数のメモリ上でのサイ...
-
メモリの解放の仕方
-
ReadEventLogについて
-
エラー処理,メモリ開放,exit
-
非再入可能なプログラム
-
LoadLibraryしたらFreeLibrary
-
C#のOutOfMemoryException発生...
-
大容量のメモリ確保をスワップ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語で、メモリを解放しないで...
-
Access Violationについて
-
VBAの配列サイズとメモリに関して
-
メモリのセグメント違反の解決...
-
メモリが不足しています(VBA)
-
メモリ不足
-
大容量のメモリ確保をスワップ...
-
ファイルマッピング関数で失敗
-
PC-98で拡張メモリを使え...
-
エラーについて
-
「ヒープサイズの設定」て何?
-
エクセルのメモリ使用状況/Appl...
-
C言語における再帰呼び出しの...
-
オフスクリーンサーフェスへの...
-
1ページに収まるオブジェクト...
-
新規購入PCのスペックについて...
-
4GB搭載したマシンのメモリ情...
-
組み込み系でのmallocについて
-
ルネサスマイコン(R8C) ビルド...
-
Visual Basic Net2003
おすすめ情報