• 締切済み

Access2000:コマンドボタンの不具合

ウィザードで作成したコマンドボタンが、環境によっては下記のエラーメッセージが表示され機能しません。 ************ イベントプロパティに指定した式クリック時でエラーが発生しました:xxx(ファイル名)がOLEサーバーまたはActiveXコントロールと通信しているときにエラーが発生しました。 *マクロ名、ユーザー適宜関数名、[イベントプロシージャ]以外の式が指定されています。 *関数、イベント、マクロの評価でエラーが発生しました。 ************ ボタンは「フォームを開く」で特定のレコードのみ表示するように設定したものです。(ウィザードでできること以外は設定してありません) OS/Accessのバージョンが同じPCで開いても、一つは問題なく機能するが、もう一つは上記のエラーが出たりします。 今まで特に問題がなかった自分のPCもオフィスを再インストールしたところ、上記の状態になってしまいました。 ボタンを作り直しても同じ状況です。 コマンドボタン、ファイル、アクセス、PCのどの設定にどのような問題があるのか分かりましたら教えていただけないでしょうか。よろしくお願いいたします。

みんなの回答

  • laputart
  • ベストアンサー率34% (288/843)
回答No.2

今試しましたが特に問題はなさそうです。 stLinkCriteria = "[No]=" & Me![No] の行を ' stLinkCriteria = "[No]=" & Me![No] のように修正するとこの行は無視されますので 指定フォームに関するレコードセットが全て開きます。 'をはずすとフィルターがかけれます。 --------------------- それとプログラムにエラー回避があるのですから エラーで止らずに動く(エラーメッセージの表示) と思うのですが.... ●実際プログラムが停止してしまうのですね。 その時デバッグボタンを押すとどの行が表示されますか? ●後デザインモードでコードを開いた状態で、メニューの中央あたりに「デバック」「.... のコンパイル」 を実行してみること ●アクセスの修復、最適化を試す事 ●問題のPCで新しく空のデータベースを作ります インポートでテーブル、クエリー、フォーム、その他全てを選択します。 その新しいデータベースで実行するとどうなりますか?

cholodenko
質問者

お礼

●後デザインモードでコードを開いた状態で、メニューの中央あたりに「デバック」「.... のコンパイル」 を実行してみること こちらも試してみましたが、改善されませんでした。 何が原因なのかさっぱりわかりません....

cholodenko
質問者

補足

2度目の回答ありがとうございます。 ●実際プログラムが停止してしまうのですね。 その時デバッグボタンを押すとどの行が表示されますか? →[デバッグ]ボタンは表示されません([OK]のみ) ●後デザインモードでコードを開いた状態で、メニューの中央あたりに「デバック」「.... のコンパイル」 を実行してみること →これはまだ試していないのですが。(あとでやってみます) ●アクセスの修復、最適化を試す事 →終了のたびに最適化するよう設定しているので、効果はないようです。 ●問題のPCで新しく空のデータベースを作ります インポートでテーブル、クエリー、フォーム、その他全てを選択します。 その新しいデータベースで実行するとどうなりますか? →インポート直後は、機能しました!  ですが、一度閉じたあとに開くと同じ状態になります(T_T) このファイルのバックアップがいくつかあるのですが、そのすべてが同じ状況になってしまっているので、最新のファイルが問題というよりは、アクセス自体になにか問題があるのでは?と思っているのですが....

  • laputart
  • ベストアンサー率34% (288/843)
回答No.1

フォームのデザインで小番戸ボタンをクリックして プロパティシートから「イベント」タブ「クリック時」に「イベントプロシ-ジャ」があると思います。 これを選択して右側のボタン ... をクリックすると コードが表示されると思います。 このコードをコピーして貼りつけてもらえませんか? (例 以下のように) 一度調べてみます コード貼付け例 ---------------------- Private Sub コマンド0_Click() On Error GoTo Err_コマンド0_Click Dim stDocName As String Dim stLinkCriteria As String stDocName = "PackingList" DoCmd.OpenForm stDocName, , , stLinkCriteria Exit_コマンド0_Click: Exit Sub Err_コマンド0_Click: MsgBox Err.Description Resume Exit_コマンド0_Click End Sub ----------------------

cholodenko
質問者

お礼

2回も回答をくださり、ありがとうございました。 結局、ボタンが機能していないフォーム自体を作りなおしました。まったく同じやり方で作ったのに、新しいフォームのボタンについては問題なく機能しました。 ファイルは使えるようになったけれど、結局原因はわかりませんでした。。。。

cholodenko
質問者

補足

ご回答ありがとうございます。 まだ上記コードを貼り付けてはいないのですが、現在のコードは下記のようになります。 ************************** Private Sub コマンド18_Click() On Error GoTo Err_コマンド18_Click Dim stDocName As String Dim stLinkCriteria As String stDocName = "開きたいフォーム名" stLinkCriteria = "[No]=" & Me![No] DoCmd.OpenForm stDocName, , , stLinkCriteria Exit_コマンド18_Click: Exit Sub Err_コマンド18_Click: MsgBox Err.Description Resume Exit_コマンド18_Click End Sub ********************************* 教えていただいたコードと異なるのは stLinkCriteria = "[No]=" & Me![No] の部分だけですが、これは特に問題なさそうなのですが... このコードを削除すると、すべてのレコードが表示されるだけですよね。

関連するQ&A