- ベストアンサー
エクセルのふりがな関数について
既に入力してあるデータのふりがなを出したいのですが、phonetic関数を使ってももとある漢字のデータしか表示されません。”書式”の”ふりがな”の”編集”をクリックするとふりがなが表示されるようにはなるのですが、セル1つ1つに対してその操作をしないとふりがなの表示ができません。なんとか一括でふりがなの表示ができる方法はないでしょうか?ご教示ください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 おそらく、Excelでないところからの貼り付けデータだったりしませんか? その場合、一括でするのは、VBAでないと無理かもしれません。 もちろん、ふりがな・編集や ショートカットの「Alt + Shift + ↑」でも、一字ずつなら出来ますが、大量だと大変です。 コードの登録の仕方: 画面したのシートタブを右クリックして、コードの表示 で、以下のコードを貼り付けます。 画面をAlt + F11 で、閉じます。 使用法: ふりがなを復活させる範囲を選択 Alt + F8 で、マクロダイアログがでますから、「ふりがな復活」という文字探して、クリック なお、表面的には何も変化していませんが、Phonetic 関数を使えば、復活しているのが分かります。(ただし、IMEの学習辞書に優先させるものですから、間違っているものもあります。) '------------------------------------------------ Sub ふりがな復活() Dim c As Range Dim rng As Range Set rng = Selection 'マウスで選択 For Each c In rng If VarType(c) = vbString Then If c.Characters.PhoneticCharacters = "" Then c.SetPhonetic 'ひらがな復活 End If End If Next c End Sub
その他の回答 (3)
- imogasi
- ベストアンサー率27% (4737/17069)
振り仮名はエクセル上で、IME等を使って、仮名漢字変換をしたときに(注 1)同時に(副産物的に)振り仮名記憶域に入力したカナを記録しておき、後刻、要求あり(=PHONETIC関数や振り仮名表示)次第、それらを表に出すものと理解してました。 質問者によると「書式”の”ふりがな”の”編集”をクリックするとふりがなが表示されるようにはなるのですが」では、振り仮名記憶域には振り仮名 データはあるが、Phonetic関数が使えないケースがあるということになり、私の理解がまちがっていたのかも知れませんが、不思議です。 (注1)#3で触れられているケースなども1例かと思いますが、このエクセルで仮名漢字変換をしたプロセスが存在しないデータ(他ソフトなどからコピー貼り付けしたり、テキストファイルの読み込みデータなど)は、上記理由から、当然振り仮名を出すことはできません。漢字部分は、漢字そのものが出ると思います。 (注2)これと漢字部分の再変換とは違います。 たとえば、メモ帳からコピーした「反省は」は、エクセルでF2を押して、変換キーを押すと「反省、半生、藩政・・、はんせい」と出る、この「はんせい」を選ぶこととは違います。
お礼
よくわからないのですが、ふりがな復活マクロで復活できました。ありがとうございます。
- nakataku7
- ベストアンサー率34% (11/32)
ふりがなを付けたいセルを範囲指定(列・行ごとも可)し、 「書式→ふりがな→表示・非表示」でなりませんか?
お礼
セル一つ一つについてそれをやると、できるのですが、範囲指定だとならないんです。
- 0shiete
- ベストアンサー率30% (148/492)
A1に山田 B1に=phonetic(a1)と 入力すれば、すぐにB1にヤマダと表示されましたが? 状況を詳しくご説明ください。
お礼
そうやったらちゃんとふりがなが表示されるのですが、他からいただいたデータでやるとできないんです。これってマックで作ったとかそういうこと関係あるんですかね?
お礼
このマクロで完璧にできました。すばらしいです。ありがとうございます。