トラブルシューティング

目次

モジュールを削除しても削除されない

あるバージョンのAccessまで、この事象が頻出しました。

(原因)Accessのバグ

(対応)VBEを開き、該当モジュールを右クリックし、「…の開放」をクリック。「削除する前に…をエクスポートしますか?」というメッセージが表示されるので、「いいえ」をクリックする。

テキストボックスに条件付書式を設定すると、ロックプロパティをはいに設定したにもかかわらず、選択できる状態になる

(原因)限りなくバグに近い仕様です。

ブレークポイントを解除したはずなのに止まってしまう

ブレークポイントを解除したのに、ブレークポイントを覚えてしまうことがあります。

(原因)Accessのバグ

(対応)止まった行を選択して切り取ると、実行カーソルが次の行へ自動的に移動するので、その状態で貼り付けして元の状態に戻します。実行を継続して処理が完了したら上書保存します。

Database型の変数の定義でコンパイルエラーが発生する

Dim db As DatabaseのようにDatabase型の変数を定義すると、

コンパイルエラー「プロジェクトではなく、ユーザ定義型を指定してください。」が発生することがあります。

(原因)

プロジェクト名が「Database」になっているため、プロジェクト名を型として宣言しているとコンパイラーが勘違いしています。

(対応)

プロジェクト名を変更するか、Dim db As DAO.Databaseに変更してください。

定数が見つかりません

プロシジャーの先頭付近で定数を宣言し、これをプロシジャー中で参照しているにも関わらず、定数が見つからないというコンパイルエラー発生することがあります。

(原因)Accessのバグ

(対応)定数の宣言を一旦コメントアウトし、(定数を呼び出しているほうをコメントアウトするのではないことに注意)再度コメントを外してコンパイルし直すことで解消します。

Option Explicit宣言をしているにもかかわらず、未定義の変数を使ってもエラーにならない

(原因)Accessのバグ

(対応)改行等を入れて何度か再コンパイルすることで未定義の変数を検出するようになります。

DLLの呼び出しに失敗しましたエラーが発生する

(原因)Accessのバグ

(対応)

エラーが発生している、Sub もしくは Function を突き止め、その先頭付近でExit Sub / Exit Function を記述して、一度実行します。

エラーが出ないようになったら、 Exit Sub / Exit Function を除去します。

よかったらシェアしてね!

この記事を書いた人

コメント

コメントする

目次
閉じる