Excel関数 逆引き集 | 予測値算出 → FORECAST

Excel
スポンサーリンク

概要

「予測値算出」は、過去のデータの傾向から「次はいくつになりそうか」を数式で求める考え方です。
Excel では FORECAST 関数(新バージョンでは FORECAST.LINEAR)を使うと、既知の x・y の関係から、任意の x に対する y の予測値を線形回帰で計算できます。
売上予測、需要予測、アクセス数の予測など、「時間や条件に応じて数値が増減している」場面でとてもよく使われます。


FORECAST 関数の基本

構文と引数の意味

FORECAST(および推奨される FORECAST.LINEAR)の構文は次のとおりです。

=FORECAST(x, 既知のy, 既知のx)

または

=FORECAST.LINEAR(x, 既知のy, 既知のx)

ここでの意味は次の通りです。

  • x:予測したいポイント(将来の月、ある条件の値など)の x。
  • 既知のy:すでに分かっている y(売上、需要、アクセス数など)の範囲。
  • 既知のx:その y に対応する x(年月、広告費、温度など)の範囲。

内部では「最小二乗法による線形回帰」が行われ、既知の x・y の関係を直線で近似し、その直線上の y を返します。

FORECAST と FORECAST.LINEAR の関係

Excel 2016 以降では、FORECAST は新しい予測関数群の一部として FORECAST.LINEAR に置き換えられています。
構文と使い方は同じで、FORECAST は互換性のために残っている位置づけです。
新しいブックでは、基本的に FORECAST.LINEAR を使う前提で覚えておくとよいです。


直感でつかむ FORECAST の動き

「直線的な傾向に乗せて予測する」

FORECAST は、過去のデータに「直線」を当てはめ、その直線を延長して未来や任意の x の位置の y を求めます。
たとえば、年ごとの売上が少しずつ増えているなら、「1 年ごとにどのくらい増えているか」という傾きを推定し、その傾きで先の年の売上を計算します。

イメージとしては、

  • 既知の x・y を散布図に打つ
  • そこに「最もよく通る直線(回帰直線)」を引く
  • その直線上で、指定した x に対応する y を読む

ということを、関数 1 本でやってくれている感じです。

相関が弱い・非線形なデータへの注意

FORECAST は「線形回帰」に基づいているので、x と y の関係が直線的でない場合や、そもそも相関が弱い場合には、予測精度が低くなります。
また、既知の x の範囲から大きく外れた x に対する予測(極端な外挿)は、現実から大きくズレるリスクがあります。
「過去の傾向が今後も続く」という前提が妥当かどうかを、必ず目でデータを見て判断することが大事です。


コード例とテンプレート

基本例:年次売上から翌年の売上を予測

次のような表を考えます。

B 列:年(例:2016〜2025)
C 列:売上

B3:B12 に 2016〜2025 年、C3:C12 にその年の売上が入っているとします。
E3 に「2026 年」、F3 に「2026 年の予測売上」を出したいとき、F3 に次のように書きます。

=FORECAST(E3, $C$3:$C$12, $B$3:$B$12)

または

=FORECAST.LINEAR(E3, $C$3:$C$12, $B$3:$B$12)

ここで、

  • x:E3(予測したい年=2026)
  • 既知のy:C3:C12(過去 10 年分の売上)
  • 既知のx:B3:B12(対応する年)

となります。
この式は、「過去 10 年の売上の伸び方(直線的な傾向)をもとに、2026 年の売上を予測する」という意味になります。

シンプルな数列でのイメージ例

A2:A4 に 1,2,3、B2:B4 に 2,4,6 が入っているとします。
これは「y = 2x」という完全な直線関係です。

このとき、x=4 のときの y を予測したい場合、どこかのセルに次のように書きます。

=FORECAST(4, $B$2:$B$4, $A$2:$A$4)

結果は 8 になります。
FORECAST は、既知の点(1,2)(2,4)(3,6)から「y=2x」という直線を見つけ、その直線上で x=4 のときの y を返している、というイメージです。

月次データでのテンプレート

A 列:月(1〜12)
B 列:月次売上

A2:A13 に 1〜12、B2:B13 に 12 ヶ月分の売上が入っているとします。
13 ヶ月目(翌年 1 月相当)を「月=13」として予測したいとき、C2 に次のように書けます。

=FORECAST(13, $B$2:$B$13, $A$2:$A$13)

これで、「1〜12 ヶ月目の傾向を直線で延長したときの 13 ヶ月目の売上」が返ってきます。


実務での使いどころと注意点

代表的な利用シーン

FORECAST は、ビジネスのいろいろな場面で使えます。

  • 売上予測:過去数年・数ヶ月の売上から、来期・来月の売上を予測。
  • 在庫・需要予測:販売数量の推移から、次の期間の需要を予測し、在庫計画に反映。
  • アクセス・利用数予測:サイト PV やアプリ利用数の推移から、次月のアクセス数を予測。
  • 電力・ガスなどの使用量予測:気温と使用量の関係から、ある気温のときの使用量を予測。

いずれも、「x と y の間にある程度の直線的な関係がある」ことが前提です。

エラーと前提条件

FORECASTFORECAST.LINEAR には、いくつかの前提とエラー条件があります。

  • x が数値でないとき:#VALUE! エラー。
  • 既知のy または既知のx が空、あるいはデータ数が一致しないとき:#N/A エラー。
  • 既知のx の分散が 0(すべて同じ値)のとき:#DIV/0! エラー。

また、データ数が少なすぎる場合や、外れ値が多い場合、そもそも直線で説明しづらいデータの場合は、予測の信頼性が下がります。
「予測値はあくまで“参考値”であり、必ず現場の知識と合わせて判断する」というスタンスが大事です。


例題

問題1

B3:B12 に 2016〜2025 年の年次データ、C3:C12 にその年の売上が入っています。
E3 に 2026 と入力されているとき、F3 に「2026 年の予測売上」を FORECAST で求める式を書いてください。
また、その式が「過去のどの範囲を見て、どのような前提で予測しているか」を、自分の言葉で説明してください。

問題2

A2:A13 に 1〜12(1 ヶ月目〜12 ヶ月目)、B2:B13 に 12 ヶ月分の売上が入っています。
13 ヶ月目の売上を「月=13」として予測したいとき、C2 に書くべき FORECAST(または FORECAST.LINEAR)の式を書いてください。
そのうえで、「この予測が現実から大きくズレる可能性があるのはどんな場合か」を考えて説明してください。

問題3

A2:A4 に 1,2,3、B2:B4 に 2,4,6 が入っています。
x=4 のときの y を FORECAST で求める式を書き、その結果がいくつになるか答えてください。
また、その結果から「このデータに対して FORECAST がどんな直線を仮定しているか」を説明してください。

問題4

FORECASTFORECAST.LINEAR で予測を行うとき、「既知のx」と「既知のy」のデータ数が一致していないと #N/A エラーになります。
なぜデータ数が一致している必要があるのかを、「1 行ごとに x と y がペアになっている」という視点から説明してください。

問題5

FORECASTTREND はどちらも「線形回帰による予測」を行う関数です。
「単発で特定の x に対する y を知りたいとき」と、「連続した x の範囲に対して一括でトレンド値を並べたいとき」で、どちらをどう使い分けるとよいかを、自分の言葉で整理してみてください。

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