コンパイル
Accessを使いこなそうと思うとSQLの知識やVBAの知識が必要となる。
だけど、それほど難しいことをしなければ、クエリとマクロの組み合わせでかなり使える。
ボタンをクリックすることでフォームを開くメニュー画面を作った。
適当にボタンを追加していったらタブオーダーがめちゃくちゃになったため、オーダーを入れ替え、同時にボタン名を規則にそって付け直した。
ボタン名を変更すると、ウィザードで作成したプロシージャの中を変更してやらなければならない。(使用しているのはAccess97。最新のAccessは勝手に変更されるのだろうか?)
ボタン名部分の変更を完了して保存。ボタンの動作確認をするとエラーメッセージが表示された。
イベントプロパティに指定した式 クリック時 でエラーが発生しました:名前が適切ではありません:○○_クリック時
・マクロ名、ユーザー定義、関数名「イベントプロシージャ」以外の式が指定されています。
・関数、イベントマクロの評価でエラーが発生しました。
「名前が適切ではありません」というメッセージで変な名前をつけてしまったのだろうかと名前を変更してみたが一向に改善しない。
そもそも別に変な名前をつけてもいない。
しばらく考えた後、
と思い当たった。
モジュールはコンパイルをしてやらなければならない。
過去の財務システムはAccessで作られていて、よく壊れていた(笑)
それで、財務システムを作っている会社の担当者に電話をして指示を受けながらこちらでデータベースの修復作業を行っていた。
その時に必ずモジュールのコンパイルを行っていたのだ。
数年前の記憶が役に立った。
あの時、財務システムがよく壊れていなければ今回の件は原因を解決できなかったかもしれなかったと思った。