- ベストアンサー
Excel マクロ VBA プロシージャが大きすぎます のエラー対処方法
プロシージャにDATAを書き込み実行していましたが,DATAを追加していくうち,[プロシージャが大きすぎます]のエラーメッセージが出てしまいました。 対策を教えて下さい。 出来れば,プロシージャの容量を大きく出来ないものでしょうか。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Subを分ければ良いと思います。 元が Sub Macro1() (1) (2) End Sub なら Private Sub Macro1() (1) End Sub Private Sub Macro2() (2) End Sub のように分けてから、それを連続実行するプロシージャを書きます。 分割したやつを Private Sub にしておけば、マクロ名が表示されません。 Sub Jikkou() Macro1 Macro2 End Sub
その他の回答 (1)
- Wendy02
- ベストアンサー率57% (3570/6232)
回答No.2
こんばんは。 すでに、papayukaさんが、述べられているとおりですが、そういうマクロを見せられて思ったことですが、 それは、トータル行数が、多いわりには、基本的なループ、プロパティをきちんと使わずに、Selectを多用してしのいでいたりする、いわゆる記録マクロレベルのものだったからです。VBAは、スクリプトなので、プロジェクトのマクロ全てを、ブックが抱えることになってしまいます。VBAは、常に、アプリケーションが、コードの監視状態になっていますから、それでは、ブック全体に影響を受けてしまいます。 せいぜい、1つのプロシージャは、100行以内にして、Call で結ぶことでしょうね。 申し訳ないのですが、基本的な部分からの見直しからお勧めします。 何かあったときに、手がつかなくなると思います。
お礼
有難うございました。 チャレンジしてみます。