Excel矩阵函数mmult教程
原创作者 | 李锐
微信公众号 | 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单元格区域,输入以下区域数组公式后按<Ctrl+Shift+Enter>组合键。
=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还可以构建更多条件配合公式的计算,免除辅助列直接得到想要的结果。