Excelマクロでふりがなを一括で後付けする方法
エクセルで漢字データにルビ・フリガナを付けることは、日本語の文書作成において重要です。本記事では、ふりがなを一括で後付けするExcelマクロの使い方とその意義を詳しく解説していきます。
これから作るマクロの意義
これから作成するマクロには「AddRubyToText」と名前を付ける予定です。「AddRubyToText」は、ExcelのVBAマクロを使用して、漢字データにふりがなを自動的に付けることができるツールです。ユーザー定義関数では限界があるため、マクロを使用してふりがなを付けることができます。このマクロは、漢字とふりがなが別々のセルに入力されている場合に、ふりがな付きの漢字データを作成するのに適しています。
マクロのVBAコード
次の「マクロの使い方」を参考に、ブックへマクロのVBAコードを登録します。
Sub AddRubyToText()
Dim srcRange As Range
Dim rubyRange As Range
Dim destCell As Range
Dim srcCell As Range
Dim rubyCell As Range
Dim destWorksheet As Worksheet
Dim i As Long
Dim kanjiLen As Integer
Dim kanaLen As Integer
' ユーザーに漢字データ範囲を指定させる
On Error Resume Next
Set srcRange = Application.InputBox("漢字データが入力されている範囲を選択してください。", Type:=8)
On Error GoTo 0
If srcRange Is Nothing Then Exit Sub
' ユーザーにふりがなデータ範囲を指定させる
On Error Resume Next
Set rubyRange = Application.InputBox("ふりがなデータが入力されている範囲を選択してください。", Type:=8)
On Error GoTo 0
If rubyRange Is Nothing Then Exit Sub
' ユーザーに出力開始セルを指定させる
On Error Resume Next
Set destCell = Application.InputBox("出力するセルを選択してください。", Type:=8)
On Error GoTo 0
If destCell Is Nothing Then Exit Sub
Set destWorksheet = destCell.Worksheet
' 漢字データとふりがなデータを結合して出力セルにコピー
For i = 1 To srcRange.Rows.Count
Set srcCell = srcRange.Cells(i, 1)
Set rubyCell = rubyRange.Cells(i, 1)
kanjiLen = Len(srcCell.Value)
kanaLen = Len(rubyCell.Value)
With destWorksheet.Cells(destCell.Row + i - 1, destCell.Column)
.Value = srcCell.Value
.Characters(1, kanjiLen).PhoneticCharacters = rubyCell.Value
.Phonetics.Visible = True
End With
Next i
End Sub
マクロの使い方
「AddRubyToText」マクロを使用する手順は以下の通りです。
- エクセルのVBAエディタを開き(Alt+F11)、「挿入→標準モジュール」へ「AddRubyToText」マクロを挿入します。
- エクセルに戻り、漢字データとふりがなデータが入力されている範囲を指定します。
- 出力先のセルを指定し、マクロを実行します。
- ふりがな付きの漢字データが出力されます。
使用例
例として、以下のようなデータが入力されているとします。
A列 | B列 |
---|---|
BACCHESS平塚 | バッチェス ヒラツカ |
BACCHESS川崎 | バッチェス カワサキ |
BACCHESS横浜 | バッチェス ヨコハマ |
上記のデータを使って、以下の手順でふりがな付きの漢字データを作成します。
- 「AddRubyToText」マクロを挿入したエクセルファイルを開きます。
- エクセルの「開発」タブから「マクロ」を選択し、「AddRubyToText」を実行します。
- 出現するダイアログボックスで、漢字データが入力されている範囲(この例ではA1:A3)を指定し、「OK」をクリックします。
- 次に表示されるダイアログボックスで、ふりがなデータが入力されている範囲(この例ではB1:B3)を指定し、「OK」をクリックします。
- 最後に出力先のセルを指定します(この例ではC1:C3)。
- 指定した出力先セルにふりがな付きの漢字データが生成されます。
以上の手順で、以下のようなふりがな付きの漢字データが作成されます。
C列 |
---|
BACCHESS平塚(バッチェス ヒラツカ) |
BACCHESS川崎(バッチェス カワサキ) |
BACCHESS横浜(バッチェス ヨコハマ) |
4. まとめ
「AddRubyToText」マクロは、Excelでふりがな付きの漢字データを簡単に作成するための便利なツールです。ユーザー定義関数では限界があるため、このマクロを活用することで効率的にふりがなデータを作成できます。ぜひ、日々の業務で活用してみてください。
コメント