スプレッドシートのPOWER関数の使い方|べき乗(累乗)を一発計算

スポンサーリンク

スプレッドシートで「2の10乗」や「1.05の12乗」を計算したいとき、どうしていますか?

=222222222*2 なんて書くのは現実的ではないですよね。

そんなときに使うのが POWER関数 です。底(もとの数)と指数(何乗するか)を指定するだけで、べき乗の結果を一発で返してくれますよ。

この記事では、スプレッドシートのPOWER関数の基本の書き方から実務での活用パターン、^ 演算子との違いまで紹介します。

スプレッドシートのPOWER関数とは?

POWER関数(読み方: パワー)は、数値のべき乗(累乗)を返す関数です。名前は英語の「power(累乗・べき乗)」からきています。

たとえば =POWER(2, 3) と書くと「2の3乗」、つまり「2 x 2 x 2 = 8」が返ります。

べき乗とは、同じ数を繰り返し掛け合わせる計算のことです。「2の3乗」は2を3回掛けるという意味ですね。

POWER関数にできることをまとめると、次のとおりです。

  • 指定した数値のべき乗(累乗)を計算する
  • 複利計算で「元本 x (1+利率)のn乗」を求める
  • 面積や体積の計算で二乗・三乗を使う
  • SQRT関数と同じ平方根の計算にも応用できる

NOTE

POWER関数はGoogleスプレッドシートの全バージョンで使えます。Excelとの互換性も完全なので、ファイルのやり取りでも安心です。

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

基本構文

=POWER(底, 指数)

カッコの中に「底(もとの数)」と「指数(何乗するか)」の2つを入れます。

引数の説明

引数必須/任意説明
必須べき乗の底となる数値。セル参照や数式も指定できる
指数必須底を何乗するかを指定する数値。小数や負の数も可

底が2、指数が3なら「2の3乗 = 8」です。指数に小数を使えば「2の0.5乗 = ルート2」のような計算もできますよ。

POWER関数の基本的な使い方

整数のべき乗

もっともシンプルな使い方から見ていきましょう。

=POWER(2, 3)

結果は「8」です。2を3回掛け合わせた値ですね。

=POWER(5, 2)

結果は「25」です。5の2乗(5 x 5)です。

=POWER(10, 4)

結果は「10000」です。10の4乗(10 x 10 x 10 x 10)ですね。

セル参照を使う

A1に底の値「3」、B1に指数「4」が入っているとします。

=POWER(A1, B1)

結果は「81」です。3の4乗(3 x 3 x 3 x 3)ですね。セル参照を使えば、値を変えるだけで計算が自動更新されます。

指数に0や負の数を指定する

指数に0を指定すると、どんな数でも結果は「1」です。これは数学のルールですね。

=POWER(5, 0)

結果は「1」です。

指数に負の数を指定すると、逆数になります。

=POWER(2, -3)

結果は「0.125」です。2の-3乗は「1 / (2 x 2 x 2) = 1/8」で、0.125になります。

指数に小数を指定する(平方根・立方根)

指数に0.5を指定すると平方根(ルート)になります。これはSQRT関数と同じ結果です。

=POWER(9, 0.5)

結果は「3」です。9の0.5乗はルート9、つまり3ですね。

=POWER(8, 1/3)

結果は「2」です。8の1/3乗は立方根で、3乗すると8になる数です。

TIP

平方根だけならSQRT関数のほうがシンプルです。立方根やn乗根はPOWER関数でないと計算できません。

実務でのPOWER関数活用パターン

複利計算で将来の金額を求める

POWER関数がもっとも活躍するのが複利計算です。元本に利率を繰り返し掛ける計算ですね。

元本がA2、年利率がB2、年数がC2に入っているとします。

=A2*POWER(1+B2, C2)

たとえば元本100万円、年利3%、10年間なら次のようになります。

=1000000*POWER(1+0.03, 10)

結果は「1,343,916」(円未満切り捨て前)です。100万円が10年後に約134万円になりますよ。

TIP

月利で計算する場合は、年利を12で割って期間を月数にしましょう。=A2POWER(1+B2/12, C212) のように書きます。

年平均成長率(CAGR)を求める

売上や人口の「年平均成長率」を計算するパターンです。CAGR(Compound Annual Growth Rate)とも呼びます。

=POWER(C2/B2, 1/A2)-1

B2に初期値、C2に最終値、A2に年数が入っているとします。たとえば3年前の売上が500万円で今年が650万円なら、次のようになります。

=POWER(6500000/5000000, 1/3)-1

結果は約「0.0914」、つまり年平均9.1%の成長率です。べき乗の逆演算にあたるこの計算は、LOG関数を使った対数計算でも検算できますよ。

面積や体積の計算

正方形の面積は「一辺の2乗」、立方体の体積は「一辺の3乗」です。

=POWER(A2, 2)

A2に一辺の長さ「5」が入っていれば、結果は「25」です。面積25平方cmですね。

=POWER(A2, 3)

結果は「125」です。体積125立方cmになります。

円の面積を求めるときは、PI関数と組み合わせましょう。

=PI()*POWER(A2, 2)

A2に半径「5」が入っていれば、結果は約「78.54」です。円周率 x 半径の2乗で、円の面積が求まります。

売上や人口の成長予測

年間成長率をもとに将来の値を予測するパターンです。複利計算と同じ構造ですね。

現在の売上が1,000万円で年10%成長が5年続くとします。

=10000000*POWER(1+0.1, 5)

結果は「16,105,100」です。5年後には約1,610万円になる計算ですね。

単位変換(2のべき乗)

コンピュータのデータ容量など、2のべき乗が必要な場面です。

=POWER(2, 10)

結果は「1024」です。1KBは1,024バイトですね。

=A2*POWER(2, 20)

A2にメガバイト数が入っていれば、バイト数に変換できます。1MBは1,048,576バイトです。

^演算子との違い・使い分け

スプレッドシートでは、POWER関数の代わりに ^(キャレット)演算子でもべき乗を計算できます。

=POWER(2, 3)    → 8
=2^3             → 8

どちらも同じ結果です。では、どちらを使えばよいのでしょうか。

項目POWER関数^演算子
書き方=POWER(底, 指数)=底^指数
可読性関数名で意図が明確短くてシンプル
セル参照=POWER(A1, B1)=A1^B1
他の関数との組み合わせしやすい演算子の優先順位に注意
Excel互換性完全互換完全互換

使い分けのポイント

シンプルなべき乗計算なら ^ 演算子が短くて便利です。

=A1^2

ただし、複雑な数式の中では演算子の優先順位に注意が必要です。

=-2^2    → -4(マイナスより先に^が計算される)
=(-2)^2  → 4(カッコで囲めばOK)

POWER関数なら引数が明確なので迷いません。

=POWER(-2, 2)  → 4

チームで共有するスプレッドシートや、複雑な数式の中ではPOWER関数のほうが意図が伝わりやすいですよ。

POWER関数と関連する数学関数

POWER関数と一緒に覚えておくと便利な関数を紹介します。べき乗を軸に、数学関数のつながりを理解しておきましょう。

関数動作引数用途
POWERべき乗を返す2つ累乗計算全般
SQRT平方根を返す1つルートの計算
EXPeのn乗を返す1つ自然対数の底eの累乗
LOG対数を返す1〜2つべき乗の逆算
PI円周率πを返すなし円の面積・球の体積
PRODUCT複数セルの積可変掛け算の連続

POWER関数とSQRT関数の関係

SQRT関数は「平方根(ルート)を求める関数」です。POWER関数で指数に0.5を指定したのと同じ結果になります。

=SQRT(16)        → 4
=POWER(16, 0.5)  → 4

平方根を求めるだけならSQRT関数のほうがシンプルです。立方根や4乗根を求めたいときはPOWER関数を使いましょう。

=POWER(27, 1/3)  → 3(立方根)
=POWER(81, 1/4)  → 3(4乗根)
計算内容推奨する方法数式例
平方根(ルート)SQRT関数=SQRT(16) → 4
立方根POWER関数=POWER(27, 1/3) → 3
n乗根POWER関数=POWER(値, 1/n)

TIP

「πの平方根」を求めたい場合は、SQRTPI関数が便利です。=SQRTPI(1) で√πが一発で求まりますよ。

POWER関数とEXP関数の違い

EXP関数は、ネイピア数e(約2.718)のべき乗を返す関数です。底がeに固定されている点がPOWER関数との違いですね。

=EXP(2)          → 7.389...(eの2乗)
=POWER(2.718, 2) → 7.389...(近似値)

連続複利や自然対数に関する計算にはEXP関数を使います。任意の底でべき乗を求めたいときはPOWER関数が適していますよ。

POWER関数とLOG関数の関係

LOG関数はPOWER関数の逆演算です。「2の何乗が8か?」を求めるのがLOG関数です。

=POWER(2, 3)     → 8(2の3乗は8)
=LOG(8, 2)       → 3(2を底とする8の対数は3)

POWER関数で計算した結果を検算したいときに、LOG関数が使えます。逆に、LOG関数の結果をPOWER関数で検証することもできますよ。

よくあるエラーと対処法

POWER関数で発生しやすいエラーをまとめました。

エラー原因対処法
#VALUE!引数に文字列が入っているセル参照先が数値かどうか確認する
#NUM!負の数の非整数乗(例: -4の0.5乗)底が負の場合は整数の指数を使う
#ERROR!構文ミス(カッコ忘れ・カンマ漏れ等)数式の入力内容を見直す
結果が極端に大きい指数が大きすぎる指数の値を確認する

負の数の平方根を求めようとしたとき

負の数の平方根は実数では定義できないため、#NUM!エラーになります。

=POWER(-4, 0.5)

この計算はエラーです。「ルート-4」は実数の範囲では答えが出ません。

負の数の絶対値で計算したいときは、ABS関数と組み合わせましょう。

=POWER(ABS(-4), 0.5)

結果は「2」です。-4の絶対値「4」の平方根ですね。

引数が足りないとき

POWER関数は引数が2つ必須です。1つだけだとエラーになります。

=POWER(2)

「指数」を忘れていないか確認してみてください。

Excelとの違い

POWER関数はExcelとGoogleスプレッドシートで完全に同じ動作です。

項目ExcelGoogleスプレッドシート
構文=POWER(数値, 指数)=POWER(底, 指数)
動作べき乗を返すべき乗を返す
^演算子使用可能使用可能
負の底+非整数指数#NUM!エラー#NUM!エラー

引数名の表記が若干異なるだけで、機能は完全に同じです。^ 演算子もどちらでも使えますよ。

ARRAYFORMULA と組み合わせて複数行を一括計算する

スプレッドシートで「B列の各値を C列の指数でべき乗した結果をD列に出したい」というとき、1行ずつ数式を入力して下にコピーするのが一般的です。ただし ARRAYFORMULA を使うと、1つの数式で複数行を一括計算できます。これはExcelにはないGoogleスプレッドシート独自の機能です。

D2セルに次の数式を1つ入力するだけで、D2以下に結果が展開されます。

=ARRAYFORMULA(POWER(B2:B10, C2:C10))

B列の値・C列の指数が1行ずつ対応しており、POWER関数がB2とC2、B3とC3…と自動的に組み合わせて計算します。途中で行を追加・削除しても数式の修正は不要です。

複利計算を複数の元本にまとめて適用したい場合も同様です。

' A列に元本・B列に利率・C列に年数が並んでいるとき、D2に1つ書くだけでD列全体に展開
=ARRAYFORMULA(A2:A10 * POWER(1+B2:B10, C2:C10))

ARRAYFORMULAを使うと計算式のメンテナンスが1か所で済むため、列数が多いシートやデータが頻繁に増えるシートで特に効果的ですよ。

SEQUENCE と組み合わせて複利シミュレーション表を生成する

SEQUENCE関数と組み合わせると、「1年目から10年目まで複利で増えた金額の推移表」を数式1本で生成できます。

' A2に元本・B2に年利率が入っているとき、1〜10年目の複利残高を縦1列で返す
=A2 * POWER(1+B2, SEQUENCE(10))

SEQUENCEが1〜10の数列を生成し、それをPOWERの指数として渡すことで、各年末の残高が縦10行に展開されます。

横方向に並べたいときは、SEQUENCEの引数を変えるだけです。

' 横1行で1〜12ヶ月分の複利残高を返す(月利計算)
=A2 * POWER(1+B2/12, SEQUENCE(1, 12))

始値・利率・期間を別セルで管理しておけば、1か所変えるだけで全部の計算が自動更新されます。財務シミュレーションや積立計画の検討表として活用してみてください。

等比数列(公比が一定の数列)の生成にも使えます。初項をA2、公比をB2とすると、n項目の値は =A2 * POWER(B2, SEQUENCE(n)-1) で求まります。

POWER 関数で分散・標準偏差を手動計算して検証する

Googleスプレッドシートには VAR(分散)や STDEV(標準偏差)関数がありますが、「なぜその値になるのか」を確認したいときは POWER 関数を使って手動で計算すると理解しやすくなります。

標本分散の計算式(偏差の2乗の平均)

データ(A列)平均(B列)偏差偏差の2乗
10=AVERAGE(A2:A6)=A2-$B$2=POWER(C2, 2)
14=A3-$B$2=POWER(C3, 2)
…以下同様…   

偏差の2乗の平均が分散です。

' 手動で分散を計算する(AVERAGE + POWER)
=AVERAGE(POWER(A2:A6 - AVERAGE(A2:A6), 2))

ARRAYFORMULAと組み合わせると1行で書けます。

=AVERAGE(ARRAYFORMULA(POWER(A2:A6 - AVERAGE(A2:A6), 2)))

平方根を取れば標準偏差です。

=SQRT(AVERAGE(ARRAYFORMULA(POWER(A2:A6 - AVERAGE(A2:A6), 2))))

=STDEV(A2:A6) と同じ値になるはずです(標本標準偏差の場合は N-1 で割るため、分母に注意)。機械的に使っていた統計関数の仕組みをPOWERを通じて確認できますよ。

SPARKLINE と組み合わせて複利成長をセル内グラフで可視化する

SPARKLINE関数 を使うと、SEQUENCE + POWER で生成した複利成長の数列をセル1つの中に折れ線グラフとして表示できます。ExcelにはないGoogleスプレッドシート固有の機能で、レポートやダッシュボードで「成長の傾き」を視覚的に伝えたいときに役立ちます。

例:元本100万円・年利5%・10年間の複利推移をセル内グラフで表示

C2セルに次の数式を1つ入力します。

=SPARKLINE(A2 * POWER(1+B2, SEQUENCE(10)), {"charttype","line"; "color","steelblue"; "linewidth",2})

A2に元本(例: 1000000)、B2に年利(例: 0.05)を入れておけば、1〜10年目の残高がSEQUENCEとPOWERで生成され、その10個の値がSPARKLINEに渡されて折れ線グラフになります。

利率を複数行に並べた比較表

A列に元本・B列に年利を何行か並べておくと、各行のC列に「その利率での10年推移グラフ」が並んで一覧比較できます。

A列(元本)B列(年利)C列(SPARKLINEグラフ)
1,000,0003%←折れ線グラフ自動表示
1,000,0005%←折れ線グラフ自動表示
1,000,0008%←折れ線グラフ自動表示

利率を変えるたびにグラフが即座に更新されるため、「利率の違いが長期でどう効いてくるか」を直感的に確認できますよ。

まとめ

POWER関数は、数値のべき乗(累乗)を求める関数です。

ポイントを整理しておきましょう。

  • 構文は =POWER(底, 指数) の2引数。底を指数の回数だけ掛け合わせた値を返す
  • 複利計算では =元本*POWER(1+利率, 期間) で将来の金額がわかる
  • 年平均成長率(CAGR)は =POWER(最終値/初期値, 1/年数)-1 で求められる
  • ^ 演算子でも同じ計算ができるが、複雑な数式ではPOWER関数が読みやすい
  • 指数に0.5を指定すると平方根になる。SQRT関数と同じ結果
  • 立方根やn乗根は =POWER(値, 1/n) で求められる
  • 円の面積は PI関数と組み合わせて =PI()*POWER(半径, 2) で計算できる
  • EXP関数(eのべき乗)やLOG関数(べき乗の逆算)とセットで覚えておくと便利
  • ABS関数と組み合わせれば負の数の絶対値でべき乗計算ができる

まずは =POWER(2, 10) で「2の10乗 = 1024」から試してみてください。

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