螺旋を描いて…

螺旋 のごとく続く毎日を綴ります

ARABIC・関数の思い出・67…

以前、「ROMAN」という関数を紹介しました。

kiha-gojusan-hyakusan.hatenablog.com

 

その逆の変換を行うのが、「ARABIC」関数です。

 

例えば、「CLXVII」を指定すると、「167」が返ります。

100(C)+50(L)+10(X)+5(V)+2(II)、ですね。

 

この上は、Dが500、Mが1,000を表すそうです。

また、前に書くと、マイナスを表しますね。

「IV」だと、5-1で4になります。

 

一応、ローマ数字は1,000以上を表す表現が出来るそうですが、一般的ではないので、そこまでは対応していないそうです。

ただし、255文字まで対応するので、Mを255文字連ねて、255,000が最大だそうです。

1文字目を「I」にすれば、244,999が表せますが、その下の244,998は…

実は文字数がオーバーするので、表すことが出来ません。

なので、255,000までの全ての数が表せるわけでは、ないようです。

 

なお、逆の「ROMAN」関数では…

4,000以上の数値を指定すると、エラーになる仕様。

244,999のローマ字表記を出力するのには、マクロが要りそうですね。

 

 

次は「」です

 

 

前は「COUNTBLANK」です

kiha-gojusan-hyakusan.hatenablog.com