如果满足某些条件,Excel将使用数字对单元格进行计数
我想找出NO2列(例如)中包含数字的单元格百分比,只考虑在某个月某个小时内的单元格-例如,在1月份的每一天的第一个小时内,有多少单元格包含NO2列中的数字 我一直在尝试执行如果满足某些条件,Excel将使用数字对单元格进行计数,excel,count,conditional,Excel,Count,Conditional,我想找出NO2列(例如)中包含数字的单元格百分比,只考虑在某个月某个小时内的单元格-例如,在1月份的每一天的第一个小时内,有多少单元格包含NO2列中的数字 我一直在尝试执行1-COUNTIF(条件“*”)/COUNTA(条件),但是我在编写条件部分时遇到了问题 情况(考虑三个月)。它给了我一美元的价值!如果我试图将其放入COUNTIF IF($C$1:$C$8985="January", IF($B$1:$B$8985="1:00",$E$1:$E$8985,""), IF($C$1:$C$89
1-COUNTIF(条件“*”)/COUNTA(条件)
,但是我在编写条件部分时遇到了问题
情况(考虑三个月)。它给了我一美元的价值!如果我试图将其放入COUNTIF
IF($C$1:$C$8985="January",
IF($B$1:$B$8985="1:00",$E$1:$E$8985,""),
IF($C$1:$C$8985="February",
IF($B$1:$B$8985="1:00",'$E$1:$E$8985,""),
IF($C$1:$C$8985="December,
IF($B$1:$B$8985="1:00",$E$1:$E$8985,"")
尝试使用
=SUMPRODUCT()
:
您要替换的位置:
与您的月份列A:A
与您的时间列B:B
和你的第二栏C:C
((A:A=“一月”)+(A:A=“二月”)
这说明A列可以是一月或二月,B列的时间值为1:00,C列为数值
这实际上创建了三个数组,每个数组对应一个条件。它看起来像这样:
{"January", "January", "January", "February"}
{"1:00 AM", "1:00 AM", "2:00 AM", "1:00 AM" }
{ 1.0, 1.3, "text", 4 }
它将这些转换为真/假
{True, True, True, True}
{True, True,False, True}
{True, True,False, True}
^^^^ ^^^^ ^^^^ << Counts the number where ALL are 'True'
--
占位符是什么意思?它们只是将布尔值真/假
转换为一个数字。您还可以将乘积乘以*1
——例如(A:A=“一月”)*1
。想象一下,将它乘以-1,两次(如果只做一次,它将返回一个负结果)。因此a:a=“一月”
本身将返回True
。当您添加-->(
)时,它会将其转换为一个数值。这种逻辑是有道理的,但它给了我0或#值!错误仍然存在。我将整个列作为每个条件的输入,因此它们的大小应该相同。你介意张贴一个你的公式的例子吗?
{"January", "January", "January", "February"}
{"1:00 AM", "1:00 AM", "2:00 AM", "1:00 AM" }
{ 1.0, 1.3, "text", 4 }
{True, True, True, True}
{True, True,False, True}
{True, True,False, True}
^^^^ ^^^^ ^^^^ << Counts the number where ALL are 'True'
{True, True, True, True}
{True, True,False, True}
{True, True,False}
^^^^ ^^^^ *ERR << Returns error as the last array was smaller