Asc関数です。
入力した文字列の先頭の「文字コード」を返します。
たとえば、Asc(”あいう”)とすると、入力した文字列”あいう”のうち先頭の”あ”の文字コードを返します。
この場合、-32096 という値が出されます。
▼サンプルプログラム
Sub Asc_Function_1()
MsgBox "入力した文字列:" & "あ" & vbCr & _
"文字コード:" & Asc("あ")
End Sub
少し工夫すると、もう少し複雑な判定が可能になります。
以下のプログラムでは、入力した文字列の先頭の文字が「全角の英数字」かどうかを判定します。
全角の英数字の場合の文字コードは以下の通り。
0 -32177
9 -32168
A -32160
Z -32135
a -32127
z -32102
なので、これらの大小を比べると、0~9、A~Z、a~zという範囲で比較ができるわけです。
▼サンプルプログラム
Sub Asc_Function_2()
Dim myString As String
myString = InputBox("文字列を入力してください。")
If (Asc(myString) >= -32177 And _
Asc(myString) <= -32168) Or _
(Asc(myString) >= -32160 And _
Asc(myString) <= -32135) Or _
(Asc(myString) >= -32127 And _
Asc(myString) <= -32102) Then
MsgBox "入力した文字列の最初の文字は全角の英数字ですね。"
Else
MsgBox "入力した文字列の最初の文字は全角の英数字ではありません。"
End If
End Sub
▼関連記事