Excel矩陣函數mmult教程

長按下圖 識別二維碼,參加Excel特訓營系統提升

原創作者|李銳

微信公眾號|Excel函數與公式(ID:ExcelLiRui)

微信個人號| (ID:ExcelLiRui520)

關鍵字:mmult

Excel矩陣函數mmult教程

Excel中有一個很可愛的函數叫做MM函數,全稱是mmult,雖然名字很好記,但很多人還不會使用她,今天就來簡單介紹下。

函數作用、語法結構、參數說明

mmult函數用於返回兩個數組的乘積。

她的語法結構很簡單:

mmult(數組1,數組2)

這個函數很有個性,作為她的參數的這兩個數組是有要求的:

要求1:數組1的列數必須和數組2的行數相同;

要求2:數組1和數組2中只能包含數值。

如果不滿足要求,無論是數組中有文本還是數組1的列數不等於數組2的行數,結果都會返回錯誤值#VALUE!

明白了基礎語法還遠遠不夠,再來看一個案例展示。

Excel案例展示

數組1和數組2如下圖所示,黃色區域是兩個數組乘積結果。

選定C3:G7單元格區域,輸入以下區域數組公式後按組合鍵。

=MMULT(A3:A7,C1:G1)

藉助這個案例,你可以更好的理解一下兩個數組相乘的過程以及結果呈現。

Excel應用1:構建數組行列之和的內存數組

掌握了mmult的特性,可以構建需要的內存數組,比如下圖中計算每行之和、每列之和,僅用一個區域數組公式就可以生成了。

黃色區域數組公式為=MMULT(B2:F9,ROW(1:5)^0)

黃色區域數組公式為=MMULT(TRANSPOSE(ROW(1:8)^0),B2:F9)

Excel應用2:構建數據累加的內存數組

黃色區域數組公式為=MMULT(N(ROW(1:9)>=TRANSPOSE(ROW(1:9))),B2:B10)

這個公式關鍵在於構建條件參數N(ROW(1:9)>=TRANSPOSE(ROW(1:9))),用圖示展示如下,幫助你理解。

在很多實際工作場景下,mmult還可以構建更多條件配合公式的計算,免除輔助列直接得到想要的結果。


推薦閱讀:

矩陣類的模板實現(C++)
矩陣論筆記(2)
74. Search a 2D Matrix
矩陣(三)
gal2mat:將gal權重文件轉成n-by-n矩陣

TAG:矩陣 | 函數 | 教程 | Excel |