StrConvとは、「大文字/小文字」や「ひらがな/カタカナ]などのように文字の種類を変換する関数です。
構文 : StrConv (String , Conversion , LCID)
String : 変換する文字列
Conversion : 変換する種類を指定する定数
LCID : (省略可)国別情報識別子を指定。通常Windowsのシステムで設定されています。
Conversionに指定する定数一覧
定数 |
値 |
内容 |
vbUpperCase |
1 |
大文字に変換します |
vbLowerCase |
2 |
小文字に変換します |
vbProperCase |
3 |
先頭の文字を大文字に変換します |
vbWide |
4 |
半角を全角に変換します |
vbNarrow |
8 |
全角を半角に変換します |
vbKatakana |
16 |
ひらがなをカタカナに変換します |
vbHiragana |
32 |
カタカナをひらがなに変換します |
vbUnicode |
64 |
Unicodeに変換します |
vbFromUnicode |
128 |
Unicodeから文字列に変換します |
下のB列に入力されている文字列を、上の定数順に変換します。
「abc123 あいうえDEF456オカキク」はテスト用に、全角・半角・ひらがな・カタカナを混ぜた文字列にしています。
StrConvのVBA使用例
StrConvを使用し、上の定数順に文字列を変換するVBAです。
Sub MyStrConv()
Range("C2") = StrConv(Range("B2"), 1)
Range("C3") = StrConv(Range("B3"), 2)
Range("C4") = StrConv(Range("B4"), 3)
Range("C5") = StrConv(Range("B5"), 4)
Range("C6") = StrConv(Range("B6"), 8)
Range("C7") = StrConv(Range("B7"), 16)
Range("C8") = StrConv(Range("B8"), 32)
Range("C9") = StrConv(Range("B9"), 64)
Range("C10") = StrConv(Range("B10"), 128)
End Sub
実行結果です。
2行目 : 「abc」が「ABC」の大文字に変換されています。
3行目 : 「DEF」が「def」の小文字に変換されています。
4行目 : 先頭の「a」が「A」の大文字に変換されています。
5行目 : 「abc」が「DEF」が「abc」「def」の全角に変換されています。
6行目 : 「オカキク」が「オカキク」の半角に変換されています。
7行目 : 「あいうえ」が「アイウエ」のカタカナに変換されています。
8行目 : 「オカキク」が「おかきく」のひらがなに変換されています。
9行目 : 「あい」が「B0D0」のUnicodeに変換されています。
9行目 : 「F0H0」のUnicodeが「うえ」の文字列に変換されています。