excel数组公式中;(分号)与,(逗号)用法的区别?

例如=SUMPRODUCT({2;5;9;7;1},{3;5;7;2;6},{4;6;8;7;2})
改成=SUMPRODUCT({2,5,9,7,1},{3,5,7,2,6},{4,6,8,7,2})
运算结果一样。
而=SMALL(IF(MMULT(COUNTIF(OFFSET(A$24:A$39,,{0,2,4,6}),ROW($1:$100)),{1;1;1;1})=0,ROW($1:$100)),ROW(A1))
改成=SMALL(IF(MMULT(COUNTIF(OFFSET(A$24:A$39,,{0,2,4,6}),ROW($1:$100)),{1,1,1,1})=0,ROW($1:$100)),ROW(A1))
结果错误。
为什么?

逗号:水平数组(相当于"行");
分号:垂直数组(相当于"列")。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-01-20
最后的公式里的逗号是中文状态下的逗号,根本就不能在公式中计算了啊!!!要使用英文状态下的半角符号,不能用中文状态下的全角符号……追问

对,是输入的时候没注意,但这不是问题的关键。更正这个输入错误后问:为什么第一组公式中分号逗号互换可以,第二组不可以?

第2个回答  2020-01-20
按照加减乘除或则数值分析本回答被网友采纳
第3个回答  2023-08-23
对于SUMPRODUCT函数,逗号和分号都是用来分隔数组元素,不会影响最终的运算结果。SUMPRODUCT将传入的数组进行逐元素相乘并求和,所以使用逗号或分号结果是一样的。但是对于IF和MMULT等函数,逗号和分号就会导致不同的运算语义:- 分号表示“或”关系的垂直数组,即多个条件的选项
- 逗号表示“和”关系的水平数组,即一个条件内的组合条件在您的第二个例子中,使用逗号改变了数组{1,1,1,1}的语义,导致MMULT函数计算结果发生错误。总结一下:- 在不影响数组语义的函数中,逗号和分号可以互换
- 在数组表示逻辑条件时,要注意分号表示“或”,逗号表示“和”,不能随意替换.
相似回答