ACCESS初心者です。 よろしくお願いいたします。
ACCESS初心者です。 よろしくお願いいたします。 サブフォーム([F_商品])内のテキストボックス([商品内訳])の1行目に値が入力されていない場合に、メッセージを表示させたいと考えています。 下記のコードを作ったのですが、(1行目に限らず)フォーカスされた行が未入力だとメッセージが表示されてしまいます。 Private Sub F_商品_Enter() If IsNull([F_商品].[Form]![商品内訳]) Then MsgBox "商品が未登録です。" End If End Sub ※[商品内訳]はサブフォームの【詳細】に入れています。 1行目のみの値の有無を判定するにはどのようなコードにすればよいでしょうか? ご教授いただけると幸いです。 どうぞよろしくお願いいたします。
Microsoft Access・201閲覧・50
ベストアンサー
Private Sub F_商品_Enter() Dim rst As DAO.Recordset Set rst = [F_商品].[Form].RecordsetClone rst.MoveFirst If IsNull(rst!商品内訳) Then MsgBox "商品が未登録です。" End If rst.Close Set rst = Nothing End Sub 直書き、間違ってたら後免。
ご返事ありがとうございます! [商品内訳]に何も入力されていない状態で教えて頂いたコードを実行すると下記が表示されます。 ----------------------- 実行時エラー '3021' カレント レコードがありません。 ----------------------- そしてデバッグを表示させるとコード内の下記の部分が黄色くハイライトされます。 ----------------------- rst.MoveFirst ----------------------- どのような修正が必要になりますでしょうか? ([商品内訳]にデータが入っている場合は、フォーカスされた行が未入力であっても実行時に特に何も表示されません。) どうぞよろしくお願いいたします。
質問者からのお礼コメント
ご返事を頂き誠にありがとうございます! 再現できるぐらいの細かい説明が必要とのことで大変失礼致しました。 また質問立てをさせて頂ければと思います。 この度はありがとうございました。
お礼日時:1/22 21:58