【问题标题】:combining arrayformula() with index() & match()将 arrayformula() 与 index() 和 match() 相结合
【发布时间】:2021-08-02 11:52:42
【问题描述】:

我想用 Table2 中的数据填充 Table1 col-1-3。

我得到的不是值,而是 #N/A:匹配没有找到值“e1”

这是我在 c3 中使用的公式

=ARRAYFORMULA(IF(ISBLANK(A3:A);"";if(regexextract(B3:B;"^.")="e";index(F3:G5;match(F3:F5;0);2) ;B3:B)))

我该如何解决这个问题?

Google table

【问题讨论】:

    标签: google-sheets google-sheets-formula spreadsheet array-formulas


    【解决方案1】:

    在 D3 中我进入

    =ARRAYFORMULA(IF(LEN(A3:A); IFERROR(VLOOKUP(B3:B;F3:G; 2; 0); B3:B);))
    

    看看这对你有用吗?

    【讨论】:

    • 感谢您的解决方案,效果很好,我赞成。但是,我还没有接受它作为解决方案,因为我希望使用索引/匹配。如果这不能解决,我会接受你的。
    • IMO ,vlookup 是迄今为止解决此问题的最佳(也是最短的!)解决方案。在这种情况下,索引匹配根本无法正常工作。
    • 请问你为什么这么想,这行不通
    • 假设您想要在 B 列中找到“e”时进行索引匹配。那么 if 语句将为“真”并且索引匹配将触发。问题将是匹配将尝试匹配 B 列中的所有单元格,而不仅仅是其中包含“e”的一个单元格。因此它会返回一个错误。如果你看看你在 C5 中遇到的错误,你就会明白我的意思。
    猜你喜欢
    • 1970-01-01
    • 2021-12-09
    • 1970-01-01
    • 2021-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-03
    相关资源
    最近更新 更多