VBA:文字列の変換(1)大文字と小文字。UCase関数・LCase関数・StrConv関数
VBAの処理でユーザが入力した値に、大文字や小文字、全角と半角などが混在してしまう場合があります。このままだとデータの処理で問題が出てきてしまうので、統一させたいことがあります。このような場合に「UCase」関数や「StrConv」関数を利用すると簡単に変換できます。
1.小文字→大文字に変換。「UCase」関数と「StrConv」関数
結果は同じですが、「UCase」関数の方がシンプル。
(1)「UCase」関数の場合
「UCase」関数を使って変換するサンプルコードです。
1 2 3 4 5 6 7 8 |
'小文字→大文字' Sub 動作チェック() Dim str As String str = "abc123あいう4567ABC890DEF123abc" '全角半角両方とも小文字を大文字に変換する。' MsgBox UCase(str) '→「ABC123あいう4567ABC890DEF123ABC」と表示されます' End Sub |
(2)「StrConv」関数の「vbUpperCase」の場合
「StrConv」と「vbUpperCase」を使って変換するサンプルコードです。
1 2 3 4 5 6 7 8 |
'小文字→大文字' Sub 動作チェック() Dim str As String str = "abc123あいう4567ABC890DEF123abc" '全角半角両方とも小文字を大文字に変換する。' MsgBox StrConv(str, vbUpperCase) '→「ABC123あいう4567ABC890DEF123ABC」と表示されます' End Sub |
2.大文字→小文字に変換。「LCase」関数と「StrConv」関数
結果は同じですが、「LCase」関数の方がシンプル。
(1)「LCase」関数の場合
「LCase」関数を使って変換するサンプルコードです。
1 2 3 4 5 6 7 8 |
'大文字→小文字' Sub 動作チェック() Dim str As String str = "abc123あいう4567ABC890DEF123abc" '全角半角両方とも大文字を小文字に変換する。' MsgBox LCase(str) '→「abc123あいう4567abc890def123abc」と表示されます' End Sub |
(2)「StrConv」関数の「vbLowerCase」の場合
「StrConv」と「vbLowerCase」を使って変換するサンプルコードです。
1 2 3 4 5 6 7 8 |
'大文字→小文字' Sub 動作チェック() Dim str As String str = "abc123あいう4567ABC890DEF123abc" '全角半角両方とも大文字を小文字に変換する。' MsgBox StrConv(str, vbLowerCase) '→「abc123あいう4567abc890def123abc」と表示されます' End Sub |
◆関連記事