« 複数個の文字列を一括で置換する | トップページ | 為替の時系列データの取り込み »

2020年5月 5日 (火)

大文字/小文字変換,全角/半角変換,ひらがな/カタカナ変換

StrConv関数を使うと
アルファベットの大文字/小文字変換,
全角/半角変換,
ひらがな/カタカナ変換ができます。

使い方は
1つ目の引数に"文字列",
2つ目の引数に"変換の種類"を指定します。

"変換の種類"の定数は以下になります。

定数
変換の種類
vbUpperCase
大文字に変換
vbLowerCase
小文字に変換
vbProperCase
単語の最初の文字を大文字に変換
vbWide
半角文字を全角文字に変換
vbNarrow
全角文字を半角文字に変換
vbKatakana
文字列に含まれるひらがなをカタカナに変換
vbHiragana
文字列のカタカナ文字をひらがなに変換

例えばアルファベットを大文字に変換したい場合は

StrConv("abc",vbUpperCase)

と指定します。
上記は"ABC"という文字列を返します。

次のコードはStrConv関数を使用して
各種変換をします。

アルファベットの半角小文字,半角大文字,
アルファベットの全角小文字,半角大文字,
ひらがな,全角カタカナ,半角カタカナが入った次の文字列
"abc ABC abc ABC あいう アイウ アイウ"
を変換します。

変換後の文字をセルに書き出すので
どのように変換されるか参考にしてください。

大文字/小文字変換,全角/半角変換,
ひらがな/カタカナ変換するするコード:

Sub macro20200505a()
'大文字/小文字変換,全角/半角変換,
' ひらがな/カタカナ変換するコード
   
    Dim i As Integer
    Dim str As String
    i = 1
    str = "abc ABC abc ABC あいう アイウ アイウ"
   
    Sheets.Add
    Cells(1, 1) = "変換前の文字列"
    Cells(1, 2) = str
   
    '大文字に変換
    Cells(2, 1) = "大文字に変換"
    Cells(2, 2) = StrConv(str, vbUpperCase)
    '小文字に変換
    Cells(3, 1) = "小文字に変換"
    Cells(3, 2) = StrConv(str, vbLowerCase)
    '単語の最初の文字を大文字に変換
    Cells(4, 1) = "単語の最初の文字を大文字に変換"
    Cells(4, 2) = StrConv(str, vbProperCase)
    '全角文字に変換
    Cells(5, 1) = "全角文字に変換"
    Cells(5, 2) = StrConv(str, vbWide)
    '半角文字に変換
    Cells(6, 1) = "半角文字に変換"
    Cells(6, 2) = StrConv(str, vbNarrow)
    'カタカナに変換
    Cells(7, 1) = "カタカナに変換"
    Cells(7, 2) = StrConv(str, vbKatakana)
    'ひらがなに変換
    Cells(8, 1) = "ひらがなに変換"
    Cells(8, 2) = StrConv(str, vbHiragana)
    '半角+カタカナに変換
    Cells(8, 1) = "半角+カタカナに変換"
    Cells(8, 2) = StrConv(str, vbNarrow + vbKatakana)
   
    Cells.EntireColumn.AutoFit
   
 End Sub

実行結果:
Vba20200505a

使用Ver:Win10, Excel For Office365

|

« 複数個の文字列を一括で置換する | トップページ | 為替の時系列データの取り込み »

コメント

この記事へのコメントは終了しました。