各セルに入力したデータは、漢字変換する前の「読み」が「ふりがな」として記録される仕組みになっている。この「ふりがな」を文字列データとして取得する関数がPHONETICだ。また、これに関連する話として、「ふりがな」を自動設定する方法、ならびに氏名を「ローマ字表記」に自動変換する方法について紹介していこう。
「ふりがな」と並べ替え
Excelは「漢字を含む日本語」も正しい50音順に並べ替えることができる。この土台となっているのが、各セルに記録されている「ふりがな」だ。今回は、この「ふりがな」を文字列データとして取得する関数PHONETICの活用方法、ならびに指名を「ローマ字表記」に自動変換する方法について紹介していこう。
まずは、「ふりがな」の基本操作を手短に紹介しておく。各セルに記録されている「ふりがな」を表示するときは、それらのセルを選択した状態で「ふりがなの表示/非表示」をクリックすればよい。
すると、以下の図のように「ふりがな」が表示される。文字が小さくて見にくい場合は、ワークシートの表示倍率を拡大すると「ふりがな」の文字が読みやすくなる。
データを「昇順」で並べ替えたときは、この「ふりがな」を基準にデータの並べ替えが行われる。よって、「漢字を含む日本語」であっても正しい50音順に並べ替えることが可能だ。
ただし、間違った「読み」で漢字変換していた場合は、その「読み」がそのまま「ふりがな」として記録されるため、正しい50音順にならない。このため、状況によっては「ふりがな」の確認が必要になるケースもある。
「ふりがな」を取得する関数PHONETIC
各セルに記録されている「ふりがな」は前述した手順で確認できるが、文字が小さくて視認性に欠ける、という欠点がある。このような場合に活用したいのが、「ふりがな」を文字列データとして取得する関数PHONETICだ。使い方は、カッコ内にセル参照を指定するだけ。
「Enter」キーを押して関数PHONETICを実行すると、以下の図のような結果が得られる。
続いて、この関数をオートフィルでコピーすると、各セルの「ふりがな」を見やすく表示することが可能となる。これで「ふりがな」の確認作業を効率化できるはずだ。
そのほか、関数PHONETICによる「ふりがな」の取得は、
・データをCSV形式で保存する場合
・ExcelのPower Queryを使用する場合
などにも活用できる。データをCSV形式で保存すると、各セルの「書式」や「ふりがな」が破棄され、データだけがファイルに保存される仕様になっている。Power Queryにデータを読み込んだ場合も同様だ。この場合、「ふりがな」が削除されてしまうため、「漢字を含む日本語」を正しい50音順に並べ替えることが不可能になってしまう。
こういったトラブルを回避するには、関数PHONETICを使って「フリガナ」の列を用意しておくとよい。すると、「フリガナ」の列で正しい50音順に並べ替えられるため、データ移行後も問題なく処理を進められるようになる。
「ふりがな」を自動設定するには?
続いては、「CSVファイルから読み込んだデータ」や「コピー&ペーストにより入力したデータ」を扱うときに役立つテクニックを紹介していおこう。こういったデータは漢字変換前の「読み」がないため、「ふりがな」が存在しないデータになる。当然ながら、正しい50音順に並べ替えることも不可能となる。
正しい50音順に並べ替えるには「ふりがな」を手作業で補完しなければならない。とはいえ、これは大変な作業になるはずだ。そこで「フリガナ」を自動設定する方法を紹介しておこう。この作業にはVBAを使用するが、わずか1行程度の記述なので初心者でも問題なく作業を進められるだろう。
VBAを使用するには「開発」タブを表示しておく必要がある。Excelの画面に「開発」タブが見当たらない場合は、以下のように操作すると「開発」タブを表示できる。
(1)「ファイル」タブを選択し、「オプション」をクリックする
(2)「リボンのユーザー設定」を選択し、「開発」のチェックボックスをONにする
(3)「OK」ボタンをクリックする
それでは、「ふりがな」を自動設定する方法を紹介していこう。「ふりがな」を設定するセル範囲を選択し、「開発」タブにある「Visual Basic」をクリックする。
VBAの操作画面が表示されるので、「表示」→「イミディエイトウィンドウ」を選択して「イミディエイト」ウィンドウを表示する
「イミディエイト」ウィンドウを表示できたら、ここに「Selection.SetPhonetic」と入力して「Enter」キーを押す。
以上で「ふりがな」の自動設定は完了となる。VBAの操作画面を閉じて、「ふりがなの表示/非表示」をクリックすると、選択していたセルに「ふりがな」が自動設定されているのを確認できるはずだ。
ただし、パソコンが保有している辞書にもとづいて機械的に設定される「ふりなが」となるため、必ずしも正しい「ふりがな」が設定されているとは限らない。むしろ、氏名などのデータは少なからずの“読み間違い”があるのが普通だ。よって、「ふりがな」を確認しておく必要がある。この場合にも関数PHONETICが活用できる。
上図のように関数PHONETICで「ふりがな」を取得しておくと、「ふりがな」の文字が読みやすくなり、確認作業をスムーズに進められる。もしも「ふりがな」に間違いが見つかった場合は、その元データ(漢字表記の氏名)を選択し、「ふりがなの表示/非表示」→「ふりがなの編集」を選択する。これで「ふりがな」を修正できるようになる。
このような手順で「ふりがな」が存在しないデータに「ふりがな」を自動設定することも可能だ。ただし、データが氏名の場合は「どう読むのが正解なのか判断できない・・・」といった問題が発生する恐れがある。
たとえば、「新城」を「シンジョウ」と読むのか、それとも「アラシロ」と読むのか、といった問題は、その人物のことを知っていない限り、判断不可能な問題になってしまう。よって、根本的な問題解決には至らないケースもある。
ここで紹介したテクニックは、「ふりがな」を機械的に自動設定して手間を省略する方法、と捉えておくのが基本だ。必ずしも正しい「ふりがな」が設定されるとは限らない、ということを認識しておく必要がある。
ローマ字表記を追加するには?
海外とデータをやり取りする場合などに、氏名の「ローマ字表記」が必要になるケースもあるだろう。この場合も、ローマ字を1件ずつ手作業で入力していくのは大変な作業になる。そこで「ローマ字表記」の入力を簡略化するテクニックを紹介しておこう。
まずは「ローマ字表記」に自動変換するセル範囲を選択する。続いて、「校閲」タブを選択し、「翻訳」をクリックする。
画面の右側に「翻訳ツール」が表示されるので、翻訳先の言語に「英語」を指定する。すると、選択したセル範囲が英語に機械翻訳され、氏名を「ローマ字表記」に変換した結果が表示される。あとは、この結果をコピー&ペーストするだけだ。
ただし、普通にコピー&ペーストすると、コピーしたデータがすべて「1つのセル」に貼り付けられてしまい、求めている結果にはならない。よって、以下に示した手順で、いちどテキストエディターを経由する必要がある。
(1)翻訳結果をドラッグして選択し、「Ctrl」+「C」キーでコピーする
(2)「メモ帳」などのテキストエディターを起動する
(3)「Ctrl」+「V」キーを押して、コピーしたデータを貼り付ける
その後、以下のように操作すると、「ローマ字表記」をまとめてExcelに貼り付けることができる。
(4)テキストエディターに貼り付けた文字を選択し、「Ctrl」+「C」キーでコピーする
(5)貼り付け先(Excel)の先頭セルを選択する
(6)「Ctrl」+「V」キーを押して、コピーしたデータを貼り付ける
このような手順で氏名の「ローマ字表記」を入力していくことも可能だ。ただし、こちらも機械翻訳を利用しているため、必ずしも正しい「ローマ字表記」になるとは限らない。上図に示した例の場合、
・「谷川」が「Tanikawa」になっている
・「外崎」が「Sotozaki」になっている
などのミスが見受けれらる。これらのミスは手作業で修正しなければならない。
なお、こういったミスを少なくするために、「ふりがな」のデータを使って翻訳すれば・・・、と考える方もいるだろう。しかし、これは上手くいかないケースが多い。試しに、カタカナ表記の「ふりがな」を翻訳した例を紹介しておこう。
上図をよく見ると、
・「ショウ」が「Shaw」(英語の人名)に翻訳されている
・「トオル」が「Tooru」というローマ字表記になっている
・「MOTOMIYA」(モトミヤ)がすべて大文字になっている
・「マルモ」が「Malmo」という表記になっている
・「名→姓」または「姓→名」の順番が統一されていない
といった不具合が生じているのを確認できる。これだけミスが多いと、自動化のメリットをあまり感じられないだろう。よって、漢字表記の「氏名」をそのまま翻訳した方が「正しいローマ字」になる可能性が高いといえる。
とうことで、今回は「ふりがな」と「ローマ字表記」に関するテクニックを紹介した。関数(PHONETIC)の活用方法から少し話が逸れてしまった部分もあるが、氏名データを扱うときに“少しは使えるテクニック”として参考にして頂ければ幸いだ。