组合重复行并以特定格式连接唯一字段

时间:2014-12-29 19:09:10

标签: excel excel-vba excel-formula excel-2013 vba

我有一个可能很容易回答的问题,我还没有找到我在网上寻找的东西。请原谅我的无知,我主要是访问。

我有几十万个产品列表,它们按应用制作模型进行分类年部分#。现在我想要实现的是,如果Application,make,model和part#保持相同的值,它们将合并到同一行,并且Years将被置于格式YYYY-YYYY(例如2010-2013)

有没有办法用vba或公式来实现这一目标? ?如果我不能让自己足够清楚,我可以澄清任何困惑。

谢谢。

1 个答案:

答案 0 :(得分:0)

数据透视表几乎可以为您完成所有这些工作,因为它会自动删除重复项。唯一缺少的是连字符" YYYY - YYYY"格式。

在所有数据上放置数据透视表,然后将应用程序,制作,模型,部件号放入"行标题"部分。其次,将字段拉入"值"第二节分开。使用这两个中的第一个,将计算更改为" Min of the Year"并将其他计算更改为"年度最大值"。

点击数据透视表后,您将看到" Design"功能区中的选项卡。在此选项卡中调整以下设置:

  1. 小计>不显示小计
  2. Grand Totals>关闭行和列
  3. 报告布局>以表格形式显示
  4. 报告布局>重复所有项目标签
  5. 使用此原始样本数据在数据透视表上使用这些设置:

    App #   Make #  Model #     Year    Part #
    App 1   Make 1  Model 1     2010    Part 1
    App 1   Make 1  Model 1     2011    Part 1
    App 1   Make 1  Model 1     2012    Part 1
    App 2   Make 1  Model 1     2010    Part 1
    App 2   Make 1  Model 1     2011    Part 2
    App 2   Make 2  Model 1     2012    Part 1
    App 2   Make 3  Model 1     2013    Part 1
    

    将输出显示以下内容的数据透视表:

    App #   Make #  Model # Part #      Min of Year    Max of Year
    App 1   Make 1  Model 1 Part 1      2010           2012
    App 2   Make 1  Model 1 Part 1      2010           2010
    App 2   Make 1  Model 1 Part 2      2011           2011
    App 2   Make 2  Model 1 Part 1      2012           2012
    App 2   Make 3  Model 1 Part 1      2013           2013