プロが教える店舗&オフィスのセキュリティ対策術

友人がアクセスで作ったマクロです。3行目で止まってしまいます。どこが悪いのでしょうか。(私は全くの素人でわかりません)

Private Sub 記載事項入力ボタン_Click()

DoCmd.Close acForm, "初期画面", acSaveYes

DoCmd.OpenForm "入力フォーム", acNormal ←ここ

End Sub

A 回答 (5件)

Open_Form()プロシージャのどこでエラーとなっているのでしょうか?



それと、Accessのバージョンは??
自分もAccessのバージョンの違いで結構苦戦した経験がありますんで・・・。どちらかというと、OSの違いよりAccessのバージョンの違いのほうが気になります。
    • good
    • 0
この回答へのお礼

お礼が遅くなってすみません。何度もお答えありがとうございました。データをハードディスクにコピーし、マクロが止まってしまうフォームを名前を変えてコピーし直したら動くようになりました。ありがとうございました。

お礼日時:2005/08/22 20:56

DoCmd.ApplyFilter , "番号 =" & Rs("番号")


がおかしいのでは?

「ApplyFilter」はフィルタ名を指定するものです。

Me.Filter = "番号 ="& Rs("番号")
Me.FilterOn = True

でダメでしょうか。(未検証)
    • good
    • 0
この回答へのお礼

お答えありがとうございました。何とかなりました。

お礼日時:2005/08/22 20:58

>実行時エラー'2501' OpenFormアクションの実行はキャンセルされまいた


ということは”入力フォーム”側の問題です。
”入力フォーム”の開くときにイベントに何か不適切な記述があるのだと思います。
それを貼ってもらえれば参考になるかと思います。

あと、OSの違いで制御がかわるというのはあまりないと思います。

この回答への補足

Form_入力フォームの一部です。

Option Compare Database

Private Sub Form_Close()
Me.Filter = ""
End Sub

Private Sub Form_Open(Cancel As Integer)

Dim Rs As Recordset
Set Rs = Me.Recordset.Clone

Rs.MoveFirst

Dim Fontsize_Table As Recordset

Set Fontsize_Table = CurrentDb.OpenRecordset("フォントサイズテーブル", dbOpenDynaset)
Fontsize_Table.MoveFirst
Fontsize_Table.FindFirst "番号=" & Rs("番号")

'rs.FindFirst "番号 =" & Me!選択キー.Value
'Me.Bookmark = rs.Bookmark

DoCmd.ApplyFilter , "番号 =" & Rs("番号")

以下……続く
どこかおかしいところがあれば教えてください。

補足日時:2005/08/20 09:43
    • good
    • 1
この回答へのお礼

お答えありがとうございました。

お礼日時:2005/08/22 20:57

>DoCmd.OpenForm "入力フォーム", acNormal ←ここ


この行を実行するとエラーメッセージ(ポップアップで”~がありません。”とか書いてあるやつ。)が表示されるはずです。

それを教えてください。

この回答への補足

マクロボタンを押すと、実行時エラー'2501' OpenFormアクションの実行はキャンセルされまいた。と出ます。この
2501って何ですか?自分は知識がまったくないので、すみません。

補足日時:2005/08/20 08:54
    • good
    • 0

>DoCmd.Close acForm, "初期画面", acSaveYes



は"初期画面"というFormを(セーブした上で)閉じるというコマンドです。

>DoCmd.OpenForm "入力フォーム", acNormal ←ここ

は、"入力フォーム"というFormを(通常ウィンドウで)開く、というコマンドです。

"入力フォーム"というFormが存在しないとかではないですか?フォームのウィンドウを確認して下さい。(間違って消してしまったとか。)また、実行時に何かしらエラーメッセージが出てませんか?

この回答への補足

入力フォーム"というFormは存在しています。そういえば、友達は自分のパソコンでやったときには確かに動いたと言っていました。(XP) 自分のはMeと98SEでどちらも動きません。そういうことってあるのですか。いろいろすみません。

補足日時:2005/08/20 08:58
    • good
    • 0
この回答へのお礼

お礼が遅くなってすみません。データをハードディスクにコピーし、マクロが止まってしまうフォームを名前を変えてコピーし直したら動くようになりました。ありがとうございました。

お礼日時:2005/08/22 20:55

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A