使用电子表格中的多个IF公式对唯一值进行排序

时间:2015-03-28 20:31:08

标签: google-sheets

我有一张按日期排序的销售条目。每个属性可以有多个条目(取消作为负面购买输入)。我的考验是,我需要合并重复项,并仅为SIGNED标记的行汇总产品列。

其次,所有0值(通过对所有产品列求和来检查,如果0 =取消)不需要从get go显示。基本上该列表必须按2个标准排序,然后相应地相加以创建“活动帐户”表,以便从中提取更多数据。

第三,这必须全部实时发生。添加销售时,表格应该有效更新。

在理想的世界中创建一个辅助列,如果“签名”则对产品列进行求和,如果为0则返回yes / no,因为它强制我使用视图仅显示活动帐户,而不是在表开始时动态发生。如果有必要的话,我想我可以走那条路,但希望你们这些人可以帮助我指导我这样或那样的方式。

我将尽力说明到目前为止我做过/尝试过的事情:

Client     Product 1     Product 2     Product 3    Status
AA            50            50            50        Signed
BB            0             0             50        Signed
AA            0            -50            0         Signed
CC            50            0             0         Signed
CC           -50            0             0         Signed
BB            0             0            -50        Pending
AA            0             0             50        Signed
AA            0             0             50        Pending

鉴于上述数据,我的第二张表格会是什么样的。

 Client     Product 1     Product 2     Product 3    Status
AA            50            0             100       Signed
BB            0             0             50        Signed

此时我只知道A1中的“= unique(client)”,动态地动态获取一个唯一的列表而没有荒谬的公式。然后在状态列之后执行if(sum($ b2:$ d2)= 0,“no”,yes“)),然后用视图对其进行整理。我唯一的问题是”待定“销售,得到拉到我的桌子。我试图通过在产品总和列中对其进行排序来解决这个问题。

=if(isblank(A3),,(sumif(client,A2,product1)))

这对我来说非常合适,但它不会对“已签名”“等待”进行排序

我试过了:

=if(isblank(Properties),,(IF(And(Properties=$A2,status="Signed"),SUM(SEO))))

但是我收到错误“无法找到数组值。”

我真的很难过接下来要解决这个问题的步骤。

2 个答案:

答案 0 :(得分:0)

可以使用QUERY函数生成这类报告:

=QUERY(QUERY(A:E,"select A, sum(B), sum(C), sum(D), E where E = 'Signed' group by A, E label sum(B) 'Product 1', sum(C) 'Product 2', sum(D) 'Product 3'",1),"select * where Col2 != 0 or Col3 != 0 or Col4 != 0",1)

这里有两个嵌套的QUERY;内部的一个对每个“签名”的客户端的值进行求和,而外部的一个客户端排除了没有至少一个非零求和值的客户端。

答案 1 :(得分:0)

在新的Google SPREDSHEETS中,我不得不改变分号的昏迷:

以这种方式为我工作:

  

= QUERY(QUERY(A:E;“选择A,总和(B),总和(C),总和(D),E其中E ='签名'组由A,E标签总和(B)'产品1',总和(C)'产品2',   sum(D)'Product 3'“; 1);”select * where Col2!= 0或Col3!= 0或Col4   != 0“; 1)