Excel formula 在excel中删除单元格中的重复项
我在excel中有多个单元格,其中有重复的单元格,一列中有许多这样的单元格。例如A1=(30JNK11BR004 30JNK11AA004 30JNK11AA005 30JNK11BR004 30JNK11AA005 30JNK11BR004 30JNK11AA005)。在每个文本之间有一个换行符。如何删除重复项?使用如下单元格: 选择要处理并运行此VBA宏的单元格:Excel formula 在excel中删除单元格中的重复项,excel-formula,Excel Formula,我在excel中有多个单元格,其中有重复的单元格,一列中有许多这样的单元格。例如A1=(30JNK11BR004 30JNK11AA004 30JNK11AA005 30JNK11BR004 30JNK11AA005 30JNK11BR004 30JNK11AA005)。在每个文本之间有一个换行符。如何删除重复项?使用如下单元格: 选择要处理并运行此VBA宏的单元格: Sub deDupl() Dim cell As Range, chr10 As String, arr Di
Sub deDupl()
Dim cell As Range, chr10 As String, arr
Dim c As Collection, a, temp As String
Dim i As Long
chr10 = Chr(10)
For Each cell In Selection
arr = Split(decap(cell.Value), chr10)
Set c = New Collection
On Error Resume Next
For Each a In arr
c.Add a, CStr(a)
Next a
On Error GoTo 0
temp = ""
For i = 1 To c.Count
temp = IIf(temp = "", c.Item(i), temp & chr10 & c.Item(i))
Next i
cell.Value = encap(temp)
Next cell
End Sub
Public Function decap(s As String) As String
decap = Mid(s, 2, Len(s) - 2)
End Function
Public Function encap(s As String) As String
encap = "(" & s & ")"
End Function
之后的单元格:
如果动态数组公式唯一:
=TEXTJOIN(CHAR(10),TRUE,UNIQUE(FILTERXML("<a><b>"&SUBSTITUTE(A1,CHAR(10),"</b><b>")&"</b></a>","//b")))
=TEXTJOIN(CHAR(10),TRUE,UNIQUE(FILTERXML("每个单元格中是否有最多的项目数?如果是这样,您可能想在数据选项卡下考虑文本到列,并将单元格拆分为列。因此B1=30JNK11BR00 4,C1=30JNK11AA00 4等。然后可以使用简单的技术来删除行中的重复。Excel公式在使用多个D时并不特别强大。单个单元格中的ata项。