![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
エクセルVBAにて、ソフトを作製しています。
急に「無効なオブジェクトライブラリです。または定義されていないオブジェクトへの参照を含んでいます」というエラーが出てくるようになり、すべてのプロシージャが実行出来ない状況に陥ってしまします。
そうなってしまったら、全て閉じて最終保存したところまで戻らなければならず、非常にイラつきます。
中身ですが、ユーザーフォームは特に使っておらず、Sheet内のフォームのコマンドボタン、またコントロール/ツールボックスからリストボックスとテキストボックスを使っています。
ソースの中身について
・SQL接続を使っています。
・開く度にテキストボックスを複数削除し、所定位置に複数生成します。
リストボックスやテキストボックスのサイズ、位置等変更したら、このエラーに陥る傾向があります。
エラーに陥ったソースをエラーになる前のソースに追加しても、特に問題が起こりません。
エラーメッセージのヘルプを開こうとしても、表示されません。
これは一体なにが原因なのでしょうか?
条件がどうしてもつかめません。
参照設定についても特に参照できていないライブラリはありません。
宜しくお願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
状況だけでは原因がつかめないのですけど もう少し具体的な情報がほしいですね。
VBAのソースとかあれば何かわかるかも、参照設定にはどのライブラリを含めているのかとか エラー 時の CPU稼働率、メモリーの占有率とか・・・・
SQLはDAOで接続、その際にODBCの設定とか・・・
SQl Server 2005 とかをしようしているとか・・・・
この回答への補足
本日自力で解決しました。
今回のプログラムでは開く度に、特定の複数のテキストボックスをDeleteし、再度テキストボックスを作り直すという処理を行っていました。
しかし、エクセル内には恐らくオブジェクトのカウンタか何か分かりませんが、Deleteしても何かの値が記憶され蓄積されていたようです。改良するたびに上書き保存してたので、それと同時に目に見えないカウンタも徐々に蓄積。カウンタが上限に到達するとエラー発動。
しかしエラーが発動しても、その特定のテキストボックスを数個消せばエラーが消えることが分かりました。(カウンタがリセットされる。)
そして、workbook オープン時の処理を手動で7~10回程度実行すると、エラーに落ちることが分かりました。(テキストボックスの生成は8個+デフォルトでオブジェクトを10個程使用、なので、オブジェクトが100個ほどになると限界?)
エラーに落ちると何もプロシージャが動かなくなるので、テキストボックスを手動で消す。これを繰り返せば、一応エラーを回避出来るようです。
結論から言いますと、『オブジェクトの数』が原因っぽいです。エラーメッセージがあまりにも抽象的なので、あくまで推測ですが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
実行時エラー 438になった時の...
-
VBAがブレークモードになっ...
-
エクセルエラー13型が一致しま...
-
VBS実行時エラー オブジェクト...
-
実行時エラー48発生時のDLL特定...
-
エクセルVBA autofilterでエラー
-
AccessVBAでExcelを起動し、罫...
-
プロシージャ名の取得
-
エラー Nextに対するForがあり...
-
実行時エラー -'-2147417848
-
なぜこんな初歩的なVBAのIf文で...
-
VB6.0からEXCELのセル内文字列...
-
Application.ActiveInspectorで...
-
EXCEL/VBAで、自分のPCだけエラ...
-
エクセルで音を鳴らす
-
VBAでのエラー
-
VB6+SQL サーバー 2000 で 実行...
-
マクロでのActiveSheet.Pasteで...
-
EOFError: EOF when reading a ...
-
EXCEL インデックスが有効範囲...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
実行時エラー 438になった時の...
-
エクセルエラー13型が一致しま...
-
VBAがブレークモードになっ...
-
なぜこんな初歩的なVBAのIf文で...
-
マクロについて教えてください...
-
実行時エラー3001「引数が間違...
-
VBSで変数の宣言はできないので...
-
【Excel VBA】マクロをボタンに...
-
ExcelVBA Range クラスの Page...
-
VBS実行時エラー オブジェクト...
-
プロシージャ名の取得
-
実行時エラー -'-2147417848
-
EXCEL VBAマクロ中断でデバッグ...
-
VB6+SQL サーバー 2000 で 実行...
-
VBAでのエラー
-
ADODB.Streamを使用してUTF-8を...
-
なぜエラーになるのでしょうか...
-
Outlook.ApplicationをCreateOb...
-
VBAのエラー発生場所をメッセー...
-
AccessVBAでExcelを起動し、罫...
おすすめ情報