業務システムから出力したCSVデータや顧客名簿をExcelで整理する際、「カタカナ表記の氏名をすべてひらがなに統一したい」という場面は頻繁に発生します。しかし、代表的な文字抽出関数であるPHONETIC関数を使っても、カタカナのまま変化しなかったり意図しない挙動になったりして、作業がストップしてしまった経験を持つ方は少なくありません。
Excelの仕様上、カタカナからひらがなへの文字種変換には明確なルールと構造的な壁が存在します。本稿では、変換が失敗する根本原因を解き明かすとともに、関数・VBAマクロ・Word連携などを駆使して誰でも迷わず一発で変換できる実践テクニックを詳しく解説します。
【なぜ動かない?】PHONETIC関数でカタカナがひらがなに変換できない決定的な理由

Excelで文字列の読み仮名を取得する代表格といえばPHONETIC関数です。ふりがな設定を「ひらがな」にしておけば自動的にひらがな化できると思われがちですが、実務では「カタカナのまま変わらない」「数式を入れても元の文字列がそのまま返される」というトラブルが頻発します。
この現象が起きる根本的な理由は、Excelが保持する「ふりがな情報」の仕組みにあります。キーボードから手入力したセルには入力時のキーストローク(読み情報)が自動記録されますが、外部システムから取り込んだCSVデータやWEBサイトからコピー&ペーストした文字列には、内部的なふりがなデータが一切存在しません。
ふりがな情報を持たないセルに対してPHONETIC関数を適用すると、Excelはセルに表示されている文字そのものを返す仕様になっています。そのため、元がカタカナであればカタカナのまま出力されてしまいます。この「見かけの文字」と「内部データ」のギャップこそが、変換に失敗する最大の原因です。
【一発解決】VBAマクロとStrConv関数を使った確実なひらがな変換手順
最も確実かつ大量のセルを一瞬で処理できるアプローチが、エクセルVBAのStrConv(ストリングコンバージョン)関数を活用したマクロです。この方法なら、ふりがな情報の有無に左右されず、文字そのものを純粋に「カタカナからひらがな」へと置き換えることができます。
設定手順は極めてシンプルです。対象のシートを開いた状態で Alt + F11 を押してVBAエディタを立ち上げ、「挿入」>「標準モジュール」に以下のコードを貼り付けるだけで準備が整います。
Sub ConvertKatakanaToHiragana() Dim rng As Range For Each rng In Selection If Not rng.HasFormula And rng.Value <> "" Then ' 全角カタカナ・半角カタカナを全角ひらがなに変換 rng.Value = StrConv(StrConv(rng.Value, vbWide), vbHiragana) End If Next rng End Sub
変換したいセル範囲をマウスで選択し、マクロを実行するだけで、半角カタカナ・全角カタカナが混在していてもすべて綺麗な全角ひらがなに統一されます。関数を別列に組んで値貼り付けを行う手間すら省けるため、定期的な名簿クリーニングにおいて圧倒的な作業短縮をもたらします。
【マクロ不要】Wordを経由して瞬時にカタカナをひらがな化する裏ワザ
「会社のセキュリティ規程でVBAやマクロの実行が禁止されている」「コードを書かずに今すぐ終わらせたい」という場合に威力を発揮するのが、Wordの文字種変換機能を経由する裏ワザです。
実はMicrosoft Wordには、選択範囲の文字種を自在に切り替える専用エンジンが標準搭載されています。これを利用することで、数式もプログラムも使わずに一括変換が完了します。
具体的な手順は以下の通りです。
- Excelでひらがなに変換したいカタカナのセル範囲をコピーする。
- 新規作成したWord文書に貼り付ける。
- 貼り付けた表または文字列全体を選択し、Wordの「ホーム」タブにある「文字種の変換」アイコン(Aaのマーク)をクリックして「ひらがな」を選択する。
- ひらがなに変換されたテキストを再度コピーし、Excelの元の位置へ貼り付ける。
この手法を用いれば、数千行に及ぶデータであっても数十秒で全角ひらがなへ変換可能です。ショートカットキーを活用すればさらに高速化でき、現場で重宝される実用的な代替策となります。
【関数で処理したい場合】ASC関数・JIS関数とふりがな再生成の組み合わせ
ワークシート上の関数だけで完結させたい場合、まず行うべきは「ふりがな情報の強制付与」です。外部から取り込んだカタカナ文字列に対してExcelのふりがな機能を再認識させることで、PHONETIC関数の本来の能力を引き出すことができます。
対象範囲を選択した状態で、リボンの「ホーム」タブにある「ふりがなの表示/非表示」メニューから「ふりがなの設定」を開き、種類を「ひらがな」に指定します。その後、VBAのイミディエイトウィンドウ(Ctrl + G)で Selection.SetPhonetic と入力してEnterキーを押すと、選択セルにふりがな情報が一括生成されます。
加えて、データに半角カタカナが含まれている場合は、全角化を行うJIS関数や、逆に半角へ寄せるASC関数を組み合わせることで表記揺れを事前に防ぐことが可能です。
=PHONETIC(A2)
ふりがな情報が正しくセットされていれば、上記のシンプルな数式だけで狙い通りひらがなの文字列を抽出できるようになります。
【置換機能の限界と活用法】特定のカタカナ語だけを修正するスマートな方法
シート内に存在するごく一部の単語だけを変換したい場合、Excel標準の「検索と置換」(Ctrl + H)を使う選択肢もあります。ただし、カタカナ50音を一文字ずつ手作業で置換していくのは非効率であり、実務上おすすめできません。
置換機能が真価を発揮するのは、「特定の記号や長音符(ー)の処理」「特定の役職名・部署名の一括修正」など対象が限定されているケースです。五十音全体の文字種変換はVBAやWord経由に任せ、変換後に生じた細かな例外処理(アルファベット混在部分や特殊な記号)の微調整に置換機能を充てるのが、最もロスの少ない作業フローです。
【実務の注意点】氏名・住所録データ処理で失敗しないためのチェックポイント
カタカナからひらがなへの変換作業を行う際、予期せぬデータ破損やレイアウト崩れを防ぐために押さえておくべき注意点がいくつか存在します。
第一に、「長音記号(ー)とダッシュ(―)の混同」です。カタカナ名簿をひらがな化すると、「サーバー」が「さーばー」となるように長音符がそのまま残ります。データベースの仕様によっては長音符を嫌うケースもあるため、システム側の要件を事前に確認しておく必要があります。
第二に、「元のセルを直接上書きしない」という鉄則です。マクロ処理やWord経由の貼り付けを行う際は、必ず元データのバックアップ列を残した状態で作業を行い、変換後の件数や文字数に欠落がないかを検証してから本番データへ反映させることが安全運用の基本です。
【excel カタカナ を ひらがな に】に関するよくある質問(FAQ)
Q1:PHONETIC関数を使っても漢字の読み仮名はひらがなになるのに、カタカナだけ変換されません。なぜですか?
A1:漢字セルには入力時の「ひらがな読み情報」が記録されていますが、元からカタカナで入力された文字や外部インポート文字にはその情報がありません。PHONETIC関数はふりがな情報がない場合、セル内の文字をそのまま表示するため、カタカナのまま出力されてしまいます。
Q2:半角カタカナが混ざっているデータも一括でひらがなに変換できますか?
A2:可能です。VBAの StrConv(StrConv(セル, vbWide), vbHiragana) を使用すれば、半角カタカナを全角に変換したうえでひらがな化されます。Wordを経由する方法でも、半角全角を問わず一括でひらがなへ変換されます。
Q3:関数だけでマクロを使わずにカタカナをひらがなにする完全な方法はありますか?
A3:セル内にふりがな情報が存在しない場合、標準ワークシート関数単体で「カタカナ文字列をひらがなへ直接文字種変換する」専用関数はExcelに用意されていません。そのため、事前にふりがな情報を再生成するか、Word経由の変換、あるいはVBAの導入が最も現実的かつ手戻りのない手法となります。
Excelにおける「カタカナからひらがなへの変換」は、一見単純に見えてExcel特有の内部仕様が絡むポイントです。手入力データであればPHONETIC関数で対応できますが、インポートデータやコピペ文字列に対しては機能しません。
定期的な名簿処理や大量データの整備にはVBAのStrConvマクロ、手軽に数回だけ変換したい環境やマクロ制限下ではWord経由の文字種変換といったように、自身の業務環境に最適なアプローチを選択することで、余計なストレスなく作業効率を劇的に高めることができます。