我试图使用数组常量来进行一些计算。我看到了这个帖子:Array Constants in Excel,但是我在公式中使用数组常量,所以它不是重复的。如果我使用=SUM({1,2,3})
,则结果为6
,符合预期。但是,如果我将其与DCOUNT
一起使用,则无法正常工作:
A
1 Colour
2 Red
3 Yellow
4 Green
5 Red
6
7 Colour
8 =Red
=DCOUNT(A1:A5;;A7:A8)
的结果是2。
=DCOUNT(A1:A5;;{"Colour";"=Red"})
的结果是 #Value!。错误消息公式中使用的值是错误的数据类型。
这在MS Excel 2010中有些不一致吗?或者我做错了什么?
有人建议“=红色”是问题,但在标题您可以在常量 IMO中使用的元素的this页面的引用并没有真正实现它。如果是问题,那么以下内容应该有效:
A
1 Number
2 1
3 2
4 3
5 1
6
7 Number
8 1
公式=DCOUNT(A1:A5;;A7:A8)
给出了2
,但公式=DCOUNT(A1:A5;;{"Number";1})
或=DCOUNT(A1:A5;;{"Number";"1"})
仍然会出现与前一个示例相同的错误。
答案 0 :(得分:0)
范围可以用作数组,但数组不能用作范围。
由于DCOUNT
仅指定范围参数,因此数组常量是该参数的非法类型。
根据这些页面:
他们会暗示数组常量将用于不采用范围的项目,但是:
要做我想做的事情(计算A2(A5)范围内包含字符串Red
的所有单元格),我会这样做:
A
1 Colour
2 Red
3 Yellow
4 Green
5 Red
=SUM(IF(A2:A5="Red", 1, 0))
通过创建中间数组{1;0;0;1}
来计算 Red 条目的数量,然后将所有元素添加到一起,从而生成2
。