ExcelのLOG10関数の使い方|常用対数を求める基本と実務活用

スポンサーリンク

Excelで「10を底とする対数(常用対数)」を求めたいとき、どうすればいいか迷ったことはありませんか。

科学計算やデータ分析をしていると「対数スケール」や「桁数の計算」が必要になる場面がありますよね。手で計算するのは大変ですし、間違いやすいものです。

そんなときに使えるのがExcelの LOG10関数 です。引数は1つだけ、書き方もシンプルなのに、桁数算出からデシベル計算まで幅広く使えます。

この記事では、LOG10関数の基本的な書き方から実務で役立つ7つの活用パターンまで解説します。よくあるエラーと対処法、似た関数(LOG・LN)との使い分けもあわせて紹介していきますね。

ExcelのLOG10関数とは?

LOG10関数は、10を底とする対数(常用対数) を返す関数です。

読み方は「ログテン」です。関数名は「LOG(対数を意味する Logarithm の略)」に底の「10」を付けた形になっています。

たとえば =LOG10(1000) と入力すると、結果は 3 になります。これは「10を3回かけると1000になる(10 × 10 × 10 = 1000)」ことを意味します。

常用対数は、実は日常生活でもなじみ深いものです。デシベル(音の大きさ)、pH(水溶液の酸性度)、地震のマグニチュードなどは、すべて常用対数がベースになっていますよ。

LOG10関数で何ができる?

LOG10関数を使うと、次のようなことが可能になります。

  • 数値の 桁数 をすばやく求める
  • 音圧比や電力比を デシベル(dB) に変換する
  • 売上データのように 桁が大きく違う値 を比較しやすく整える
  • 複利計算で 目標到達までの年数 を逆算する
  • 化学・科学データの pH や水素イオン濃度 を計算する

「対数」と聞くと身構えてしまいますが、実は実務でも結構使い道がある関数なんです。

ExcelのLOG10関数の書き方(構文と引数)

基本構文

=LOG10(数値)

引数は 1つだけ です。底を指定する引数はありません。常用対数に特化したシンプルな関数になっています。

引数の説明

引数必須/省略可説明
数値必須対数を求めたい正の実数を指定します

引数には、次のいずれも指定できます。

  • セル参照(例: A1
  • 数値リテラル(例: 1000
  • 数式の結果(例: B2/B1

注意点もまとめておきます。

  • 0以下の値を指定すると #NUM!エラー になります
  • 数値以外のテキストを指定すると #VALUE!エラー になります
  • 空白セルを指定した場合は 0 として扱われ、結果は #NUM! エラーになります

LOG10関数の基本的な使い方

実際にLOG10関数を使ってみましょう。よく使うパターンを3つ紹介します。

数値を直接指定する

=LOG10(1000)

結果は 3 です。10の3乗が1000だからですね。

セル参照で指定する

=LOG10(A1)

A1セルの値の常用対数を返します。データが変わると結果も自動で更新されるので便利ですよ。

数式の結果を引数にする

=LOG10(B2/B1)

B2 と B1 の比率の常用対数を求めます。後ほど紹介するデシベル計算で使うパターンです。

主な入力値と結果の早見表

覚えておくと便利な値をまとめました。

入力値LOG10の結果意味
1010の0乗 = 1
10110の1乗 = 10
100210の2乗 = 100
1000310の3乗 = 1000
1000000610の6乗 = 100万
0.1-110の-1乗 = 0.1
0.01-210の-2乗 = 0.01

10のきれいなべき乗なら整数が返ります。それ以外の値では小数が返りますよ。

たとえば =LOG10(2) は約 0.30103、=LOG10(5) は約 0.69897 です。「LOG10(2) + LOG10(5) = LOG10(10) = 1」のように、対数の和は積の対数になる関係も成り立ちます。

LOG10関数の実務活用パターン

LOG10関数は「教科書の中だけの関数」ではありません。実務で役立つ場面を7つ紹介します。

1. 数値の桁数を求める

データの桁数を調べたいときに使えるテクニックです。

=INT(LOG10(A1)) + 1

たとえば A1 に 12345 が入っている場合、LOG10(12345) は約 4.09 になります。INT関数(小数点以下を切り捨てる関数)で 4 にしてから 1 を足すと 5桁 と求まります。

仕組みはシンプルです。「10の何乗か」が桁数 – 1 と一致するため、対数を取って切り捨て、1 を足すだけで桁数になります。大量の数値データの桁数をまとめてチェックしたいときに重宝しますよ。

ただし、この式は 正の整数 を前提にしています。0や負の数、小数を含む場合は IFERROR を組み合わせて防御するのがおすすめです。

=IFERROR(INT(LOG10(ABS(A1))) + 1, 0)

ABS関数で絶対値に変換しておくと、負の数の桁数も求められます。

2. デシベル計算(音圧比・電力比)

音の強さや電力比をデシベル(dB)で表す計算にもLOG10関数を使います。

電力比のデシベルは次の式で求めます。

=10 * LOG10(A2/A1)

A1 を基準値、A2 を測定値とすると、dB(デシベル)単位での比率が求まります。たとえば A1 が 1、A2 が 100 のとき、結果は 20dB です。

音圧や電圧のデシベルは係数が 20 になります。

=20 * LOG10(A2/A1)

「電力は 10 倍、音圧・電圧は 20 倍」と覚えておくとミスを防げます。

3. pH(水素イオン濃度指数)の計算

化学のデータを扱う場面では、水素イオン濃度(mol/L)から pH を求めることがあります。

=-LOG10(A1)

A1 に水素イオン濃度(モル濃度)を入れると、その液体の pH が返ります。たとえば 1×10^-7 mol/L なら pH は 7(中性) です。

pH の定義そのものが「水素イオン濃度の常用対数の符号反転」なので、LOG10 関数だけでそのまま計算できます。

4. 桁の違うデータをグラフで比較する

売上データのように 1 万円から 1 億円まで幅があるデータは、そのままグラフにすると小さい値がつぶれてしまいますよね。

=LOG10(A1)

対数に変換してからグラフを作ると、桁の違うデータでもバランスよく可視化できます。Excel のグラフで「軸の書式設定 → 対数目盛を表示する」を使うのと同じ考え方です。

データそのものを対数変換しておくと、線形目盛のグラフでもそのまま使えます。そのため、PowerPoint に貼り付けたときの見た目を整えやすくなりますよ。

5. 目標達成に必要な年数の計算

複利計算で「元本が目標額に届くまで何年かかるか」を求める式にも LOG10 が登場します。

=LOG10(目標額/元本) / LOG10(1+年利)

たとえば元本 100 万円、年利 5% で 200 万円に到達する年数は次の式になります。

=LOG10(2) / LOG10(1.05)

結果は約 14.2 年 です。「72 の法則」(72 ÷ 年利% で倍増年数を概算する)と近い値が出ますね。

6. 地震のマグニチュード差からエネルギー比を逆算する

マグニチュード(M)が 1 大きくなると、地震のエネルギーは約 32 倍になると言われています。

逆に「エネルギー比からマグニチュード差を求める」場面では、LOG10 が使えます。

=LOG10(エネルギー比) / 1.5

たとえばエネルギー比が 1000 倍のとき、マグニチュード差は LOG10(1000)/1.5 = 3/1.5 = 2 と算出されます。防災資料の整理でたまに登場する計算です。

7. 大きな数値の対数スケール表示用ラベル

縦軸を「1, 10, 100, 1,000, 10,000」のように対数スケールで表示するラベルを作るときも便利です。

=10^A1

A1 に 0, 1, 2, 3 と入力した列を用意すれば、隣の列に 1, 10, 100, 1000 が並ぶラベルが作れます。逆に「数値からスケール上の位置」を出すときは LOG10 を使います。

=LOG10(A1)

ダッシュボード作成時に重宝するパターンです。

LOG10関数でよくあるエラーと対処法

LOG10関数で発生しやすいエラーは大きく分けて2種類です。原因と対処法を整理しました。

エラー主な原因対処法
#NUM!0または負の数を指定したIF関数で事前チェック / ABS関数で絶対値化
#VALUE!数値以外のテキストを指定したISNUMBER関数で事前チェック / 入力値を見直す
#NAME?関数名のスペルミス(LOG10の0を抜かす等)LOG10と正しく入力する

#NUM!エラー

原因: 数値に 0 または負の値を指定した場合に発生します。

対数は正の数に対してのみ定義されるため、0以下は計算できません。

対処法: IF関数で事前チェックしましょう。

=IF(A1>0, LOG10(A1), "入力エラー")

A1 が 0 より大きいときだけ計算し、それ以外は「入力エラー」と表示します。

絶対値で対数を取りたい場合は ABS関数を組み合わせます。

=IF(A1<>0, LOG10(ABS(A1)), "入力エラー")

#VALUE!エラー

原因: 数値にテキストが入っている場合に発生します。

対処法: ISNUMBER関数(値が数値かどうかを判定する関数)で事前にチェックします。

=IF(ISNUMBER(A1), LOG10(A1), "数値を入力")

数値が文字列として入っているケースも多いです(例: 列のセル書式が「文字列」になっている)。データの取り込み元も合わせて確認するとミスを減らせます。

IFERRORで一括ガードする方法

複数のエラー要因をまとめて吸収したい場合は、IFERROR を使うのが一番簡単です。

=IFERROR(LOG10(A1), "入力値を確認")

#NUM! でも #VALUE! でも、まとめて「入力値を確認」と表示できます。レポート資料など、エラーをそのまま見せたくない場面で便利ですよ。

LOG10関数と似た関数との違い・使い分け

Excelには対数を求める関数が複数あります。違いを整理しておきましょう。

関数用途使用例
LOG1010(固定)常用対数桁数計算、デシベル、pH
LOG任意(省略時は10)汎用対数底を変えたい場合
LNe(自然対数の底)自然対数連続複利、成長率

使い分けのポイント

選び方は次の3つで判断できます。

  • 底が 10 なら LOG10 が一番シンプルです
  • 底を自由に変えたいなら LOG関数 を使います(例: 底2の対数を求めたい)
  • 自然対数が必要なら LN関数 の出番です(例: e を底にした連続複利)

=LOG10(x)=LOG(x, 10) は同じ結果を返しますが、LOG10 のほうが短く書けるのでおすすめですよ。底を引数に書く必要がなく、入力ミスも減らせます。

LOG10の逆演算は「10のべき乗」

LOG10 で対数にした値を元に戻すには、10 のべき乗 を使います。

=10^LOG10(A1)

または POWER 関数を使う方法もあります。

=POWER(10, LOG10(A1))

どちらも結果は A1 の値そのものに戻ります。「対数 → 元の値」の変換は、データ可視化のあとに元の単位に戻したいときに役立ちますよ。

なお、自然対数 LN の逆演算は EXP 関数です。LOG10 の逆演算には EXP関数は使えないので注意してください。底が違うので結果が変わってしまいます。

LOG10関数を使うときの注意点

ここまでの内容を踏まえて、実務で気をつけたいポイントをまとめておきます。

引数は必ず正の数にする

繰り返しになりますが、LOG10 関数は正の数しか扱えません。0 や負の数が混ざる可能性のあるデータは、必ず IF または IFERROR でガードしましょう。

表示桁数と実際の値のズレ

LOG10(2) などの結果は無理数なので、Excel の表示桁数によっては丸められます。「合計が合わない」と感じたときは、セルの書式を「数値・小数点以下15桁」に変えて実際の値を確認すると原因がわかります。

単位の入った数値はあらかじめ数値化する

「123 個」のように単位付きで入力された数値は、文字列扱いになっていて #VALUE! エラーになります。VALUE関数や置換機能で数値だけを取り出してから LOG10 に渡してください。

LOG10と数式の組み合わせは括弧で明示する

=10 LOG10(A2/A1) のような式では、LOG10 の優先順位が高いため意図通りに動きます。とはいえ、可読性のために =10 (LOG10(A2/A1)) のように括弧で明示しておくと、後から見直したときに迷いません。

まとめ

LOG10関数は、Excelで常用対数(10を底とする対数)を求めるための関数です。

この記事のポイント を振り返ってみましょう。

  • 構文は =LOG10(数値) で、引数は1つだけ。底を指定する必要はない
  • 桁数の計算、デシベル計算、pH 計算、対数スケールでのデータ比較など、実務でも活用できる場面は多い
  • 0以下の値を指定すると #NUM! エラー、テキストを指定すると #VALUE! エラーになるので、IF関数や IFERROR関数での事前チェックがおすすめ
  • LOG関数・LN関数との違いは「底」の値。底が10なら迷わずLOG10を選ぶのが一番シンプル
  • 逆演算は「10のべき乗」。=10^LOG10(A1) で元の値に戻せる

対数はとっつきにくいイメージがありますが、LOG10関数を使えば計算自体はとてもシンプルです。まずは桁数の計算など身近な場面から試してみてくださいね。

関連記事

タイトルとURLをコピーしました