- 締切済み
VBAのGoToControl について
お世話になります。 フォームで値が入力されないで、フォーカスが移動したら メッセージを表示させ、そのテキストボックスに移動する というのを行いたいのですが表示させることは出来るのですが どうしても次のテキストボックスに移動してしまいます。 :この場合は次のテキストボックスに移動してしまいます DoCmd.GoToControl "テキスト1" :この場合だとForms!入力画面!物テキスト1という名前のフィールド はありませんとエラーになります。 DoCmd.GoToControl "Forms!入力画面!物テキスト1" 標準モジュールで記述し、テキスト1からフォーカスが離れるときに 呼び出しています。 よろしくお願い申し上げます。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- nattoku
- ベストアンサー率100% (2/2)
回答No.2
当方、まったく同様の内容で悩んでおりました。 本件の「~という名前のフィールドはありません。」とエラーになる件は解決いたしませんが、 DoCmd.GoToControl "テキスト1" の代わりに、 SendKeys "+{TAB}" と入れることで、フォーカスの固定に成功しました。 参考になりましたら幸いです。
- tsukasa-12r
- ベストアンサー率65% (358/549)
回答No.1
Access ですか? バージョンがわかりませんけど、 テキスト1の「フォーカス喪失時/Exit」イベントで Private Sub テキスト1_Exit(Cancel As Integer) If IsNull(テキスト1) Then MsgBox "入力してください", vbExclamation Cancel = True End If End Sub のようにすればよいと思います。