在我的示例中:
https://docs.google.com/spreadsheets/d/1QQNTw_r9-q-FqVNwUoYklup73niZCFyO0VDUYImP5fo/edit?usp=sharing
我正在使用Google Forms作为eBay克隆来出售稀有物品。每个投标从表单输出到“数据”工作表,然后在“已处理”工作表中设置ArrayFormulas。我的想法是要处理出价,以便我们过滤除出价最高的项目以外的所有内容。所有数据都应自动更新,因此为什么要使用ArrayFormulas。
我的策略是,在A列中,我首先过滤所有唯一项(=unique(filter(Data!A2:A,Data!A2:A<>""))
),最后得到:
但是,然后在B列中,我们必须找到与该唯一商品相对应的最高出价,例如:
=IF(ISBLANK(A2),,ArrayFormula(MAX(IF(Data!A2:A=A2,Data!B2:B))))
但是,我不想让A2是单个单元格(A2),而是一个数组(A2:A),这样就不必手动将其向下复制到行中。同样,我也希望D和E列也自动显示。有什么办法可以做到这一点?
答案 0 :(得分:2)
不确定是否比以前发布的答案更容易,但是如果将来发现此线程,我认为这是解决这类问题的一种稍微简单的方法:
在单元格A1中的新标签上尝试此操作:
=FILTER(Data!A:D,COUNTIFS(Data!A:A,Data!A:A,Data!B:B,">"&Data!B:B)=0)
答案 1 :(得分:1)
我进行了一些研究,找到了与您所寻找的答案非常相似的答案。在稍微重新排列了公式以使其适合您的工作表之后,我能够使它起作用:
=ArrayFormula(vlookup(query({row(Data!A2:A),sort(Data!A2:C)},"select max(Col1) where Col2 <> '' group by Col2 label max(Col1)''",0),{row(Data!A2:A),sort(Data!A2:D)},{2,3,4,5},0))
此公式自动填充产品名称,最高出价,用户名和时间戳。我进行了一些测试,将自己的随机名称和值添加到数据表中,该公式效果很好。
答案 2 :(得分:1)