VBA:文字列の変換(2)全角と半角、ひらがなとカタカナ。先頭大文字変換。StrConv関数
VBAの処理でユーザが入力した値に全角と半角やひらがなカタカナが混在してしまう場合があります。このような場合に「StrConv」関数を利用すると簡単に変換できます。
1.英数字を全角→半角に変換「vbNarrow」
「StrConv」と「vbNarrow」を使って変換するサンプルコードです。
1 2 3 4 5 6 7 8 |
'全角英数字→半角英数字' Sub 動作チェック() Dim str As String str = "abc123あいう4567ABC890DEF123abc" '英数字を全角から半角に変換する。' MsgBox StrConv(str, vbNarrow) '→「abc123あいう4567abc890def123abc」と表示されます' End Sub |
2.英数字を半角→全角に変換「vbWide」
「StrConv」と「vbWide」を使って変換するサンプルコードです。
1 2 3 4 5 6 7 8 |
'半角英数字→全角英数字' Sub 動作チェック() Dim str As String str = "ABC123あいう4567ABC890DEF123abc" '英数字は半角から全角に変換する。' MsgBox StrConv(str, vbWide) '→「ABC123あいう4567ABC890DEF123abc」と表示されます' End Sub |
3.ひらがな→カタカナに変換「vbKatakana」
「StrConv」と「vbKatakana」を使って変換するサンプルコードです。
1 2 3 4 5 6 7 8 9 |
'ひらがな→カタカナ' Sub 動作チェック() Dim str As String str = "ABC123あいう4567カキクDEF123abc" 'ひらがなをカタカナに変換する。' MsgBox StrConv(str, vbKatakana) '→「ABC123アイウ4567カキクDEF123abcc」と表示されます' End Sub End Sub |
4.カタカナ→ひらがなに変換「vbHiragana」
「StrConv」と「vbHiragana」を使って変換するサンプルコードです。
1 2 3 4 5 6 7 8 |
'ひらがな→カタカナ' Sub 動作チェック() Dim str As String str = "ABC123あいう4567カキクDEF123abc" 'カタカナをひらがなに変換する。' MsgBox StrConv(str, vbHiragana) '→「ABC123あいう4567かきくDEF123abcc」と表示されます' End Sub |
5.先頭のアルファベットを大文字に変換「vbProperCase」
「StrConv」と「vbProperCase」を使って先頭のアルファベットを大文字に変換するサンプルコードです。
アルファベットなら全角半角ともに大文字に全角半角のまま変換されます。
1 2 3 4 5 6 7 |
'先頭のアルファベットを大文字に変換' Sub 動作チェック() Dim str As String str = "apple" MsgBox StrConv(str, vbProperCase) '→「Apple」と表示されます' End Sub |
◆関連記事
VBA:文字列の変換(1)大文字と小文字。UCase関数・LCase関数・StrConv関数
【VBA】UCase関数・LCase関数・StrConv関数を利用して文字列の大文字と小文字を変換する方法