文字列からふりがなの取得を行うGetPhoneticメソッド
文字列からふりがなを取得するにはGetPhoneticメソッドを利用します。
なお、文字列ではなくセルに設定されているふりがなを取得する場合はRangeオブジェクトのPhoneticsコレクションを利用します。
取得するふりがなは既定では全角カタカナになりますが、取得時や取得後に変換することでひらがなや半角カタカナにもなります。
構文
1 |
Function Application.GetPhonetic([Text]) As String |
Application | Applicationオブジェクトを指定します。 |
Text | ふりがなを取得したい文字列を指定します。通常はふりがなを取得したいセルのRangeオブジェクトとそのValue値(Range(“A1”).ValueやCells(1, 1).Valueなど)を指定することが多いと思います。 |
戻り値 | 取得したふりがなを文字列で返します。 |
サンプルコード
以下のコードはA列の文字列のフリガナを取得し、B列(全角カタカナ)、C列(ひらがな)、D列(半角カタカナ)を出力するサンプルです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
Sub GetPhoneticTest() Dim r As Range Dim s '// A1からA9セルまでループ For Each r In Range("A1:A9") '// ふりがなを取得 s = Application.GetPhonetic(r.Value) '// 全角カタカナのふりがなを設定 r.Offset(0, 1).Value = s '// 全角かたかなのふりがなを設定 r.Offset(0, 2).Value = StrConv(s, vbHiragana) '// 半角カタカナのふりがなを設定 r.Offset(0, 3).Value = StrConv(s, vbKatakana + vbNarrow) Next End Sub |
実行結果
実行前
実行後(列幅は見やすいように調整しています)