• ベストアンサー

複数項目の入力チェックについて

MS-ACCESS(Ver2003)で売上進捗システムを作っています。 (通番検索→検索結果及び投入フォームの表示) 例えば、以下のように投入フォーム上で、必須のデータが入力されてないと、警告メッセージが出るようにしたいのです。 営業対応日(投入済)、担当者名(未投入)、対応状況(未投入) →”担当者名及び対応状況を入力してください”(警告メッセージ)            かつ 対応状況(失注)、失注理由(未投入) →””失注理由を入力してください”(警告メッセージ) (QNo.3555313の関連で追加質問です。)

質問者が選んだベストアンサー

  • ベストアンサー
noname#79209
noname#79209
回答No.2

細かな内容が解らないので、ブロック的に書きます。 なお、「投入」は「入力」として書いています。 If 担当者=入力済 And 対応状況 = 入力済 Then If 対応状況=失注 And 失注理由=未入力 Then MsgBox "失注理由を入力してください" End If Else MsgBox "担当者名及び対応状況を入力してください" End If このような場合、私は入力チェック関数を作り、その結果を数値で返し これをSelect Caseで分岐するようにしています。 ご参考まで...

miffy123
質問者

お礼

vizzarさん。 miffy123です。 以下3行の記述を既存のプロシージャに追加記述したらうまくいきました。 If (Me![対応状況]) = "失注" And IsNull(Me![失注理由]) = True Then MsgBox "失注理由を入力してください" End If 有難うございます。助かりました。

その他の回答 (1)

  • ruru0707
  • ベストアンサー率68% (20/29)
回答No.1

対応状況(失注)というのは A.対応状況欄に失注の内容が記入されている場合にのみ、  失注理由欄に入力するようにして、  失注欄が未記入の時には警告メッセージを出したいと言う事でしょうか?  もしそうなら対応状況の内容が失注と判断させる条件はありますか? B.対応状況欄に「失注」の2文字のみが入力されているという事でしょうか? 補則説明があれば詳しく説明できると思います。

miffy123
質問者

お礼

ruru07さん。 miffy123です。 説明不足で申し訳有りません。 以前、教えていただいたプロシージャに以下の3行を盛り込んだら うまくいきました。 If (Me![対応状況]) = "失注" And IsNull(Me![失注理由]) = True Then MsgBox "失注理由を入力してください" End If 有難うございます。(お返事遅れて申し訳ありませんでした。)