
よろしくお願いいたします。
エクセルの名簿で100名以上あるのですが、
フリガナがなく、漢字の「氏名」しかありません。
そこで、氏名の右に列を挿入して、PHONETIC関数をコピーして入れましたが、漢字のままの氏名しか変換されてきません。
◆漢字のあるセルで”「shift」+「alt」+「↑」”をひとつひとつやってみまると、フリガナに返還されますが、手間がかかってしかたありません。
◆関数を使用もしくは、マクロを使用して、一括してフリガナ変換できる方法を教えてください。
よろしくご指導をお願いいたします。
No.2ベストアンサー
- 回答日時:
おそらく、CSVファイルから変換したようなファイルかと思います。
Phonetic関数が使えるのは、Excel上で漢字変換したものだけに限られます。
下記のようなものを標準モジュールに関数として登録すれば少しは役に立つかも?
使い方はPhonetic関数と同じ。
※得られる結果は、IMEで登録されている読み方の中から適当に選ばれますので
必ずしも本来の読み方になるとは限りません。
生方(うぶかた)→ おがた、中田(なかた)→なかだ など等
つまり、最終的には人間のチェックが必要です。
Function gh(rg As Range) As String
gh = Application.GetPhonetic(rg.Value)
End Function
マクロの関数だと、こんなにシンプルで早く出来るのですね。
ありがとうございました。とても勉強になりました。
また、解説もいただきまして、ありがとうございました。
No.3
- 回答日時:
以下のマクロは、1行目がタイトル行として、A列の2行目から漢字の氏名が入っている場合に、B列にフリガナを設定します。
これはVBAのメソッドGetPhonetic()を使ってますが、当然ながらこれで取得したフリガナは間違っていることがあるので、そのときは手で修正してください。Sub フリガナを取得()
Dim r As Range
For Each r In Range("A2", Range("A65536").End(xlUp))
Range("B" & r.Row).Value = Application.GetPhonetic(r)
Next
End Sub
また、以下は、B列のフリガナを元に、A列の氏名にフリガナを設定するマクロです。上記マクロで取得したフリガナを修正した後に実行すると、次からはワークシート関数のPHONETIC()で取り出せるようになります。
Sub フリガナを設定()
Dim r As Range
For Each r In Range("B2", Range("B65536").End(xlUp))
Range("A" & r.Row).Phonetic.Text = r.Value
Next
End Sub
ご丁寧な解説つきのご回答をいただきまして、感謝いたします。
試してみて、完璧にできました。
ありがとうございました。また、勉強にもなりました。
ただ、ポイントにつきましては、先着順での評価をさせていただきました。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「とどまる」は通常平仮名で表...
-
IMEの旧漢字変換について
-
エクセルのPHONETIC関数(もし...
-
知故
-
「心地」はなぜ「ここち」と読む?
-
「築」←この漢字の下の木へんが...
-
「良」という漢字は「ら」って...
-
この漢字の読み方を教えてくだ...
-
環境依存文字
-
会議の時に誰かしら板書される...
-
「急がしい」←いそがしいをこう...
-
大至急教えて下さいこの写真の...
-
「10,000万円」の読み方は何で...
-
山月記で、李徴が一流の詩人に...
-
係り結びでもないのに文末が連...
-
吉原幸子さん「初恋」
-
山月記
-
古文の、「口語訳」と「現代語...
-
ローマ字入力で ぢ を入力方法...
-
「また」、「そのほかに」と同...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
おすすめ情報