目次
このチュートリアルでは、増減率を表すExcelの数式を作成し、正の数と負の数の両方で使用する方法を説明します。
Microsoft Excelには、分散を計算するための6つの関数があります。 しかし、これらの関数は、2つのセルの差のパーセントを計算するのには適していません。 内蔵の関数は、古典的な意味での分散、つまり、一連の値がその平均からどれくらい広がっているかを見つけるように設計されています。 パーセント分散は何か違います。 この記事では、正しい分散を見つけることができます。Excelで変化率を計算するための公式です。
変化率とは?
増減率、通期 百分率分散 または 差 は、元の値と新しい値という2つの値の間の比例変化である。
例えば、今年と昨年の売上高、予想気温と実測気温、予算と実際のコストなどの変動を計算することができます。
例えば、1月は1000ドル、2月は1200ドルの収入でしたから、その差は200ドルの収入増です。 しかし、それは割合で言うといくらなのでしょうか? それを知るには、変化率の計算式を用います。
Excelの変化率計算式
2つの数値の差の割合を求めるには、2つの基本的な計算式があります。
古典的なパーセント分散の公式
以下は、一般的に使われている変化率の計算式です。
( 新値 - 古い値 ) / 古い値数学では、通常、任意の2つの数値の間の分散の割合を計算するために3つのステップを実行します。
- 古い値から新しい値を引きます。
- その差を旧数値で割る。
- その結果に100を乗じる。
Excelの場合は、最後のステップをスキップして 比率 のフォーマットで表示されます。
Excelの変化率の計算式
そして、同じ結果を返す、より簡単なExcelの変化率の計算式を紹介します。
新値 / 古い値 - 1Excelで変化率を計算する方法
Excelで2つの数値の差の割合を求めるには、上記のいずれかの計算式を使います。 B列に推定売上高、C列に実際の売上高があるとします。推定数値を「基準値」、実際の数値を「新しい値」とすると、計算式はこのような形になります。
=(C3-B3)/B3
または
=C3/B3-1
上記の計算式は、3行目の数値を比較しています。 列全体の変化率を計算する場合は、このようになります。
- 3行目の任意の空白セル(例えばD3またはE3)に差分パーセントの計算式を入力します。
- 数式セルを選択した状態で パーセントスタイル ボタンをクリックするか、Ctrl + Shift + % のショートカットを押すと、返された十進数がパーセンテージに変換されます。
- 必要な行数だけ数式を下にドラッグします。
計算式をコピーダウンしたら、データから変化率欄が表示されます。
Excelの変化率計算式の仕組み
手動で計算する場合は、古い値(元の値)と新しい値の差を求め、元の値で割る。 結果をパーセントで表す場合は、100をかけることになる。
例えば、初期値が120で新しい値が150の場合、このように差分パーセントを計算することができます。
=(150-120)/120
=30/120
=0.25
0.25*100 = 25%
を適用しています。 比率 Excelの数値形式では、小数点以下の数値は自動的にパーセントで表示されるため、*100の部分は省略されています。
パーセントの増加/減少のためのExcelの公式
増減率は分散率の特殊なケースに過ぎないので、同じ式で計算される。
( 新値 - 初期値 ) / 初期値または
新値 / 初期値 - 1例えば、計算するために パーセント増 を2つの値(B2、C2)の間に置くと、式が成り立つ。
=(C2-B2)/B2
または
=C2/B2-1
を算出するための計算式です。 減率 は全く同じです。
Excel 変化率絶対値
Excel の分散割合の計算式は、デフォルトでは、増加割合が正の値、減少割合が負の値を返します。 変化割合を次のように取得します。 絶対値 を、その符号を無視して、ABS 関数で次のように数式を囲みます。
ABS(( 新値 - 古い値 ) / old_value)この場合、式はこのような形になります。
=abs((c3-b3)/b3)
こちらも問題なく使用できます。
=ABS(C3/B3-1)
割引率の算出
この例では、Excelの変化率の計算式をもう一つ実用的に使って、割引率を計算しています。 女性の皆さん、買い物に行くときは、これを思い出してください。
割引率=(割引価格-通常価格)/通常価格
割引率 = 割引後の価格 / 通常価格 - 1
割引率は、新しい割引価格が初期価格より小さいため、負の値として表示されます。 結果を出力するには 正の数 のように、ABS 関数の内部で数式をネストします。
=abs((c2-b2)/b2))
変化率後の値を計算する
増減率後の値を求めるには、一般的な計算式は次のようになります。
初期値 *(1+ 変化率 )B列に元の値、C列に差分割合があるとすると、割合変更後の新しい値を計算するために、コピーしたD2の式は次のようになります。
=B2*(1+C2)
まず、元の数値に掛けるべき全体の割合を求めます。 これは、1に割合を足せばよいのです(1+C2)。 そして、全体の割合に元の数値を掛けて、目的の結果を得るのです。
ご覧のように、この方法は増加率、減少率のいずれに対してもうまく機能します。
への 列を一定の割合で増減させる 例えば、B 列の値をすべて 5%増加させる場合、C2 に以下の数式を入力し、残りの行にドラッグダウンします。
=B2*(1+5%)
ここでは、単純に元の値に105%を掛けると、5%高い値になります。
便利なのは、あらかじめ定義されたセル(F2)にパーセント値を入力して、そのセルを参照することです。 セル参照を$記号でロックして、数式が正しくコピーされるようにするのがコツです。
=B2*(1+$F$2)
この方法の利点は、ある列を別の割合で増やす場合、1つのセルの値を変更するだけでよいことです。 すべての数式はそのセルにリンクされているため、自動的に再計算されるのです。
負の値での分散パーセントの計算
値の一部が負の数で表現されている場合、従来のパーセント差の公式は正しく機能しません。 一般的に受け入れられている解決策は、ABS関数の助けを借りて分母を正の数にすることです。
以下は、負の数を含む変化率の一般的なExcelの計算式です。
( 新値 - 古い値 ) / ABS( 古い値 )B2を旧値、C2を新値とすると、実質的な計算式は次のようになる。
=(c2-b2)/abs(b2)
注)このABS調整は技術的には正しいのですが、元の値がマイナスで新しい値がプラス、またはその逆の場合、計算式は誤解を招く結果になることがあります。
Excelの変化率のゼロ除算エラー(#DIV/0)
データセットにゼロ値が含まれている場合、Excelで変化率を計算する際にゼロ除算エラー(#DIV/0! IFERROR関数は、この問題を克服するのに役立ちます。 最終結果に対する期待に応じて、以下の解決策のいずれかを使用してください。
解決策1:古い値が0の場合、0を返す
古い値が0であれば、新しい値が0であるかどうかにかかわらず、変化率は0%となる。
=ferror((c2-b2)/b2, 0))
または
=ferror(c2/b2-1, 0)
解決策2:古い値がゼロの場合、100%を返す
このソリューションでは、新しい値がゼロから100%成長したと仮定して、別のアプローチを実施します。
=ferror((c2-b2)/b2, 1))
=ferror(c2/b2-1, 1)
この場合、旧値が0(5行目)、または両値が0(9行目)であれば、差分比率は100%となる。
以下のハイライトされた記録を見ると、どちらの式も完璧ではないことがわかる。
より良い結果を得るには、ネストされたIF文を使って2つの数式を1つにまとめるとよいでしょう。
=if(c20, iferror((c2-b2)/b2, 1), iferror((c2-b2)/b2, 0))
この改良された数式が帰ってくる。
- 古い値と新しい値の両方がゼロの場合、変化率は0%として表示されます。
- 古い値がゼロで新しい値がゼロでない場合、変化率を100%として表示します。
以上、エクセルで増減率を計算する方法でした。 実際に体験してみたい方は、以下のサンプルワークブックをダウンロードしてください。 それでは、また来週のブログでお会いしましょう。
練習用ワークブック(ダウンロード
増減率のExcel公式 - 例 (.xlsx file)