Google sheets =QUERY() 在两个工作表上匹配名称
Google sheets =QUERY() matching names on two sheets
我一直犹豫要不要问,因为这个公式看起来很简单,但我一直难以让它发挥作用。数据从不同的工作簿导入到 sheet1,另一组数据导入到 sheet2。现在,我试图通过将 sheet1 的 E 列与 sheet2 的 D 列(两列都包含名称)匹配并将其输入到同一工作簿的 sheet3 来编译数据。在等待匹配时,我试图仅显示记录所需的相关数据(列 A(日期)、H(数字)、F(数字)、S(文本))。
=QUERY(Sheet1!A:S,"select A, H, F, S where E matches '"&Sheet2!D:D&"'",1)
此 returns 请求列的标题,但不显示任何匹配信息(根据手动计数,应该显示 5 行)。我摆弄过不同的公式来包括索引和过滤器,但我似乎无法将格式降低到接近复制我目前拥有的格式。我假设问题出在 [E 匹配 '"&Sheet!2D:D&"'"]。这是比较两列的长度而不是列中的值吗?我需要首先索引列?
尝试:
=QUERY(Sheet1!A:S,
"select A,H,F,S
where E matches '"&TEXTJOIN("|", 1, Sheet2!D:D)&"'", 1)
我一直犹豫要不要问,因为这个公式看起来很简单,但我一直难以让它发挥作用。数据从不同的工作簿导入到 sheet1,另一组数据导入到 sheet2。现在,我试图通过将 sheet1 的 E 列与 sheet2 的 D 列(两列都包含名称)匹配并将其输入到同一工作簿的 sheet3 来编译数据。在等待匹配时,我试图仅显示记录所需的相关数据(列 A(日期)、H(数字)、F(数字)、S(文本))。
=QUERY(Sheet1!A:S,"select A, H, F, S where E matches '"&Sheet2!D:D&"'",1)
此 returns 请求列的标题,但不显示任何匹配信息(根据手动计数,应该显示 5 行)。我摆弄过不同的公式来包括索引和过滤器,但我似乎无法将格式降低到接近复制我目前拥有的格式。我假设问题出在 [E 匹配 '"&Sheet!2D:D&"'"]。这是比较两列的长度而不是列中的值吗?我需要首先索引列?
尝试:
=QUERY(Sheet1!A:S,
"select A,H,F,S
where E matches '"&TEXTJOIN("|", 1, Sheet2!D:D)&"'", 1)