Google 表格 Arrayformula for maxifs

Google Sheets Arrayformula for maxifs

大家好,

我已经很久了 supporter/reader 但这是我第一次在 Whosebug 上发帖,所以请多多包涵。

Example of the Sheet I am working in

=if(E2="",,If(maxifs($E:$E,$K:$K,K2)=E2,K2,""))

我在转换上面的这个 maxifs 公式时有点难过,我试图在 Google Sheets 中转换为数组公式。此公式检查以确保 E2(时间戳)不为空,然后进行比较,然后在整个时间戳列中查找不同标识符的更新时间戳(K 列示例:'43909Ben Johns'(参考号和客户的 CONCAT) ) 以查看是否有该标识符的新版本。如果找不到它,它将使用与同一行的 K 列中相同的标识符填充 L 列(公式所在的位置)中最新的行。如果它确实找到了更新的版本,它将填充为“”。

我尝试设置一个 arrayformula,但是我发现它不起作用,因为我正在尝试转换它。它计算了第一行,但将所有其他行(大约 10,000)留空,我怀疑这是因为它试图将 E2 和 K2 上的数据与列 E 和 K 中的其他行进行比较。下面是我试过的数组公式:

=arrayformula(if(E2:E="",,If(maxifs(E2:E,K2:K,K2:K)=E2:E,K2:K,"")))

如果您能帮助解决这个问题,我们将不胜感激,如果您需要我进一步解释,请告诉我。

编辑:添加了 Sheet https://docs.google.com/spreadsheets/d/1k1qK2BuYOwDPCtHedg7zV72JmE3_TQYu9EBwZVogQbU/

的样本

亲切的问候, 本

这是一个可以放在 header 单元格 (L1) 中的公式:

={
  "Valid Check (Most Recent)";
  ARRAYFORMULA(IF(E2:E = "",, IF(E2:E = VLOOKUP(K2:K, SORT({K2:K, E2:E}, 2, False), 2, 0), K2:K, "")))
}