Excelには、数値を漢数字(壱、弐、参…)に変換する便利な機能が備わっています。この記事では、VBAを使って複数のセルの数値をまとめて漢数字に変換する方法をご紹介いたします。大量のデータを一括処理したい場合にも有効です。
目次
サンプルコード
Sub ConvertToKanjiNumbers()
Dim targetCell As Range
' 指定範囲の数値を漢数字に変換して隣の列に出力
For Each targetCell In Range("B3:B8")
targetCell.Offset(0, 1).Value = _
WorksheetFunction.Text(targetCell.Value, "[DBNum1]")
Next
End Sub
コードの解説
1. Range("B3:B8")
変換対象とするセル範囲を指定しています。必要に応じて任意の範囲に変更可能です。
2. targetCell.Offset(0, 1).Value
変換結果を元のセルの右隣の列に出力します。Offset(0, 1)
の部分を変更することで、出力先を自由に調整できます。
3. WorksheetFunction.Text(..., "[DBNum1]")
ExcelのTEXT
関数をVBAから呼び出し、[DBNum1]
の書式コードを使って漢数字に変換します。
この[DBNum1]
は、日本語環境のExcelで利用可能な特殊書式コードです。
実行結果のイメージ
元の数値 | 漢数字 |
---|---|
123 | 百二十三 |
45 | 四十五 |
7 | 七 |
3005 | 三千五 |
まとめ
WorksheetFunction.Text
と[DBNum1]
を使うことで、数値を簡単に漢数字に変換できます。- VBAを使えば、複数セルのデータを一括で変換可能です。
- 出力先を
Offset
で自由にコントロールできるため、元のデータを残したまま変換結果を確認できます。
大量の請求書番号や金額を漢数字表記にしたい場合など、実務でも役立つテクニックです。