如果满足某些条件,Excel将使用数字对单元格进行计数

如果满足某些条件,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

我想找出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$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