1〜9以外の数字を入れたらセーフ、それ以外のものは(A、あ、a、ァなど)だめ、ということをしたかったのですが、入力までできたのですが、数字以外のものを入力して場合はその場で普通に消したいんですけど、でもBACKSPACEが利かなくって、BACKSPASEを押した時もエラーメッセージがでます。
初心者なんですけど、いろいろ試してみたんですけど、うまくいかなくって、どうか誰か教えってください。
Private Sub text2_KeyPress(KeyAscii As Integer)
If KeyAscii >= Asc("1") And ("9") <= KeyAscii Then
Else
MsgBox "入力ミスです"
End If
End Sub
すみません、慌てて書いてしまったので間違いました
1〜9以外の数字を入れたらセーフ → 1〜9の数字を入れたらセーフ
お教え願います!!
If Asc(KeyAscii) >= 48 And 57 <= Asc(KeyAscii) Or Asc(KeyAscii) == 8 Then
Else
MsgBox "入力ミスです"
End If
APIを使えば楽チンよ。
http://www.vbvbvb.com/jp/gtips/0701/gSetWindowLongEsNumber.html
もう一つお聞きしたいのですが、今は入力されたものをASC()が受取って、keyasciiにコードを渡して、メッセージボックスで表示しているのですが、
”ギ ”と同類の文字のコードを表示させるのがうまくいてません、というのは
keyasciiで”ギ”を二文字として認識してるから、毎回”キ”だけの文字コードがでてきます。"ギ"のような字を入力時に判別するにはどうすればよろしいですか。
教えってください、おねがいします。
If keyascii <= 221 And keyascii >= 177 Or keyascii = 8 Or keyascii = 13 Then
Exit Sub
Else
MsgBox "半角のカタカナでお願いします"
keyascii = 0
End If