今回は文字列の大文字と小文字、全角と半角、さらにひらがなとカタカナの変換する方法についてご説明します。
変換するには「StrConv関数」を使用します。
よくデータを集計するなどの前に、前処理として行います。
VlookUp関数やCountIf関数を使用する前や、文字列比較したい場合などに少しでも一致の精度を上げる時などに効果的です。
その他の変換する関数については下記記事をご覧ください。
- Val関数で文字列を数値に変換する方法
- CDbl関数で文字列をDouble型の数値に変換する
- CSng関数で文字列をSingle型の数値に変換する
- CLng関数で文字列をLong型の数値に変換する
- CInt関数で文字列をInteger型の数値に変換する
1.StrConv関数の使い方
StrConv関数は大文字と小文字、全角と半角、ひらがなとカタカナなど文字列を変換します。
構文は次のように記述します。
StrConv(String,Conversion)
引数 | 説明 |
String | 変換する文字列を指定します。 |
Conversion | 変換の種類を指定します。 |
Conversionの定数一覧
指定した文字列に対して、選択した変換の種類で変換対象の文字列がない場合はそのまま文字列を返します。
一部の変換は「OR」などで組み合わせて使用する事ができますが、組み合わせが出来ないケースもあり、その場合はエラーとなります。
定数 | 値 | 説明 |
vbUpperCase | 1 | 文字列を大文字に変換します。 |
vbLowerCase | 2 | 文字列を小文字に変換します。 |
vbProperCase | 3 | 文字列のすべての単語の最初の文字を大文字に変換します。 |
vbWide | 4 | 文字列に含まれる半角文字を全角文字に変換します。 |
vbNarrow | 8 | 文字列に含まれる全角文字を半角文字に変換します。 |
vbKatakana | 16 | 文字列に含まれるひらがなをカタカナに変換します。 |
vbHiragana | 32 | 文字列に含まれるカタカナをひらがなに変換します。 |
vbUnicode | 64 | システムの既定コードページを使用して文字列をUnicodeに変換します。 |
vbFromUnicode | 128 | 文字列をUnicodeからシステムの既定のコードページに変換します。 |
2.サンプルコード
Sub Sample1()
'小文字→大文字(abc→ABC)
Debug.Print StrConv("abc", vbUpperCase)
'大文字→小文字(ABC→abc)
Debug.Print StrConv("ABC", vbLowerCase)
'最初の文字を大文字(abc→Abc)
Debug.Print StrConv("abc", vbProperCase)
'半角→全角(abc→abc)
Debug.Print StrConv("abc", vbWide)
'全角→半角(abc→abc)
Debug.Print StrConv("abc", vbNarrow)
'ひらがな→カタカナ(あいう→アイウ)
Debug.Print StrConv("あいう", vbKatakana)
'カタカナ→ひらがな(アイウ→あいう)
Debug.Print StrConv("アイウ", vbHiragana)
End Sub
3.変換の種類を組み合わせたサンプルコード
Sub Sample2()
'小文字と半角→大文字と全角
Debug.Print StrConv("abc", vbUpperCase Or vbWide)
'大文字と全角→小文字と半角
Debug.Print StrConv("ABC", vbLowerCase + vbNarrow)
End Sub