【问题标题】:Google Spreadsheet - Compare multiple pairs of columns to validate dataGoogle 电子表格 - 比较多对列以验证数据
【发布时间】:2013-07-11 16:49:03
【问题描述】:

我有一个 Google 工作表,其中有两组,每组六列。 每个集合都使用importrange 函数从两个不同的电子表格导入,这些电子表格由它们自己的 Google 网络表单提供。 我试图做的没有成功的是一次比较多个“对”列以匹配单元格内容。 这是带有工作数据的示例:

代客户付款

Address              Person            Service      Invoice#   $$    Payment date
50 Rodeo Drive       Elton John        Water        10        100   9/07/2013
678 California St    Robert DeNiro     Electricity  15        120   10/07/2013
345 Dalton Rd        Sylvester Stall1  Cable TV     23        45    11/07/2013
9876 Knoxville St    Al Pacino         Water        42        98    12/07/2013

从客户那里收回

Address             Person             Service      Invoice #   $$     Payment date
50 Rodeo Drive      Elton John         Water        10          100    9/07/2013
678 California St   Robert De Niro     Electricity  15          120    10/07/2013

我的问题是如何比较每对列(即第一个数据集中的“地址”列与第二个数据集中的“地址”列,依此类推。目的是获取第三个数据集,其中包含“仅”恢复的发票,同时显示相关数据(人名、支付和恢复的服务、发票编号、支付金额和付款日期。是否有 公式/函数/谷歌应用程序脚本 或它们的组合来执行此任务? 我用=ArrayFormula(if(len(D3:D);if(isnumber(match(D3:D;K3:K;0));"Recovered";"Pending");iferror(1/0))) 测试过 但我只能检查两列之间是否匹配并显示一个标志。我的意思是,我想在显示结果之前检查是否有多个匹配项。

提前致谢!

【问题讨论】:

  • 是否可以在 @DavidTew =filter(Paid!A:E, countif(Recovered!A:A&Recovered!B:B&Recovered!D:D, Paid!A:A&Paid!B:B&Paid!D:D)) 提供的公式中添加一个条件,在过滤所需的匹配范围后,还写入“X”和“Y " 根据“匹配”和“不匹配”的状态?

标签: filter google-apps-script match google-sheets array-formulas


【解决方案1】:

您可以尝试以下方法:

=filter(Paid!A:F, countif(Recovered!A:A,Paid!A:A))

这将过滤付费列表以仅显示那些同时在付费列表和恢复列表中的条目(可能不止一次)仅匹配一列,在本例中为两者的列 A。

如果您需要过滤多个列,您可以尝试以下方法:

=filter(Paid!A:E, countif(Recovered!A:A&Recovered!B:B&Recovered!D:D,     Paid!A:A&Paid!B:B&Paid!D:D))

【讨论】:

  • @David Tew:谢谢大卫,这很完美!它检查所有为项目类别排序的列。我尝试添加一个条件,以便只要在两组列中成功找到一个项目,它也会显示“已恢复”或“待处理”类别。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-08
相关资源
最近更新 更多