[Excel] NUMBERSTRING関数 漢数字に変換します

 Number は数字、String は文字列のことです。
 つまり NUMBERSTRING とは数値を文字列に変える関数なのですが、ただ文字列形式のデータにするのではなく、漢数字に変換するのです。でも数値を漢数字にしたければセルの表示形式を変更するのが手っ取り早いですよね。だから「この関数に使い道あるの?」と訊かれても困りますけど、使い道なんてなくたって面白い。それがエクセルなのです。とりあえず NUMBERSTRING関数であれこれ遊んでみましょー。
 

NUMBERSTRING関数

 NUMBERSTRING関数 を使うときは

NUMBERSTRING(数値,書式)

の形で記述します。この書式には

1:位取り漢数字 2:旧字表記 3:位取りしない漢数字

の3種類あるのですが、それがどんな表示になるのか理解するには実際に試してみたほうが早いです。 [数値] に「 12345 」と指定してどんな変換になるのか見てみましょう。

=NUMBERSTRING(12345,1)

と入力すると「一万二千三百四十五」が返ってきます。これはよく見るタイプの普通の漢数字ですね。次は

=NUMBERSTRING(12345,2)

と入力してみましょー。「壱萬弐阡参百四拾伍」という文字列が返ってきますよー。旧字表記は難しいですねー。今どきこんな漢数字をビジネスの現場で使ったりしたら「ややこしいことするな!」と怒られますよー。ということで次にいきましょー。

=NUMBERSTRING(12345,3)

と入力して戻ってくるのは「一二三四五」という位取りを省いた漢数字です。まあ、仮にこの関数を使う場合は、引数の選択肢としては「 1 」か「 3 」でしょうね。ちなみに、いったんこの関数で漢数字に変えてしまうと、それは文字列なので足したり引いたりすることはできなくなってしまいます。
 

TEXT関数でも同じことができます

 実は TEXT という関数を使っても数値を漢数字に変えることができます。ですが、その引数の指定の仕方はとーっても面倒くさいのです。たとえば「 12345 」を「一万二千三百四十五」に変えようと思ったら

=TEXT(12345,"[DBnum1]G/標準")

と書かなくてはなりません。こんなのいちいち覚えてられないし、やっぱり漢数字に変えるときは TEXT関数より NUMBERSTRING関数を使ったほうが便利ですよ。「いや、セルの表示形式を変えたほうが早いでしょ」と言われちゃあ身も蓋もないんだけどね。
 

位の名前は兆まで

 エクセルで表示される漢数字の位は「兆」までです。残念ながら「京」とか「垓」といった大きな単位は出てこないのです。たとえば「一京」すなわち 10^12 という数値を指定して

=NUMBERSTRING(10^16,1)

と入力すると「一〇〇〇〇兆」と返ってきます。これを知ったときはちょっとがっかりしました。ちなみに「 10^16 」というのは「 10 の 16 乗」という意味の記述ですよ。念のため。 0 が 16 個並んで「一京」てことです。

スポンサードリンク
末尾大型広告
末尾大型広告

コメントをどうぞ

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)