毎度お世話になっております。
帳票のレコードをクリックすると、単票フォームで詳細を開くフォームを作成しております。
昨日の時点ではきちんと動作していたのですが、今朝フォームを開いて単票フォームに移動するボタンをクリックしたところ、「イベントプロパティに指定した式 クリック時 でエラーが発生しました:オブジェクトまたはクラスがこのイベント セットをサポートしていません。」とエラーが出るようになりました。
このエラーの原因と解決法を教えて頂きたいです。
このエラーの不思議なところは、全てのAccessオブジェクトから単票フォームを開いた後に再度帳票フォームのボタンをクリックすると、このエラーが出なくなり、accdbファイルを閉じて再度操作するとエラーが表示されることです。
データベースファイルの破損かもしれません。
まずは、「最適化/修復」を実行してください。
それで、だめなら、新規データベースを作成して、そこに現在のデータベースのオブジェクトをすべてインポートして、そのデータベースで操作してみてください。
それでだめなら、バックアップファイルを使用するようにしてください。
バックアップファイルがないのなら、
エラーになるフォーム以外を新規データベースにインポートして、エラーになるフォームは一から作成しなおしてください。
回答ありがとうございます。
閉じる時の最適化は毎回しています。
当該のフォームのコピーを取って削除、コピーしたフォームの名前をもとに戻してみたところ、エラーが出なくなりました。
破損が原因ならコピーと名前変更で直るのはおかしな話だなぁと思うのですが、、、
コピーすることで、破損部分が修復されたのかな、と思います。
内部的な動作は1ユーザーからは分かりませんが、
イメージとしては、フォームの設定データ(プロパティとかコントロールのレイアウト)を元に作成しなおしているのかなと思ってます。