入力文字を限定する - KeyPressイベントの利用
フォーム上のテキストボックスでの入力文字はIMEmodeプロパティーを
プロパティーウィンドウまたはコードから設定することによりある程度
可能ですが、それに対応できない場合などはキープレスイベントで受け
取ったアスキーコードを判断して文字変換後、値をテキストボックスに
表示するという処理を行います。

ここでは、IMEモードを直接入力モードにした際、半角大文字にそろえる
ケースを考えます。下記に提示したサンプルでは、受け取ったキーコー
ドをCAPS LOCKの状態に関係なく、大文字に変換します。

サンプルの実行にはテキストボックスのKeyPressイベントに下記コードを
記述し、テキスト入力してみてください。

'-----テキストボックスのキープレスイベント----

Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)

    Select Case KeyAscii

        Case Asc("a") To Asc("z") 'Asc関数で指定文字を変換して分岐処理
            '半角小文字が入力された場合にはStrconv関数で大文字に変換
            KeyAscii = Asc(StrConv(Chr(KeyAscii), vbUpperCase))

        Case Else    '半角小文字以外は何もしない

    End Select

End Sub

Excel97,2000



戻る


Excel Word Access VBA! モーグ