MMULT関数とは?スプレッドシートで行列の掛け算をする方法
スプレッドシートのMMULT関数とは?
MMULT関数は、行列同士を掛け算する関数だ。
普通の掛け算なら、
=A1*B1
のように書くが、MMULT関数を使うと、複数のデータをまとめて計算できる。
書き方は次の通りだ。
=MMULT(配列1, 配列2)
- 配列1:左側の表
- 配列2:右側の表
大量データの集計、売上分析、重み付け計算などで活躍するぞ。
MMULT関数を実際に使ってみよう
今回は商品の販売数と単価を使って、売上をまとめて計算してみよう。
まずは次の表を作ろう
| 商品 | 販売数 |
|---|---|
| 商品A | 5 |
| 商品B | 3 |
| 商品C | 8 |
| 商品A単価 | 商品B単価 | 商品C単価 |
|---|---|---|
| 100 | 200 | 300 |
この場合、
- 商品A:5 × 100
- 商品B:3 × 200
- 商品C:8 × 300
を計算したあと、全部合計したい。
普通なら1つずつ計算して、
=5*100+3*200+8*300
と書くところだ。
しかしMMULT関数なら一発でいける。
=MMULT(B2:B4,D2:F2)
実行すると結果はこうなる。
3500
計算の中身は次のようになっている。
5×100
+
3×200
+
8×300
=
3500
MMULT関数でエラーになる原因
MMULT関数で初心者がよく遭遇するのがエラーだ。
たとえば次のような式。
=MMULT(B2:B4,D2:D4)
これはエラーになる。
なぜなら、行列のサイズが合っていないからだ。
MMULT関数にはルールがある。
左側の列数
=
右側の行数
例えば次ならOKだ。
3×1 行列
×
1×3 行列
しかし次はダメだ。
3×1 行列
×
3×1 行列
サイズが合わないためエラーになる。
実務ではどんな場面で使う?
MMULT関数は学校の数学だけの関数ではない。
実際には次のような場面で使われる。
- 商品の売上集計
- アンケートの点数計算
- 重み付け評価
- 成績の自動計算
- 複数条件の集計
特に「項目ごとに重みが違う計算」と相性が良い。
MMULT関数で慣れたら、GASで自動化するのもおすすめ
MMULT関数を使えば、スプレッドシート上で行列計算や重み付け計算を行える。
ただし、実務では次のような作業も出てくる。
- 毎月同じ計算を繰り返す
- 複数のシートからデータを集める
- 計算結果を別シートに保存する
- 集計結果をPDFやメールで送る
- 条件に応じてレポートを自動作成する
こうした作業まで含めるなら、関数だけで頑張るより、GASで自動化した方が楽になることが多い。
たとえば、GASを使えば、
- 売上データを自動で読み込む
- MMULT関数をセットする
- 計算結果を別シートに転記する
- レポート用PDFを作成する
- 担当者へメール送信する
といった流れも自動化できる。
スプレッドシート関数は、業務改善の入り口だ。
そして、毎回同じ作業をしているなら、そこはGASで仕組みにできる可能性がある。
スプレッドシート関数で「ここまで自動化できるのか」と感じたら、次はGASでさらに一歩進めるタイミングだ。
売上集計、レポート作成、PDF出力、メール送信など、繰り返し作業はGASでまとめて自動化できる。