请尝试使用基本公式加入工作表+查询跳过一些行。
基本公式:
=FILTER({Sales!B14:B,Sales!C14:C,Sales!E14:E, vlookup(Sales!E14:E,{People!B2:B,People!D2:D},2,), Sales!F14:F},Sales!A14:A<>"")
你需要的公式:
=QUERY(FILTER({Sales!B14:B,Sales!C14:C,Sales!E14:E, IFERROR(vlookup(Sales!E14:E,{People!B2:B,People!D2:D},2,), "do not show"), Sales!F14:F},Sales!A14:A<>""),"select * where Col4 <> 'do not show'")
工作原理
它使用iferror(expression, "do not show") 将#N/A 错误替换为文本“不显示”。
然后它使用查询来隐藏值为“不显示”的行:
"select * where Col4 <> 'do not show'"
基本公式和问题is here
使用注意事项:
-
Sales!B14:B,Sales!C14:C,Sales!E14:E 是您需要先选择的一些列
-
IFERROR(vlookup(Sales!E14:E,{People!B2:B,People!D2:D},2,) 将从“人物”返回列,它是列People!D2:D。请注意,Sales!E14:E 和 People!B2:B 列都包含一个键,在示例中是电子邮件列表。
-
Sales!F14:F 是接下来要返回的列。
- 过滤条件
Sales!A14:A<>""是跳过原始工作表中的空行。您还可以将其他条件添加到过滤器中。
-
query 部分将缩短报告并跳过键(电子邮件)不匹配的值。您可以在查询中添加其他条件。
注意。 Google 表格中的查询语言没有joins,提供的解决方案是一种解决方法。它展示了如何借助表格中的vlookup 函数进行连接。
- 提供的公式从工作表“销售”收集行并将
vlookup 生成到工作表“人员”。您可能还想制作反之亦然的报告:从“人员”收集数据,从“销售”收集“vlookup”数据。
“反之亦然”报告:
=QUERY(FILTER({vlookup(People!B2:B ,{Sales!E14:E, Sales!B14:B, Sales!C14:C, Sales!E14:E},{2, 3, 4},), People!B2:B, IFERROR(vlookup(People!B2:B ,{Sales!E14:E, Sales!F14:F},2,),100500)},People!A2:A<>""),"select * where Col5 <> 100500")
注意!在此公式中使用数值 100500 来跳过值,因为查询适用于单一数据类型(数字或文本)。
如果您对它的工作原理有任何疑问,请在此处发表评论。