毎回大変お世話になっています。
フォームAからフォームBを開き(同一IDが抽出条件)フォームBの閉じるコマンド(ボタンを作成してます)を実行すると、編集していないのに『変更を保存しますか』のメーセージが出ます(この現象の時はボタンを1回クリックでは無反応で2回目のクリックでメッセージが出ます)。フォーム右上の×ではそうなりません。
フォームBを単体で開くとその現象はでません。フォームCからフォームBを同様に開いた場合はその現象は出ません。
原因が分からなくて。フォームBを他のフォームから開くコードは下記です。
Dim buID As Long
Dim foName As String, joken As String
buID = Me.[部材ID]
foName = "F部材入力フォーム"
joken = "[部材ID]=" & buID
DoCmd.OpenForm foName, acNormal, WhereCondition:=joken
この情報だけからは原因を特定するのは難しいですね。
とりあえず下記を改善するまで順に実行してみてください。
「最適化と修復」の実行
新規データベースファイルを作成して元のファイルからすべてのオブジェクトをインポートする
フォームCを一から作り直す
Hatenaさんありがとうございます。回答頂きました事は試してみますが、投稿内容に情報不足がありました。フォームBを他のフォームから開いた後にフォームBに作成している閉じるボタン(Docmd.close フォーム名)をクリックでその現象になります。
最適化と修復をしてみたのですが、解決しませんでした。カレントレコードがありませんのエラーとなりました。
それでフォームBには検索用IDコンボボックスがあり、それをフォームAから実行させる形に変更しましたらこの現象は出なくなりました。何か原因はあると思いますが様子見てみます。ありがとうございました。