如何解决Google表格DGET找不到值
我想从该表中获取特定值。为此,我使用了两个不同的公式:
=iferror(DGET(Bazaar!$A:$K;"Top Sell-Offer";{"Item";"ENCHANTED_COAL"});"?")
==>返回“?”;应该得到一些数字
=iferror(DGET(Bazaar!$A:$K;"Top Sell-Offer";{"Item";"ENCHANTED_OBSIDIAN"});"?")
==>按预期返回“ 2747”
我也尝试过=index(filter(Bazaar!$B:$K;Bazaar!$A:$A="ENCHANTED_COAL");;1)
确实会返回我期望的结果,但是我无法通过标题指定想要的列。
请注意,条件字符串和列标题都是复制粘贴的,因此是字符完美的(如您在结果中所看到的。) 另请注意,提供的截断表不会发生这种情况,请参阅this sheet。
为什么我会得到如此不一致的结果,我该怎么办?
提前谢谢!保持健康!
解决方法
我复印了您的工作表,并弄乱了。最后,我决定删除IFERROR
部分,并收到错误消息“在DGET评估中发现多个匹配项”。错误是关键。
该公式将“ ENCHANTED_COAL_BLOCK”视为“ ENCHANTED_COAL”的另一个匹配项。一旦我从煤块中移除了“ COAL”,该公式便应运而生。
为了使它不再出现双精度字符(找到完全匹配的字符),只需在您要查找的单词前添加一个等号:=IFERROR(DGET(Bazaar!$A:$K,"Top Sell-Offer",{"Item";"=ENCHANTED_COAL"}),"?")
=IFERROR(DGET(Bazaar!$A:$K,C$3,{$A$3;"="&$A5}),"?")
出于一致性目的,我建议在所有搜索的单词前添加等号。
参考:https://infoinspired.com/google-docs/spreadsheet/exact-match-in-database-functions-in-google-sheets/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。