Option Compare Database
Option Explicit
Private Sub bt1_Click()
'全角チェック
MsgBox IsZenkaku("あいう") 'true
MsgBox IsZenkaku("あいHoge") 'false
'半角チェック
MsgBox IsHankaku("ABC") 'true
MsgBox IsHankaku("あいHoge") 'false
End Sub
'---------------------------------------------
'■すべて全角かチェックする■
'[引数]
'value : 調べる値
'[戻り値]
'全て全角 :true 半角文字あり:false
'---------------------------------------------
Private Function IsZenkaku(value As String) As Boolean
Dim wideVaule As String
'全て全角にする
wideVaule = StrConv(value, vbWide)
'すべて全角にした値と元の値が同じならば全て全角
If StrComp(wideVaule, value, vbBinaryCompare) <> 0 Then
IsZenkaku = False
Else
IsZenkaku = True
End If
End Function
'---------------------------------------------
'■すべて半角かチェックする■
'引数
'value : 調べる値
'[戻り値]
'全て半角 :true 全角文字あり:false
'---------------------------------------------
Private Function IsHankaku(value As String) As Boolean
'元の文字の長さとシフトJISに変換した文字数が同じ場合半角
If Len(value) = LenB(StrConv(value, vbFromUnicode)) Then
IsHankaku = True
Else
IsHankaku = False
End If
End Function