Excelでは、ひらがなで入力した漢字に「ふりがな」を振るときは「PHONETIC(フォネティック)関数」を使いますが、他のソフトからコピペした漢字に「ふりがな」を振るには有効ではありません。
なぜかというと、Excelでひらがなで入力すると、その情報がExcelに渡されます。
たとえば、Aの欄、上から「おおかがみ」「ふじわらのみちなが」「せっしょう」「かんぱく」と入力して漢字変換します。
これはふりがなの情報がExcelに記録されているからです。
別のソフトからコピペした漢字は、Excelに「入力するふりがなの情報」は記録されていませんので、「PHONETIC関数」は無効になるのです。
そこで、他の方法で「ふりがな」を振る方法はないものかと探りました。
普段の作業ではなじみのない「Visual Basic」を使って「ふりがな」を振るという方法を見つけました。
では、やってみます。
次表は、Wordからコピペした漢字です。
開発-「Visual Basic」を開きます。
これはVBE(Visual Basic Editor)といいます。
初めて開いた方は、何も記述ができない状態かと思います。
「表示」-「コード」
記述ができるようになります。背景色は白になっていると思います。
背景色がすべて白では見にくいと思いますので自分用に変えてみてもいいと思います。
画面の背景色や文字色などを変更できるのは、「シンタックスハイライト」という機能で、VBEには備わっています。
シンタックスハイライトとは、テキストエディタなどの文字表示に関する機能の一つで、あらかじめ指定された文中の特定の記号やキーワードなどを他とは異なる色で表示すること。色を変える以外にも、異なるフォントを用いたり、太字や斜体、下線などの装飾を施す場合もある。
IT用語辞典 e-Words
「ツール」-「オプション」をクリックします。
オプションウィンドウが開いたら、エディターの設定タブを選択してください。
ここで、「コードの表示色」について「前景」、「背景」、フォントやサイズなどを設定できます。
それらは右下のサンプルを見ると確認できます。
いろいろ設定できるようですが、ここでは省略させていただきます。
この画面の設定は次のとおりです。
標準コード 前景:黄色 背景:黒
キーワード 前景:水色 背景:黒
識別子 前景:白色 背景:黒
フォント:メイリオ(日本語)
サイズ:14ポイント
寄り道してしまいました。
ここから本題に入ります。
コードウィンドウに以下の9行を貼り付けてください。
1 2 3 4 5 6 7 8 9 |
Sub フリガナ取得() Dim i As Long i = 2 Do Until Cells(i, 2) = "" Cells(i, 3) = Application.GetPhonetic(Cells(i, 2)) Cells(i, 3) = StrConv(Cells(i, 3), vbHiragana) i = i + 1 Loop End Sub |
簡単に説明しますと、2行目B列が空白になるまでループを回す
セルの各行の3、つまりC列に値を入れる
値は「GetPhonetic」が拾ってくる
「GetPhonetic」は「Application」のメソッドなのでピリオドでつなぐ
セルの各行B列の値を見てフリガナを作成する
貼り付けて実行すると
続けて、実行をクリックします。
「ファイル」-「終了してMicrosoft Excelへ戻る」をクリックします。
Excelへ戻りました。
ふりがなの誤字には目をつむり、表題にある「他のソフトからコピペした漢字にふりがなを振る」ができました。
Visual Basicは難しくて縁がないと思っていましたが、こういう使い方があるのだと身近に感じました。
公式のようにそのまま覚えることにします。