プロが教えるわが家の防犯対策術!

Access2003 VBA で開発しています。初心者です。

テキストボックスに入力した値が、不正な値の場合、
次のオブジェクトに移動せずに、その値を選択状態にしたいのですが、
やり方が分かりません。

txtコード.SetFocus
txtコード.SelStart = 0
txtコード.SelLength = Len(txtコード.Value)

としてもうまくいきません。

初歩的な質問ですが、解決法をご教授いただければ幸いです。

よろしくお願いいたします。

A 回答 (1件)

そのテキストボックスの更新前処理で行えば良さそうです。



txt1 に ABCD 以外が入力された時に、入力文字を全反転する例は以下

Private Sub txt1_BeforeUpdate(Cancel As Integer)
  If (Me.txt1.Text <> "ABCD") Then
    Me.txt1.SelStart = 0
    Me.txt1.SelLength = Len(Me.txt1.Text)
    Cancel = True
  End If
End Sub


※ Cancel = True とすると、他へ移動しません
    • good
    • 0
この回答へのお礼

遅くなりましたが、回答ありがとうございました!
解決しました。

お礼日時:2012/12/07 11:30

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

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


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