ExcelでフリガナをふるPHONETIC関数&フリガナが表示されないときのマクロ

  • URLをコピーしました!

Excelでフリガナをふるときには、関数を使うと便利です。

フリガナがないデータもありますので、そのときには、マクロを使います。

IMG_5663

※品川のカフェにて iPhone 7 Plus

 

ExcelでフリガナをふるPHONETIC関数

こういった名簿があったときに、フリガナをふって、あいうえお順に並べられると便利です。

 

EX-IT_No-00

 

最近も活用しました。
私は、この方法で、セミナーやオフ会の名簿を作っています。

Evernoteに貼り付け、iPhoneのCheckEverで開けば、iPhone上でチェックができるのです。
ただ、人数が多いと、すばやくチェックできません。
あいうえお順に並べておくと、便利です。

 

Excelでフリガナを表示して確認したいなら、範囲を指定してAlt→H→G→Enter(Alt、H、G、Enterと1つ押す)でこのように表示できます。

EX-IT_No-01
フリガナを修正するなら、そのセルでAlt+Shift+↑(AltとShiftと↑を同時に押す)で、編集できるようになります。

EX-IT_No-07

別のセルにフリガナを表示して並べ替えたいときは、関数を使いましょう。
フリガナが正しくふられていないときにも修正ができます。
使うのはPHONETIC関数です。

セルB1に入力して、セルの右下をダブルクリックすれば、

EX-IT_No-02

すべてのデータにふりがなが表示されます。

このフリガナを修正して並べ替えるようにすれば確実です。

EX-IT_No-03

 

フリガナがないデータ

ただ、Excelのデータで、フリガナがない場合もあります。

その場合は、フリガナを表示する操作をしても何も出てきませんし、

EX-IT_No-08

PHONETIC関数を使っても、漢字がそのまま表示されるだけです。
EX-IT_No-04

 

「別のソフトからデータをコピーしてきた場合」
にこういったことが起こります。

 

たとえば、
・Googleフォームで登録したデータ
・その他フォームで入力してもらったデータ
・サイトからダウンロードしたデータ
などは、フリガナが入っていないことがあるので注意しましょう。

 

もちろん、自分でフォームを作るなら、フォーム入力時にフリガナを入力してもらう手もあります。
(私はできるだけ必要最低限の入力項目にしたいので、フリガナ入力欄を作っていません)

 

フリガナをふるマクロ

 

Alt+Shift+↑でフリガナをふることはできますが、1つずつ操作しなければいけません。

フリガナを一括してふるには、マクロが必要です。

最もシンプルなのは、このマクロ。
選択した部分にフリガナをふります。

Sub sethurigana()

 Selection.SetPhonetic

End Sub

 

Selectionが選択した部分
SetPhoneticがフリガナをふるという意味です。
なんとなく、前述したPHONETIC関数と似ています。

EX-IT_No-06

※もっとシンプルにやるなら、
Excelでフリガナをふる範囲を選択

ExcelでAlt+F11を押し、VBE(マクロを書くソフト)を表示し、

VBEでCtrl+Gでイミディエイトウィンドウを開く

イミディエイトウィンドウに    Selection.SetPhoneticと入れてEnter

で実行できます。

 

 

ただ、これらの場合、A列にフリガナをふるだけですので、B列に表示させるには、ExcelでPHONETIC関数を入れなければいけません。

マクロでPHONETIC関数を入れる方法もありますが、よりスムーズにやるなら、こういったプログラムを書きます。

Application.GetPhoneticがフリガナをふるという意味で、B列にA列のフリガナをふるという命令を1行目から11行目まで繰り返すという意味です。

Sub gethurigana()

 Dim i
 For i = 1 To 11
  Range("b" & i).Value = Application.GetPhonetic(Range("a" & i).Value)
 Next

End Sub

 

より実践的に書くなら、こうすると、Range(“a” & Rows.Count).End(xlUp).Rowで、データの数を数えて、その分だけ指示を繰り返してくれます。

Sub gethurigana2()

 Dim i
 For i = 1 To Range("a" & Rows.Count).End(xlUp).Row
  Range("b" & i).Value = Application.GetPhonetic(Range("a" & i).Value)
 Next

End Sub

 

Excelでフリガナをふりたいとき、フリガナがふれないときに活用していただければ。
マクロについては、こちらの記事に使い方をまとめています。

 

 


【編集後記】

昨日は木更津トライアスロン(スイム1.5 バイク40 ラン10㎞)。

去年に続いて2度目の参加です。

両国駅からサイクルトレインという特別列車が出ており、トライアスロンバイクを積んで日帰りで行けます。

スイムは調子よかったのですが、暑さにやられたのか、バイクのラスト5㎞でペースダウン、ランも今一つでした。

今シーズンは次の10/1東扇島(川崎)でラストです。

 

【昨日の1日1新】

※詳細は→「1日1新」

木更津トライアスロンにサイクルトレインで参加

木更津 宮の湯

自宅から両国までトライアスロンバイクで

 

【昨日の娘日記】

トライアスロン後、帰ってきてお風呂に間に合いました。

(遅くとも20時までに入れるようにしています)

風呂の後は、お互い撃沈。

  • URLをコピーしました!