1

我正在使用 Google 表格查找公式,但代码返回说

“无法匹配'.25oz'”

工作表的链接在这里:
https ://docs.google.com/spreadsheets/d/1K1Hb9xV8Ky51Vdiv0SG-zKOEH0ELPNBYwMWhDFfm4l0/edit#gid=168328825

我遇到错误的具体部分是“Master Cocktail”D5,它试图搜索我的 Spirits 表或“Beer NA Bev”表。根据使用的盎司价格选择合适的价格。

我在单元格中使用的代码是:

=ArrayFormula(IF(C5="","",vlookup($B5,{'Beer NA Bev'!$A$63:$H$71;Spirits!$A$2:$I$325},MATCH($C5,{'Beer NA Bev'!$A$62:$K$62;Spirits!$A$3:$J$3},0),FALSE)))
4

1 回答 1

0
  • 首先{'Beer NA Bev'!$A$63:$H$71; Spirits!$A$2:$I$325}
    需要是:{'Beer NA Bev'!$A$63:$I$71; Spirits!$A$2:$I$325}例如。相同数量的列

  • 然后你可以放下整个MATCH并放在那里IFERROR,下面会有IF两个VLOOKUP(一个用于TRUE侧面,一个用于FALSE侧面)以区分啤酒和烈酒,因为您.25oz在两张床单中都有。然后您可以插入简单IFS的检查/搜索正确的.25oz价格并返回 main 的列号VLOOKUP
    检查这个类似的问题:https ://stackoverflow.com/a/54680420/5632629

像这样的东西:

 IFERROR(IF(VLOOKUP(B5, 'Beer NA Bev'!$A$63:$I$71, 1, 0)<>"", IFS(C5=".25oz", 5, 
                                                                  C5=".5oz",  6, 
                                                                  C5=".75oz", 7, 
                                                                  C5="1oz",   8,
                                                                  C5="2oz",   9), ), 
         IF(VLOOKUP(B5, Spirits!$A$2:$I$325,       1, 0)<>"", IFS(C5="2oz",   4,
                                                                  C5="1.5oz", 5,
                                                                  C5="1oz",   6,
                                                                  C5=".75oz", 7,
                                                                  C5=".5oz",  8,
                                                                  C5=".25oz", 9), ))

整个公式是:

=ARRAYFORMULA(IF(C5="", "",
 VLOOKUP($B5, {'Beer NA Bev'!$A$63:$I$71;
                     Spirits!$A$2:$I$325},
 IFERROR(IF(VLOOKUP(B5, 'Beer NA Bev'!$A$63:$I$71, 1, 0)<>"", IFS(C5=".25oz", 5, 
                                                                  C5=".5oz",  6, 
                                                                  C5=".75oz", 7, 
                                                                  C5="1oz",   8,
                                                                  C5="2oz",   9), ), 
         IF(VLOOKUP(B5, Spirits!$A$2:$I$325,       1, 0)<>"", IFS(C5="2oz",   4,
                                                                  C5="1.5oz", 5,
                                                                  C5="1oz",   6,
                                                                  C5=".75oz", 7,
                                                                  C5=".5oz",  8,
                                                                  C5=".25oz", 9), )), 0)))

于 2019-02-14T20:20:44.087 回答