【问题标题】:Excel: Check for substring and add valueExcel:检查子字符串并添加值
【发布时间】:2016-03-02 04:37:01
【问题描述】:

我有多个 Excel 工作表。第一张表包含总信息的数据。第二张表包含所有订单行项目的数据。

我需要根据第一张表中的信息遍历第二张表,并将订单项的总数相加。

例如,这是第一张纸:

这是第二张纸:

我需要:

  1. 将第一张表中的“客户”字段与“客户名称”和“客户别名”列进行比较。
  2. 如果第二个工作表中的“客户名称”或“客户别名”包含第一个工作表的“客户”字段中的文本,它将比较“项目”字段。
  3. 如果第一个工作表中的“项目”字段与第二个工作表中的“项目”字段匹配,我们将数量和收入相加并将它们放入第一个工作表中。

最终结果应如下所示:

这是一个非常简化的示例。实际的工作表在第一个工作表上包含数百个条目,在第二个工作表上包含数千个行项目。如果你知道怎么做,请帮帮我!

【问题讨论】:

  • 我应该澄清一下:第三张图片没有删除其他表格条目。我只是没有将它们包含在屏幕截图中。
  • 请发布您迄今为止编写的 VBA 代码,并包括您编写所请求任务的尝试。此外,请指出程序在代码中的哪个位置停止/运行错误/或未按预期运行。谢谢。
  • 如果您有兴趣,也可以使用公式来完成。

标签: vba excel macros contains


【解决方案1】:

这是一个公式解决方案:

把它放在 C2 中:

=SUMPRODUCT((((ISNUMBER(SEARCH($B2,Sheet2!$A$2:$A$100)))+(ISNUMBER(SEARCH($B2,Sheet2!$B$2:$B$100))))>0)*(Sheet2!$C$2:$C$100=$A2)*(Sheet2!D$2:D$100))

然后上下复制。

我知道您要求提供 vba 解决方案,但如果您需要,这里就是。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-26
    • 2016-02-10
    • 1970-01-01
    • 2011-02-18
    • 1970-01-01
    • 2023-01-25
    相关资源
    最近更新 更多