今回は、Excelで便利なBASE関数(ベース)・DECIMAL関数(デシマル)のご紹介です。

BASE関数は指定された基数(底)のテキスト表現に、数値を変換する関数になります。
10進数を別の底のテキスト表現に変換します。 たとえば、2進数の底の2になります。
書式は=BASE(数値, 基数, [最小長])です。
数値、変換する数値を指定します。0以上34359738368(2^53)未満の整数になります。
基数、数値を変換する基数(底)の数値を指定します。2以上36以下の整数になります。
[最小長]、(省略可) 返される文字列の最小文字数です。0以上255以下の整数になります。
引数の解説は下記の表の様になります。

DECIMAL関数は、別の底で表された数値のテキスト表現を底 10(10 進数)に変換します。
書式は=DECIMAL(値, 底)になります。引数は下記の表になります。

実際に操作していった方が理解が出来ると思います。

BASE関数

例1:Excelにデータが入力されています。
「A1」に10の数値が入力されています。「B1」に=BASE(A1,と入力します。
2進数に返還するので、「2」を挿入します。

注意事項
・数値、基数、または最小長が最小値または最大値の制約を外れる場合、エラー値が返されます。
・数値以外の値であるセルの時には、エラー値が返されますよ。
・整数以外の数値を選択して入力すると、小数点は切り捨てられますので注意してくださいね。

例2:下の表を作成します。
「C6」には「C3」の2進数を返します。=BASE(C3,2)
「C7」には「C3」の16進数を返します。=BASE(C3,16)
「C8」には「C3」の2進数を返しつつ7桁まで返します。=BASE(C3,2,7)

DECIMAL関数

DECIMAL関数は、指定された数値の文字列の表現を10進数に変換してくれます。
書式は、=DECIMAL(文字列, 基数)となります。
引数の文字列は変換した文字列を指定します。
基数は整数である必要がありますので2~36までの整数を入力します。(文頭で解説の表を確認)
こちらも実際に行ってみましょう。
「B2」のセルに「2D2H」の文字列を20進数を10進数表記に変換します。
「B3」に=DECIMAL(B1,B2)と入力します。答えは「21257」と反省されます。


上記の例では、20進数で表記されたB2のセルの2D2Hの文字列を、DECIMAL関数で10進数に換えているんですね。

BASE関数・DECIMAL関数 のまとめです。

BASE関数は、10進数表記の数値を、指定した数値または基数の値をn進数表記の文字列に換えてくれる関数でしたよね!
DECIMAL関数は、金額の計算など小数点以下の本当に知りたい値との差を認めたくない場合や、
DOUBLE PRECISION(通常の倍の桁数による数値表現)以上の有効桁数で小数点数を扱いたい場合、
整数での有効な桁数を決めたい場合などに活用することができるんです。
一般的なDECIMALの用途はドルでお金を計算する場合など、小数点以下の値を本当に知りたい値に計算したい場合に利用してくださいね。