- ベストアンサー
エクセルVBAのサイズについて
エクセルファイル上にてVBAを記述したところ、 VBAのサイズが64Kを超えるようで、該当のVBAを保存する事ができません。 ただ、一時的に細かく作成したのですが、当初考えていたのは、1回コマンドボタンを押すと処理が完了するように想定していたのですが、現状のままでは、複数のコマンドボタンをそれぞれ押さないとできないと思われます。ちょっとその方法ですと面倒なので、ご質問です。 (当初は、マクロ1を作成したのですが、大きさの問題が生じたため、現状は便宜的にマクロ2・マクロ3という風に当初のマクロ1をわけて保存してあります) 1回の処理で同時に複数のマクロを実行する方法はあるのでしょうか? もしそのような方法があれば教えてください。 わかりづらい質問かもしれませんが宜しくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは。 ExcelのVBAには、 >VBAのサイズが64Kを超えるようで、 このような制限はありませんね。 ただ、コードが数百行とか千行を超えるようになると、どこかで問題を起こしていることが多いです。VBAの長い行のものは、だいたいは、トラブル発生する確率が高いです。 VBAは、スクリプトであって、コンパイルというのは名ばかりです。Application 側で、常に、そのコードの監視状態に置かれているので、分散化して、ひとつのプロシージャを早めに完結状態にしていないと、ブック全体の負担になりますね。 >複数のコマンドボタンをそれぞれ押さないとできないと思われます。 そんなことはないです。サブルーチンにすればよいだけのことですから。 ただ、保存できないということ自体は、また別問題で、ブックの全体の保存状態が、何らかのトラブルが起きていることが多いです。 それから、基本的なことですが、プロシージャは、特別なことがない限りは、「標準モジュール」に登録していきます。
その他の回答 (1)
- 6dou_rinne
- ベストアンサー率25% (1361/5264)
どのようなマクロを作成されたのでしょうか。 かなりコード(数百行)の多いマクロを作成してことがありますが保存できないというようなことはありませんでした。 また、マクロ2,3というのは別のファイルになっているんでしょうか。 それなら、最初に実行したマクロ(2?)からマクロ3を呼び出して実行できるのではないでしょうか。