基本上,我希望Sheet 1从Sheet 2中提取数据,重命名为'Loot'。但是,从“Loot”中提取的数据只能来自特定列,而同一行中的另外两个单元格必须包含Sheet 1中的特定数据。
示例:'Loot'具有以下重要的B,C和D列:字符,项目类型和数量
我希望工作表1中的单元格包含来自“Loot”的数量(D)值,但前提是字符(B)和项目类型(C)单元格与正在拉取的数据共享同一行匹配工作表1上的两个特定单元格。
这是我可以接近但没有成功。
=QUERY('Loot'!D2:D;"select * where (B matches A14 and C matches A8)";1)
以下是电子表格的临时链接。 https://docs.google.com/spreadsheet/ccc?key=0AgUUnVW8yWhXdHhsZnpac29LdjdhTG9adFg4NnhwVHc&usp=sharing
表1是Veldspar
表2是Loot
在朋友的帮助下,我能够做到这一点......
=QUERY('Loot'!B2:D100,"select (D) where B = '" & A14 & "' and C = '" & A8 &"'")
问题是如果有多个结果,而不是将它们加在一起,它只会在其下面的每个单元格中显示每个结果
修改
修正了所有问题并找到了另一个问题。
=SUM(QUERY('Loot'!B$2:D,"select (D) where B matches '"& $A14 &"' and C matches '" & A$8 &"'"))
现在的问题是,如果没有从中提取数据的标准,则单元格会产生#N / A错误,导致引用其数据的所有其他单元格无法计算其数据。
EDIT ..
到目前为止,这是我用来解决问题的原因
=IFERROR(SUM(QUERY('Loot'!B$2:D,"select (D) where B matches '"& $A14 &"' and C matches '" & A$8 &"'")),"0")
EDIT ..
最后一个编辑技巧。我的问题已经解决了。我将链接保留给所有人,只是更改了Loot'工作表中的所有名称,以便隐藏名称。
答案 0 :(得分:7)
回答我自己的问题:)
=IFERROR(SUM(QUERY('Loot'!B$2:D,"select (D) where B matches '"& $A14 &"' and C matches '" & A$8 &"'")),"0")