2016-03-23 21 views
0

カスタムクラスモジュールを含むExcel VBAプロジェクトがあります。このクラスへのすべての参照を削除するようにコードを変更し、エクスポートした後にクラスモジュールを削除しました。その後、プログラムはクラスモジュールを削除した後、vbaユーザータイプが定義されていません

I再インポートカスタムクラスと正常にコンパイルされたプログラムを定義していないコンパイルエラー

ユーザータイプを持っていました。カスタムクラスモジュールからすべてのコードとコメントを削除して空のモジュールとして残し、プログラムはまだOKにコンパイルされました。カスタムクラスを削除した後も、「ユーザータイプが定義されていません」というエラーが表示されます。 上記の手順のいずれかで問題のコード行が強調表示されることはありません。 アイデア

+2

あなたのコードのどこかで参照されているようです。 –

+1

あなたはそのクラスとして変数を宣言しました。プロジェクト内のクラス名を検索します。 – Rory

+0

すべての変数を宣言する必要がありますか?あなたの普通のモジュールの始めに 'Option Explicit'ですか?そうであれば、その問題を見つけるのに役立つかもしれませんが、それがなくても強調すべきです。 –

答えて

0

問題はExcel 2016で発生しました。 Excel 2007でファイルを開くと問題が解決しましたが、これはOffice 365をインストールする前に残していました。Excel 2007では空のクラスモジュールを削除して、コンパイルして保存します。 Excel 2016で再び開くと、プロジェクトは再びうまくコンパイルされました。 Excel 2007と2016の両方で別のバックアップコピーでプロセスを繰り返しましたが、問題は一貫してExcel 2016で発生しましたが、Excel 2007では発生しませんでした。 他のコメントありがとうございます。

関連する問題