我想比较一下几列,2015年最受欢迎的5大产品。
我有这种数据流可以使用:
Client | Product | Date of buy ------------------------------ client1 | A | 15.06.2015 client3 | A | 04.12.2015 client5 | F | 15.06.2015 client9 | G | 15.01.2015 client2 | G | 15.01.2015 client1 | R | 05.07.2015 client3 | G | 15.06.2015 client1 | F | 05.07.2015 client3 | F | 15.06.2016
结果 - 客户购买的产品(同一日期)最多的产品社区是哪些产品。 E.g ..
1. Product A + Product H 222 times 2. Product A + Product E 77 times 3. Product B + Product O 70 times 4. etc 5. ...
格尔茨,
答案 0 :(得分:0)
做出假设:
在E2中,我使用以下公式生成了一系列独特的产品:
=INDEX($B$3:$B$11,MATCH(0,INDEX(COUNTIF($E$2:E2,$B$3:$B$11),0,0),0))
我将其复制下来以匹配初始列表中的行数。当列出列表中的所有唯一项目时,它开始吐出#N / A.如果你想避免这种情况,可以将公式放在:
中=IFERROR(insert formula,"")
现在在F栏中,我根据您对每个项目的标准以及2015年内的计数进行了计数。如果函数名为COUNTIFS,我会使用多次计数:
=COUNTIFS($C$3:$C$11,"<"&DATE(2016,1,1),
$C$3:$C$11,">"&DATE(2014,12,31),
$B$3:$B$11,E3)
我刚重新格式化,以便于阅读。如果要复制和粘贴,则必须稍微编辑。如果您不喜欢在相邻列中没有产品时看到0,则可以将等式包装在:
中=IF(E3="","", insert formula )
然后我跳过一个列并将计数项目列表从最大到最小排序,然后按顺序返回数字。我只下了两排,但你可以在技术上完成整个列表。大函数执行此操作,H3中的公式如下所示:
=LARGE($F$3:$F$11,ROWS($1:1))
然后我返回1列并输入与计数对应的产品名称,然后在产品具有相同计数时在列表中使用下一个名称。当我读到时,我把它放在F列中,我想先读取产品名称,然后读取数量。如果你想要它反过来只是交换列。 G1中的公式为:
=INDEX($E$3:$E$11,MATCH(H3,$F$3:$F$11,0)+COUNTIF($H$3:$H3,H3)-1)
根据需要将E3和F3复制下来。将G3和H3复制一行,您将获得前两名。两行,你有前三名等。
它的外观......日期根据我的电脑日期格式显示。