【问题标题】:Google Sheets: Conduct VLOOKUP on array stored in a different cell谷歌表格:对存储在不同单元格中的数组进行 VLOOKUP
【发布时间】:2021-08-17 13:13:28
【问题描述】:

我正在尝试将一系列键/值对存储在 Google 表格的单个单元格中,然后使用公式查询数组,例如 VLOOKUP()。

举个例子,有一个数组存储了一系列的键/值对:​

{"keyA", "valueA"; "keyB", "valueB"; "keyC", "valueC"}

如果该数组嵌入在公式中,则可以在该数组上使用 VLOOKUP:

=VLOOKUP("keyB",{"keyA","valueA";"keyB","valueB";"keyC","valueC"},2,FALSE)

这将返回“valueB”。

但如果将数组存储在一个单元格(例如 B2)中并在公式中引用该单元格,例如:

=VLOOKUP("keyB",B2,2,FALSE)

...你得到一个#REF!带有详细信息的响应:“错误。VLOOKUP 的计算结果超出范围。”

有人可以提出解决方案吗?

非常感谢

【问题讨论】:

  • 创建一个表(2 列),其中第一列中的键和第二列中的值。然后将此数组用作 vlookup 范围。

标签: arrays google-sheets formula


【解决方案1】:

电子表格中没有EVALUATE 公式。

数组表达式是某种公式,为了输出一个范围的值,你必须把:

={"keyA", "valueA"; "keyB", "valueB"; "keyC", "valueC"}

然后您可以在输出上执行VLOOKUP


不过,你可以用SPLIT自己解析

=ArrayFormula(SPLIT(TRANSPOSE(SPLIT(REGEXREPLACE(B2,"^{""|""}$",),"""; """,FALSE)),""", """,FALSE))

【讨论】:

    猜你喜欢
    • 2018-02-11
    • 1970-01-01
    • 1970-01-01
    • 2021-09-23
    • 2021-07-20
    • 2021-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多