エクセルで漢字や名前にふりがなを一括でつける際に、「まとめてふりがなを付けたい」「削除する方法がわからない」と困った経験はありませんか?
エクセルでは通常のふりがな設定に加えて、VBAを使うことで大量のデータに一括でふりがなを付けたり削除したりすることができます。
この記事では【Excel】エクセルで漢字・名前にふりがなを一括でつける方法(付け方・削除・消す方法)について解説していきます。
・ふりがなを一括削除・非表示にする方法
・名前・漢字への一括付与後に誤りを効率よく修正する手順
それでは詳しく見ていきましょう。
エクセルでふりがなを一括でつける前に知っておくべきこと
ふりがなを一括でつける方法を解説する前に、エクセルのふりがな機能の仕組みを整理しておきましょう。
エクセルのふりがなはキーボードからの直接入力時にIMEが自動記録するものであるため、コピー貼り付けや外部取り込みのデータにはふりがな情報が存在しません。
ふりがな情報がないデータに対してVBAのSetPhoneticメソッドを使うと、エクセルが漢字を自動判定してふりがなを生成しますが、人名や固有名詞では誤判定が発生することがあります。
一括付与後は必ず内容を確認して、誤ったふりがなを修正する工程をセットで行うことが重要です。
また、ふりがなを「表示する」操作と「データとして記録する」操作は別物であることも覚えておきましょう。
ふりがなを一括でつける方法1【VBAで自動生成する】
大量のデータにふりがなを一括でつけるには、VBAのSetPhoneticメソッドを使う方法が最も効率的です。
サンプルデータを確認しましょう。

AltキーとF11キーでVBAエディターを開き、「挿入」→「標準モジュール」を選択して以下のコードを入力します。
Sub ふりがな一括付与()
Dim cell As Range
For Each cell In Range("A2:A6")
If cell.Value <> "" Then
cell.SetPhonetic
cell.Phonetics.Visible = True
End If
Next cell
MsgBox "ふりがなの一括付与が完了しました。"
End Sub
Range(“A2:A6”)の部分を実際のデータ範囲に変更してF5キーで実行します。

SetPhoneticメソッドがエクセルの自動判定でふりがなを生成し、Phonetics.Visible = Trueで各セルのふりがな表示がオンになります。
実行後はセルの上部にふりがなが自動表示されます。
ふりがなをひらがなで一括付与する方法
自動生成されたふりがなをひらがなに変換しながら付与したい場合は、SetPhoneticの後にStrConv関数を組み合わせます。
Sub ふりがなひらがな一括付与()
Dim cell As Range
Dim i As Integer
For Each cell In Range("A2:A6")
If cell.Value <> "" Then
cell.SetPhonetic
For i = 1 To cell.Phonetics.Count
cell.Phonetics(i).Text = StrConv(cell.Phonetics(i).Text, vbHiragana)
Next i
cell.Phonetics.Visible = True
End If
Next cell
MsgBox "ひらがなでのふりがな付与が完了しました。"
End Sub
このコードを実行するとふりがなの自動生成とひらがな変換が同時に行われます。

ふりがなを一括でつける方法2【PHONETIC関数で別列に一括表示する】
ふりがなをセルの上部ではなく隣の列にまとめて表示したい場合は、PHONETIC関数を使います。
B2セルに以下の数式を入力してB6セルまでコピーします。
VBAでふりがなを一括付与した後にPHONETIC関数を使うことで、B列にふりがなの一覧が自動表示されます。

この組み合わせを使うことで、ふりがなの付与状況をB列で一覧確認しながら誤りがあるセルをすぐに特定できます。
誤りを発見したらAltキーとShiftキーと上矢印キーのショートカットでふりがな編集モードに入り、手動で修正しましょう。
ふりがなを一括削除・消す方法
ふりがなを一括で削除または非表示にする方法を確認しましょう。
ふりがなを非表示にする方法
ふりがなのデータは残したまま表示だけをオフにする場合は、対象セル範囲を選択して「ホーム」タブの「ふりがなの表示/非表示」ボタンをクリックするだけで非表示になります。

再度ボタンをクリックすると表示に戻るため、ふりがなデータを保持しながら表示を切り替えたい場合に便利です。
VBAでふりがなを一括削除する方法
ふりがなデータそのものを完全に削除したい場合はVBAを使います。
Sub ふりがな一括削除()
Dim cell As Range
For Each cell In Range("A2:A6")
If cell.Phonetics.Count > 0 Then
cell.Phonetics(1).Text = ""
End If
Next cell
MsgBox "ふりがなの一括削除が完了しました。"
End Sub
このコードを実行するとA2からA6セルのふりがなテキストが空になり、ふりがな情報が削除されます。
削除後はPHONETIC関数を使っても元の文字列がそのまま返されるようになります。
ふりがなを一括付与後に誤りを効率よく修正する手順
SetPhoneticメソッドで一括付与したふりがなには誤りが含まれることがあるため、効率的な修正手順を覚えておきましょう。
まずB列にPHONETIC関数を入力してふりがなの一覧を表示し、目視で誤りがないか確認します。
誤りが見つかったセルをA列で選択し、AltキーとShiftキーと上矢印キーでふりがな編集モードに入って正しいふりがなに修正します。
修正後はB列のPHONETIC関数の結果が自動更新されるため、修正が反映されたかをすぐに確認できます。
人名は特に誤判定が多いため、氏名データへのふりがな一括付与後は必ず全件確認を行うことをおすすめします。
確認と修正が完了したら、B列を値として貼り付けてふりがな列を固定データとして保存しておくと管理しやすくなります。
まとめ エクセルで漢字・名前にふりがなができない時(一部・自動の付け方・削除)
エクセルで漢字や名前にふりがなを一括でつける方法をまとめると、VBAのSetPhoneticメソッドを使って対象範囲を一括処理するのが最も効率的な方法です。
ひらがなで付与したい場合はSetPhoneticの後にStrConv関数とvbHiraganaを組み合わせることで、生成と変換を同時に行えます。
付与後はPHONETIC関数で別列に一覧表示して誤りを確認し、誤りがあるセルはAlt+Shift+↑のショートカットで編集モードに入って手動修正する流れが効率的です。
ふりがなを非表示にするだけなら「ふりがなの表示/非表示」ボタンで切り替えでき、データごと削除したい場合はVBAでPhonetics(1).Textを空にする方法が使えます。
一括付与後の全件確認は人名データでは特に重要であるため、付与→確認→修正の3ステップをセットで行う習慣をつけていきましょう。

コメント