【问题标题】:Google Sheets - finding first match in array formula谷歌表格 - 在数组公式中找到第一个匹配项
【发布时间】:2021-11-21 20:06:57
【问题描述】:

好的,我在 Google 表格中为许多问题找到了很多解决方案,但这个解决方案简直是硬如磐石。 :)

我有一张表,其中 C 列是各种名称,D 列是职业。例如:

C / D
John Smith / plumber
Paul Anderson / carpenter
Sarah Palmer / dentist
Jonah Huston / carpenter
Laura Jones / dentist
Sid Field / carpenter
...etc

(你可以看到每个名字都是一样的,但是职业重复了好几次)

我想在 F 列中查看同一职业的最后匹配名称

C / D / F
John Smith / plumber / (N/A)
Paul Anderson / carpenter /Jonah Huston
Sarah Palmer / dentist / Laura Jones
Jonah Huston / carpenter / Sid Field
Laura Jones / dentist / (N/A)
Sid Field / carpenter / (N/A)
...etc

它适用于 INDEX 和 FILTER 函数,但是当我添加额外的行时,我必须一遍又一遍地复制代码。这是我使用的代码:

=IFERROR(INDEX(FILTER($C4:$C,$D4:$D=D6,$A4:$A<A6),1))

我正在寻找一种使用数组公式的解决方案来自动填充 F 列中的所有单元格,并尝试了各种版本(Lookup、Vlookup..etc),但找不到正确的公式。

任何指导将不胜感激。 :)

【问题讨论】:

    标签: arrays google-sheets indexing formula vlookup


    【解决方案1】:

    尝试:

    =INDEX(IF(C1:C="",,IFNA(VLOOKUP(
     D1:D&COUNTIFS(D1:D, D1:D, ROW(D1:D), "<="&ROW(D1:D)), {
     D1:D&COUNTIFS(D1:D, D1:D, ROW(D1:D), "<="&ROW(D1:D))-1, 
     C1:C}, 2, 0), "(N/A)")))
    

    【讨论】:

    • 哇,thanx player0,它就像魅力一样!你救了我的命。 :)
    猜你喜欢
    • 1970-01-01
    • 2021-05-31
    • 2019-11-09
    • 2021-11-09
    • 2020-02-19
    • 2019-02-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多