クイックナビゲーション
MMULT 関数
概要
MMULT関数は、2つの配列の行列積(マトリックス乗算)を計算し、結果を新しい配列として返します。array1の行数×array2の列数のサイズを持つ結果配列が生成され、線形代数やデータ分析で多用される高度な配列演算機能です。
構文
MMULT(配列1, 配列2)
パラメータ
| パラメータ | タイプ | 必須 | 説明 |
|---|---|---|---|
| 配列1 | Array |
はい | 最初の配列。列数が配列2の行数と一致必須 |
| 配列2 | Array |
はい | 2番目の配列。行数が配列1の列数と一致必須 |
MMULT関数の使用
MMULTは線形代数計算や統計解析、マトリックス変換などで使用されます。配列1の列数と配列2の行数が一致する条件を満たす必要があり、結果はarray1の行数×array2の列数の配列となります。Microsoft 365ではEnterキー、従来版ではCtrl+Shift+Enterで配列数式として入力します。
MMULTの一般的な例
基本的な2×2行列の乗算
=MMULT(A1:B2,C1:D2)
A1:B2(2×2)とC1:D2(2×2)の行列積を計算し、2×2の結果配列を出力。出力範囲を選択後配列数式で入力。
ベクトルと行列の乗算
=MMULT(A1:A3,B1:D3)
3×1ベクトルと3×3行列の積を計算。結果は1×3ベクトルとして出力。線形変換に使用。
統計解析での使用
=MMULT(MMULT(B1:D3,B1:D3),A1:A3)
共分散行列とベクトルの乗算。多次元分析に活用。
よくある質問
一般的なエラーと解決策
#VALUE! エラー
Cause: array1の列数とarray2の行数が一致しない、または配列に非数値データを含む
Solution: 1. 配列サイズを確認(例:2×3と3×2のみ可)、2. 空白・文字列を数値に修正、3. 配列数式として正しく入力
#SPILL! エラー(Microsoft 365)
Cause: 出力範囲に既存データがある
Solution: 出力先を空の範囲に設定するか、クリアする
単一値しか返らない
Cause: 配列数式として入力されていない
Solution: 出力範囲を選択→数式入力→Ctrl+Shift+Enter(従来版)
注記
- array1: m×n、array2: n×p → 結果: m×p のサイズ
- 配列はセル範囲、配列定数、名前の定義範囲で指定可能
- 結果編集不可。再計算まで固定表示
- MMULT結果をTRANSPOSEやMINVERSEと組み合わせると強力
- 大規模行列では計算時間に注意
互換性
利用可能: Excel 2007, Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021, Microsoft 365
利用不可:
コンテンツ最終レビュー: December 9, 2025
更新頻度: 必要に応じて
テスト済みExcelバージョン: Excel 2007+