• ベストアンサー

エクセルのふりがな関数について

既に入力してあるデータのふりがなを出したいのですが、phonetic関数を使ってももとある漢字のデータしか表示されません。”書式”の”ふりがな”の”編集”をクリックするとふりがなが表示されるようにはなるのですが、セル1つ1つに対してその操作をしないとふりがなの表示ができません。なんとか一括でふりがなの表示ができる方法はないでしょうか?ご教示ください。

質問者が選んだベストアンサー

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.3

こんにちは。 おそらく、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

sdmurakami
質問者

お礼

このマクロで完璧にできました。すばらしいです。ありがとうございます。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

振り仮名はエクセル上で、IME等を使って、仮名漢字変換をしたときに(注 1)同時に(副産物的に)振り仮名記憶域に入力したカナを記録しておき、後刻、要求あり(=PHONETIC関数や振り仮名表示)次第、それらを表に出すものと理解してました。 質問者によると「書式”の”ふりがな”の”編集”をクリックするとふりがなが表示されるようにはなるのですが」では、振り仮名記憶域には振り仮名 データはあるが、Phonetic関数が使えないケースがあるということになり、私の理解がまちがっていたのかも知れませんが、不思議です。 (注1)#3で触れられているケースなども1例かと思いますが、このエクセルで仮名漢字変換をしたプロセスが存在しないデータ(他ソフトなどからコピー貼り付けしたり、テキストファイルの読み込みデータなど)は、上記理由から、当然振り仮名を出すことはできません。漢字部分は、漢字そのものが出ると思います。 (注2)これと漢字部分の再変換とは違います。 たとえば、メモ帳からコピーした「反省は」は、エクセルでF2を押して、変換キーを押すと「反省、半生、藩政・・、はんせい」と出る、この「はんせい」を選ぶこととは違います。

sdmurakami
質問者

お礼

よくわからないのですが、ふりがな復活マクロで復活できました。ありがとうございます。

  • nakataku7
  • ベストアンサー率34% (11/32)
回答No.2

ふりがなを付けたいセルを範囲指定(列・行ごとも可)し、 「書式→ふりがな→表示・非表示」でなりませんか?

sdmurakami
質問者

お礼

セル一つ一つについてそれをやると、できるのですが、範囲指定だとならないんです。

  • 0shiete
  • ベストアンサー率30% (148/492)
回答No.1

A1に山田 B1に=phonetic(a1)と 入力すれば、すぐにB1にヤマダと表示されましたが? 状況を詳しくご説明ください。

sdmurakami
質問者

お礼

そうやったらちゃんとふりがなが表示されるのですが、他からいただいたデータでやるとできないんです。これってマックで作ったとかそういうこと関係あるんですかね?

関連するQ&A