Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 创建一个“数学模型”;或;在数组函数中?_Excel_Matrix - Fatal编程技术网

Excel 创建一个“数学模型”;或;在数组函数中?

Excel 创建一个“数学模型”;或;在数组函数中?,excel,matrix,Excel,Matrix,我已提供以下资料: Airplane Typ Destination Typ A LAX Typ B LAX Typ A NEW Typ A NEW Typ B NEW Typ C ROS Typ D MUI 现在我想知道A型飞机飞往纽约的航班总数,所以我使用以下公式: =总和((A1:A5)=‘典型A’*(B1:B5='新)) 我用strg shift enter关闭它,它给出了一

我已提供以下资料:

Airplane Typ Destination
Typ A         LAX
Typ B         LAX
Typ A         NEW
Typ A         NEW
Typ B         NEW
Typ C         ROS
Typ D         MUI
现在我想知道A型飞机飞往纽约的航班总数,所以我使用以下公式:

=总和((A1:A5)=‘典型A’*(B1:B5='新))


我用strg shift enter关闭它,它给出了一个矩阵公式。这是有效的,我得到了结果2。现在,如果我想要使用A型飞机或飞往纽约的航班数量,我必须输入什么?结果当然应该是4。

您现有的公式最好作为标准公式而不是数组公式编写

=COUNTIFS(A2:A6, "Typ A", B2:B6, "NEW")
实际上并不处理
条件,但您可以将它们堆叠在一起或用于此。COUNTIFS比SUMPRODUCT效率更高

=COUNTIF(A2:A6, "Typ A")+COUNTIF(B2:B6, "new")-COUNTIFS(A2:A6, "Typ A", B2:B6, "NEW")
等价的产品是

=SUMPRODUCT(--(((A2:A6="Typ A")+(B2:B6="new"))>0))

试试手术室。顺便说一句,你应该使用的术语是数组公式,而不是矩阵公式。我当然可以?当我输入这个公式并用strg shift关闭它并输入它时,它工作正常?是的,好的,谢谢,我现在也知道,对于和条件,我可以使用countifs函数。So=countifs(A1:A5;“=典型A”;B1:B5;“=新”)。但是如果逻辑条件是“或”呢?谢谢!但是,公式开头的“-”代表什么?也许你可以用谷歌、bing或者…?可以避免“-”吗?不,你不能加TRUE+TRUE。但通过对布尔值进行数学运算,可以将它们转换为1+1。原始公式通过将两个布尔值相乘来执行此任务。试试
=SUM((A1:A5)=“Typ A”)
。这行不通。但是尝试一下
=SUM(-)((A1:A5)=“typa”)
它就会成功。