我一直试图在 Excel 中做一些工作,但我似乎被困在了一点上
在“A”列中我有:a、b、c、d、e
在“B”列中我有:完成、开始、完成
在“C”列到“S”列中我有:一些“X”,但不是在所有字段中。
所以我的问题是如何做到以下
foreach row in excel.A
Where Bx is done
count("X", $row)
我尝试过pivot、countif、sumproduct但似乎无法让它们工作,有什么想法吗?
答案1
我相信你会想要使用SUMPRODUCT
。试试这个:
=SUMPRODUCT((B1:B5="Done")*(C1:S5="X"))
X
这将返回B 列值为 的所有行中 C 到 S 列出现的次数Done
。
乘法使 Excel 将布尔数组视为数字数组。这样就SUMPRODUCT
不会返回错误。
答案2
尝试这个 -
=IF(B1="done",COUNTIF(C1:S1,"X"),"")
当然,这是区分大小写的。这会计算每一行并给出一个数字,除非它不是“完成”,否则它是空白的。
答案3
我认为您的意思是 C 至 S 列中没有 X 的任何单元格都没有任何内容。如果是这样,那么您可以通过使用 COUNTA 来简化一点:
=IF(B2="done",COUNTA(C2:S2),"")
请记住,如果这些 X 是通过公式输入的(如空白单元格中包含公式),那么这将不起作用,因为单元格将被视为包含某些内容。