【EXCEL VBA】文字列のひらがなとカタカナを変換する StrConv関数

スポンサーリンク

ひらがなとカタカナを変換する

入力は”ひらがな”か”カタカナ”で統一したい!

みたいなときに、ユーザーが入力した文字を強制的に”ひらがな”または”カタカナ”に直したいときがあるとかないとか。。。

そんなときのために、今回は”ひらがな”と”カタカナ”を変換するStrConv関数を紹介します。

スポンサーリンク

StrConv関数

構文

StrConv(変換したい文字列, 変換内容の指定)

変換内容の指定の引数を次のように指定します。

vbKatakanaカタカナに変換する
vbHiraganaひらがなに変換する

では早速やってみます。

サンプル

A1セルの文字列を”カタカナ”にして、B1セルに入力するコードです。

Sub sample()

    Range("B1") = StrConv(Range("A1"), vbKatakana)
    
End Sub

”カタカナ”にしたいので、“vbKatakana”を指定しています。

”ひらがな”の「ひらちん」に対して実行します。

B1セルに、”カタカナ”の”ヒラチン”が表示されました。

反対に、”カタカナ”を”ひらがな”にします。

今度は、B1セルの全角文字をC1セルに半角で入力しましょう。

Sub sample()

    Range("C1") = StrConv(Range("B1"), vbHiragana)
    
End Sub

”ひらがな”にしたいので、“vbHiragana”を指定しています。

”ひらがな”に戻りましたね(^o^)

使用例

例えば、名前のフリガナをカタカナで入力して欲しいときなんかに、入力した文字列をカタカナに強制的に変換するなんてことができます。

Sub sample()

    'ユーザーにフリガナを入力してもらう
    Dim フリガナ As String
    フリガナ = InputBox("フリガナを入力してください。", "フリガナ")
    
    '入力してもらった値を、カタカナに直してA1セルに入力
    Range("A1") = StrConv(フリガナ, vbKatakana)
    
End Sub

strConv関数は、”ひらがな”や”カタカナ”だけでなく、”全角”や”半角”など文字列を変換することが出来る関数です。

他の変換に興味がある方はこちらを参考にして下さい。

定数内容
vbUpperCase1文字列を大文字に変換します
vbLowerCase2文字列を小文字に変換します
vbProperCase3文字列の各単語の先頭の文字を大文字に変換します
vbWide4文字列内の半角文字を全角文字に変換します
vbNarrow8文字列内の全角文字を半角文字に変換します
vbKatakana16文字列内のひらがなをカタカナに変換します
vbHiragana32文字列内のカタカナをひらがなに変換します
vbUnicode64システムの既定のコードページを使って文字列をUnicodeに変換します
vbFromUnicode128文字列をUnicodeからシステムの既定のコードページに変換します

コメント

タイトルとURLをコピーしました