Excelで請求書や見積書を作成する機会は多い。そんなとき、合計金額を漢数字で表示したいこともあるだろう。Excelは、セル内の文字方向を縦書きにできるなど日本的な味付けもされているアプリケーションだが、しょせんはアメリカ生まれ、数字を漢数字で表示する機能は持っていないだろうと誤解しているユーザーが実に多い。あまり知られていないが、Excelには数値を漢数字で表示する機能も用意されている。

 まずはセルの表示形式で実現する方法。これにはユーザー定義書式を使う。指定する書式は[DBNum]という形式だ。セルに「123」という数値が入力されているとき、[DBNum1]を指定すると「百二十三」と表示される(図1、2)。[DBNum2]は「壱百弐拾参」となり、[DBNum3]なら百2十3となる。セルの表示形式は名前のとおり表示上の形式なので、セルの値をそのまま計算に使うことも可能だ。なお、「セルの書式設定」ダイアログボックスを表示するには、[Ctrl]キーを押しながら「1」キーを押す。

図1 セルの表示形式で「ユーザー定義」を選択し[DBNum1]と指定する
図2 数字が漢数字で表示される

 ワークシート関数で変換する方法もある。NUMBERSTRING関数がそれだ。D2セルに「123」が入っているとき、=NUMBERSTRING(D2,1)で「百二十三」が返る(図3)。NUMBERSTRING関数の第二引数には1から3の数字を指定することができ、=NUMBERSTRING(D2,2)で「壱百弐拾参」が、=NUMBERSTRING(D2,3)で「一二三」が返る。表示形式と違いNUMBERSTRING関数の返値は、値のみを複写することで漢数字を文字列としてコピーすることもできる。

図3 関数で漢数字に変換する

 NUMBERSTRING関数は、MS-DOS版の表計算ソフトとデータの互換性を保つために用意された関数なので、数式オートコンプリートには表示されない。