Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


5290 / 13646 ツリー ←次へ | 前へ→

【51691】一つのブックに記述出来るプログラムの容量は? まつ 07/10/1(月) 11:31 質問[未読]
【51700】Re:一つのブックに記述出来るプログラムの... neptune 07/10/1(月) 13:47 発言[未読]
【51706】Re:一つのブックに記述出来るプログラムの... まつ 07/10/1(月) 14:36 お礼[未読]
【51713】Re:一つのブックに記述出来るプログラムの... neptune 07/10/1(月) 15:56 発言[未読]

【51691】一つのブックに記述出来るプログラムの容...
質問  まつ E-MAIL  - 07/10/1(月) 11:31 -

引用なし
パスワード
   みなさん、こんにちは。まつといいます。

現在、私の所属部内でエクセルVBAによる事務処理の簡単なシステムを
作成して8人位で使用しています。

作りとしては、ブックを開くと1つのシートにいくつかのボタンが配置されていて
それを押すと、それぞれ割り当てられた検索用、入力用のフォームが開くといった
感じのつくりです。

全体を設計して作成したものではないので、日々必要になった機能を追加してるのですが、最近ブックの容量が1MBを超えた時にふと、「これって
どれくらい詰め込めるものなんだろうか・・」と考えてしまいました。

共通的に使用してる関数などのこともありますので、なるべくなら
同じシートに機能追加して拡張していきたいのですが
そのせいで、大きくなりすぎて壊れたとか、使えなくなったなんて事になれば
小さなシステムですが、業務の妨げになってしまいますから
あらかじめ分散して作ったほうがいいのか、迷っています。

容量の件も含めて、「こういう運用にしたほうがいいんじゃない?」みたいな
助言を頂けるのであれば大変助かります。

初めての投稿で無作法な記述があるかもしれないですが
その点もご指摘頂ければ有難いです。何卒宜しくお願いします。

【51700】Re:一つのブックに記述出来るプログラム...
発言  neptune  - 07/10/1(月) 13:47 -

引用なし
パスワード
   こんにちは

1つのBookサイズの制限は知りませんが、
・1つのモジュールには65535行(多分)しか書き込めない
・プロシージャ、モジュールのサイズは64KBまで
等が、多分該当すると思います。

後、1UserFormのコントロール数は1〜200を超えると不安定になりやすいとか。

いずれにしても、データと、マクロを書いたBookは分けておかなければ
万一、マクロのBookが壊れた時、被害甚大になります。
↑これ基本です。

何の根拠も無いですが、精々2〜3MBまでにして、アドインにしては如何?
マクロだけで2MBといえばたいした量になります。

【51706】Re:一つのブックに記述出来るプログラム...
お礼  まつ E-MAIL  - 07/10/1(月) 14:36 -

引用なし
パスワード
   neptune さん、はじめまして。ご回答ありがとうございます。

>・プロシージャ、モジュールのサイズは64KBまで
>等が、多分該当すると思います。

 プロシージャ、モジュールというと SUB 〜 END SUB までということですよね。
 それであれば、問題ないと思いましたが

>後、1UserFormのコントロール数は1〜200を超えると不安定になりやすいとか。

 これは該当するフォーム(207個)がありました。
 データ入力用のフォームなんですが、データの性質上、フォームを
 分割することが出来ないので、頭が痛いです。
 確かにこのフォームを呼び出した時、訳の判らないエラーメッセージが
 たまにでるので「なんだろ?」って思ってました。

>何の根拠も無いですが、精々2〜3MBまでにして、アドインにしては如何?

 アドインって知らなかったです。さっきちょっと調べてみたのですが
 この機能を使って処理を分割してみようと思います。
 ご指摘ありがとうございました。

 ただ、新たに出てきたコントロール数の問題が・・・。
 これは作りを根本から見直さないといけないかもしれません。

 とにかく、本当にありがとうございました。

【51713】Re:一つのブックに記述出来るプログラム...
発言  neptune  - 07/10/1(月) 15:56 -

引用なし
パスワード
   ▼まつ さん:
こんにちは

もう見ないかな??

> プロシージャ、モジュールというと SUB 〜 END SUB までということですよね。
ですが、SUB 〜 END SUB がプロシージャ

モジュールとは、
標準モジュール、クラスモジュール、userformモジュールの事を指します。
多分シートモジュールも同様か、少し少ないかも?
(シートモジュールに関しては知りません。)

頑張って下さいませ。^ ^

5290 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free