Excel 计算一列中唯一值的数量,仅当另一列中的值大于0时才添加
考虑下表: 我希望计算唯一项目发生的数量,但仅在项目数量大于0时添加 所以在这种情况下,公式应该返回B,C和D=3 在另一个示例中,B的数量已更改,但结果仍应为3,因为我只希望对“Item”列中的唯一值求和 我试图摆弄这个公式,但不知道如何添加“数量>0”条件:Excel 计算一列中唯一值的数量,仅当另一列中的值大于0时才添加,excel,excel-formula,Excel,Excel Formula,考虑下表: 我希望计算唯一项目发生的数量,但仅在项目数量大于0时添加 所以在这种情况下,公式应该返回B,C和D=3 在另一个示例中,B的数量已更改,但结果仍应为3,因为我只希望对“Item”列中的唯一值求和 我试图摆弄这个公式,但不知道如何添加“数量>0”条件: =SUMPRODUCT((A1:A7<>"")/COUNTIF(A1:A7;A1:A7&"")) =SUMPRODUCT((A1:A7“”)/COUNTIF(A1:A7;A1:A7&“”) 这将返回唯一值的数
=SUMPRODUCT((A1:A7<>"")/COUNTIF(A1:A7;A1:A7&""))
=SUMPRODUCT((A1:A7“”)/COUNTIF(A1:A7;A1:A7&“”)
这将返回唯一值的数量,而不考虑数量
如果没有VBA,我的目标可能实现吗
注意:
表格在某些数量单元格中有空白值和文本值。公式应忽略这些行
=SUM(IF(FREQUENCY(IF(LEN(IF(IF(ISNUMBER(Quantity),Quantity,0)>0,Item,""))>0,MATCH(Item,Item,0)),
IF(LEN(IF(IF(ISNUMBER(Quantity),Quantity,0)>0,Item,""))>0,MATCH(Item,Item,0),""))>0,1))
这是一个数组公式,因此应在按住Ctrl+Shift键的同时按Enter键进行确认
应处理B列中的空格和文本。此公式应有效,即使数量列中有文本或空格
=总和(IF(频率)(IF(数量)*(数量>0),匹配(项目,项目,0)),行(项目)-MIN(行(项目))+1),1))
按CTRL+SHIFT+ENTER键确认