【问题标题】:Summarize parts of Excel-table总结部分 Excel 表格
【发布时间】:2015-04-13 18:32:36
【问题描述】:

我在 Microsoft Excel Office 的 VBA 中有一个问题。

有一个表有两行(从头到尾)和数千行。

第一行是包含软件公司名称的字符串,例如 Adob​​e。

在第 2 行有包含第 1 行公司产品名称的字符串,例如 Acrobat Reader 11。

所以我想要的是,在第 2 行中的字符串,如:“Acrobat Reader 11”和“Acrobat Reader 10”将被总结为“Acrobat Reader”这可能吗? 不仅是版本号,“Office Word”“Office Excel”到“Office”。

你能帮帮我吗?顺便说一句,我是 VBA 和 Excel 的菜鸟。

问候

【问题讨论】:

  • 合并数据的标准应该是什么?仅按公司查找常见的子字符串或组?你的意思是两列几千行?? (行和行在excel中是同义词)
  • 哦,抱歉,是的,我的意思是 2 列和数千行。我的标准应该像这样合并:当不同行中第 2 列中的前 2 个单词相同时,它应该合并它们。我认为这将大大减少行数,而且我认为如果没有手动编辑,就不可能做到完美。
  • 如果没有 VBA,您可以使用Data->Text to Columns 将产品列拆分为每个“单词”的单独列(将其拆分为delimited,然后使用space 作为分隔符)。这将给出一堆列。然后,您可以删除除前 2 列之外的所有列。然后,您可以对这 2 列进行排序和过滤(或使用Data->Remove Duplicates)以减少列表。

标签: vba excel summarization


【解决方案1】:

您需要先将您的第二列拆分为多列,正如评论一样。 (在 Excel 2010 中:数据选项卡 - 文本到列 - 分隔符 - 分隔符:空格) - 您的数据将如下所示:A 列:公司,B-C 列产品名称,删除其他列

之后,您应该添加一个列,告诉您产品名称的第二个单词(例如 Reader)是否在多行中使用,以便您可以对其进行分组,或者它是唯一的:=COUNTIFS(B:B,B2,C:C,C2),让我们将此新列称为唯一.

如果第二个单词不是唯一的,现在您需要另一列来合并前两个单词:=B2&IF(D2>1," "&C2,"")

最后只需创建一个包含 A 列和 E 列的数据透视表。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-06-10
    • 2016-10-21
    • 2016-10-22
    • 1970-01-01
    • 2018-11-23
    • 2016-07-01
    • 1970-01-01
    • 2022-01-14
    相关资源
    最近更新 更多