0

我在这样的单元格中有一个值:1,2,3,4,5,6,7,8,9,10

在另一个单元格中2,4,5,9

我想要一个像1,3,6,7,8,10所需单元格一样的结果。

4

1 回答 1

0

你愿意创建自己的函数吗?

我认为您想说的是您想要显示单元格 1 中在“其他”单元格中找不到的唯一值...

基本上,我的函数将通过用“,”逗号分隔符拆分第一个单元格来循环遍历第一个单元格,并将每个值分配给一个字典对象。然后它将以相同的方式通过第二个单元格,但如果该值存在于字典对象中,它将删除它......只留下唯一的项目,然后用逗号分隔符加入数组......

将以下代码放入模块中,并在单元格中通过

=获取唯一(A1,A2)

Public Function GetUnique(RangeA As Range, RangeB As Range)
Dim objDic As Object
Dim X As Variant

Set objDic = CreateObject("Scripting.Dictionary")
For Each X In Split(RangeA.Value, ",")
    If Not objDic.exists(X) Then
        objDic.Add X, objDic.Count
    End If
Next
For Each X In Split(RangeB.Value, ",")
    If objDic.exists(X) Then
        objDic.Remove (X)
    End If
Next
GetUnique = Join(objDic.keys, ",")
End Function
于 2013-10-22T06:55:13.380 回答