Excel如何把相同名称的不同内容合并在一起(原始值合并)

如何把图1变成图2的样子
不是求和,也不是计数,是原始值合并,有哪位大神帮帮忙,已经试过很多办法

答:编写了个自定义函数。按ALT+F11,打开VB编辑器,选择"插入""模块",复制下面代码进去。回到工作表,像使用普通公式一样使用它:

Function JOINIF(Rng1 As Range, Str, Rng2 As Range)
    Dim arr, brr
    Dim i As Long
    Dim j As Long
    Dim MyStr As String
    If Rng1.Rows.Count > 65536 Then
        arr = Rng1.Resize(65536, Rng1.Columns)
        brr = Rng2.Resize(65536, Rng1.Columns)
    Else
        arr = Rng1
        brr = Rng2
    End If
    For i = 1 To UBound(arr)
        For j = 1 To UBound(arr, 2)
            If arr(i, j) <> "" Then
                If arr(i, j) = Str Then
                    MyStr = MyStr & brr(i, j) & ","
                End If
            Else
                Exit For
            End If
        Next j
    Next i
    JOINIF = Left(MyStr, Len(MyStr) - 1)
End Function

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-01-10
假设姓名是A列,购买物品是B列,那合并后的列是C列,
C2=if(a2<>a1,b2,C1&","&b2),向下填充后,筛选一下就行了
第2个回答  2020-09-05
怎么把想同姓名不同内容的两张表格并列一起
第3个回答  2018-01-10
可以用数组公式,不过很麻烦,建议用VBA代码一键搞定。
相似回答