excel能否条件合并N个文本

来源:百度知道 编辑:UC知道 时间:2024/05/24 19:12:38
核心问题是excel能否条件合并N个文本
譬如
A列 B列 C列 D列 E列
1行 我 小李 我 2
2行 我 小王 她 1
3行 她 小唐
C列是对A列进行删除重复项,D列是C列数据的个数,目的求E列。
希望E列中,1行得到的数据是 小李、小王;2行得到的数据是 小唐

在VBA中插入模块,输入如下代码(这是一个自定义函数myLOOKUP())
Function myLOOKUP(l_val As Variant, l_range As Range, r_range As Range)
'
'多次查找的lookup函数设计
'
'
Dim i, hs As Integer, ls As Integer '定义变量

Set l_range = ThisWorkbook.ActiveSheet.UsedRange
hs = l_range.Rows.Count '确定行数
ls = l_range.Columns.Count '确定列数

myLOOKUP = Null

For i = 0 To hs - 1
If l_range.Cells(l_range.Row + i, l_range.Column).Value2 = l_val Then
If (IsNull(myLOOKUP)) Then
myLOOKUP = r_range.Cells(r_range.Row + i, r_range.Column - 1).Value2
Else
myLOOKUP = myLOOKUP & "," & r_range.Cells(r_range.Row + i, r_range.Column - 1).Value2
End If
End If
Next

End Function

E1=myLOOKUP(D1,A:A,B:B)向下填充。

表述起来不太方便,做了一个excel文件,放在下面的论坛地址,5楼,
如有不明