操作步骤:
原始数据如下,A列包含重复的姓名,B列是对应的不同数量或者说型号。需要将A列数据去除重复值,并且将B列的同一个人的数量合并在一个单元格里并用逗号分开。
将AB列的抬头,复制到CD列。
按Alt+F11进入VBE界面。
选择【插入】-【模块】插入一个模块。
在模块空白处粘贴下列代码: Sub yy() Dim Arr, i&, d, Myr& Set d = CreateObject("Scripting.Dictionary") [c2:d65535].Clear Myr = [a65536].End(xlUp).Row Arr = Range("a1:c" & Myr) For i = 2 To UBound(Arr) If Not d.exists(Arr(i, 1)) Then d(Arr(i, 1)) = Arr(i, 2) Else d(Arr(i, 1)) = d(Arr(i, 1)) & "," & Arr(i, 2) End If Next k = d.keys t = d.items [c2].Resize(d.Count, 1) = Application.Transpose(k) [d2].Resize(d.Count, 1) = Application.Transpose(t) End Sub
返回excel界面,点击【开发工具】,插入一个按钮。
用鼠标左键在工作表中画出一个按钮,并指定宏至刚才插入的宏。
点击按钮就可以完成合并的过程。