在多行合并数据一行

我想数据为相同零件号组合成一排。 示例显示重复的零件编号和我想在B列中的数据加入到列C.我不知道VBA并希望Excel公式来完成。

零件号 叙述 最后叙述
3062-99-919-000 碳钢锻造吊环
3062-99-919-000 ASTM A105 CURRENT EDITIONS
3062-99-919-000 产品标识PER A105
3062-99-919-000 LUG,电梯,FST,.406“THK,2.00”HGT,2.688“WD
3062-99-919-000 最大负载能力PER LUG:4850 LBS
3062-99-919-000 ALRY工具和模具P / N 2-898-MIN
3062-99-919-000 SUPPLIED通过紧固件
4022-24-1202-00 5/16“-18TPI点¯x1.50”LG TFL合金钢CR-MO STUDBOLT
4022-24-1202-00 SA193级B7最新版本
4022-24-1202-00 产品标识PER SA193
4022-27-1602-00 3/8“-16TPI点¯x2.00”LG TFL合金钢CR-MO STUDBOLT
4022-27-1602-00 SA193级B7最新版本
4022-27-1602-00 产品标识PER SA193
4022-27-2402-00 3/8“-16TPI点¯x3.00”LG TFL合金钢CR-MO STUDBOLT
4022-27-2402-00 SA193级B7最新版本
4022-27-2402-00 产品标识PER SA193
4022-27-3002-00 3/8“-16TPI点¯x3.75”LG TFL合金钢CR-MO STUDBOLT
4022-27-3002-00 SA193级B7最新版本
4022-27-3002-00 产品标识PER SA193
4022-27-3402-00 3/8“-16TPI×4.25”LG TFL合金钢CR-MO STUDBOLT
4022-27-3402-00 SA193级B7最新版本
4022-27-3402-00 产品标识PER SA193
4022-27-3402-00 STUDBOLT
4022-27-3402-00 3/8“X 16TPI点¯x4-1 / 4”LG。
4022-32-1802-00 1/2“-13TPI点¯x2.25”LG TFL合金钢CR-MO STUDBOLT
4022-32-1802-00 SA193级B7最新版本
4022-32-1802-00 产品标识PER SA193
4022-32-1802-00 螺柱
4022-32-1802-00 1/2“13TPI点¯x2-1 / 4”LG
4022-32-1802-00 厂商维护库存

--------------解决方案-------------

排序整个表格的基础上零件编号,然后在C2使用这个公式

= IF(A2 <> A1,B2,C1和“”&B2)的

在D1输入“国旗”,并在D2,使用这个公式

= IF(A2 <> A3。“最终”,“”)

然后抄下这两个公式下,以配合您的表,复制和粘贴值转换为值,排序您的列D降表,最后删除任何行,其中列D是空白的,然后删除列D.

我不能完全肯定,合理的配方,能做到这一点 - 我想你会需要很多子公式串起端到端的零件数量之多可能的重复,你所能拥有。 这意味着,做了很多的工作,往往可能返回什么。

认识你是反对一个VBA的解决方案,我已经准备了一份反正。 您可以选择不,如果你喜欢使用它,等到比我聪明的人[编辑:我觉得他的名字很可能是伯尼:-)]来了一个公式来做到这一点。

这是一个用户定义函数(UDF)。 这意味着你可以使用它在工作表就像一个内置Excel函数如SUM()或AVERAGE()或COUNTIF()。 在C2单元格把这个公式:你会以这种方式使用它:

= JoinNarr(A2)

其中,A 2是与零件数目的小区。 填补了下来。 那么只有一个部件号的第一个实例将有拉到一起进入细胞中的所有故事。 它可以改变这样做对所有的人,但我想通了杂波会简单地可怕,有许多重复。 这样,您就可以过滤非“,”细胞复制并粘贴到新的工作表。

请参阅有关如何将这个代码的说明本网页转化为常规代码模块
http://www.contextures.com/xlvba01.html#videoreg

将代码添加到工作簿后,请务必将其保存为“启用宏...”文件类型.XLSM或.xlsb

该函数的代码:

功能JoinNarr(PARTNO由于范围)作为字符串
“看到这个网页,关于如何把这个代码指令
“进一个常规代码模块
“http://www.contextures.com/xlvba01.html#videoreg

“要使用功能的工作表,只需键入它
“像一个普通的公式和引用单元格的
在它的零件编号,如:
'= JoinNarr(A2)的
',其中A2有零件编号和列B有文字相结合

昏暗pnList由于范围
昏暗anyPN由于范围
昏暗tempText作为字符串

tempText =左(partNo.Address,INSTR(2,partNo.Address,“$”) - 1)
设置pnList =范围(partNo.Address&“:”&_
细胞(Rows.Count,partNo.Column).END(xlUp)。地址)
“结果显示为零件号一次出现
如果Application.WorksheetFunction.CountIf(范围(tempText&1&“:”_
&tempText&partNo.Row),partNo.Value)= 1,则
tempText =“”
对于每个anyPN在pnList
如果anyPN = PARTNO然后
tempText = tempText与辅料(anyPN.Offset(0,1))&“|”
万一
下一个
其他
JoinNarr =“”
退出功能
万一
JoinNarr =左(tempText,莱恩(tempText) - 3)
结束功能

下面是部分结果的屏幕截图:

嗨,

请分享预期的结果。

分类:办公室 时间:2015-03-15 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 3.050 (s). 10 q(s)