假如是在A列,放在B列,弹出窗口统计多少电话
按ctrl+F11,打开VBA编辑窗口-菜单-插入-模块-在右边空白处-粘贴以下代码-按F5就行,放在B列 重复的电话号码,弹出窗口统计多少电话。
Sub AA()
Dim Dic As Object
Dim arr, k%, item
Application.ScreenUpdating = False
Application.Calculation = xlManual
Set Dic = CreateObject("Scripting.Dictionary")
arr = Range("A1:A" & [A65535].End(xlUp).Row())
For k = 1 To UBound(arr)
On Error Resume Next
If Val(arr(k, 1)) <> "" Then
If Not Dic.Exists(arr(k, 1)) Then
Dic.Add arr(k, 1), arr(k, 1)
End If
End If
Next
ReDim arr(1 To Dic.Count, 1 To 1)
k = 0
For Each item In Dic.KEYS
k = k + 1
arr(k, 1) = Dic(item)
Next
Dic.RemoveAll
Range("B1").Resize(UBound(arr), 1) = arr
Application.Calculation = xlAutomatic
Application.ScreenUpdating = True
a = Application.WorksheetFunction.Count(Range("B1:B1000"))
MsgBox a
End Sub
假如数据A1:A5
=SUM(1/COUNTIF(A1:A5,A1:A5))
输入公式后,按CTRL+SHIFT+回车,数组公式
数组函数,就像上面两位仁兄说的,不过数组的计算公式比较难理解,如果你想解析,可以在线联系我,帮你解析
假如数据在A1:A10
=SUMPRODUCT(1/COUNTIF(A1:A10,A1:A10))
最简单的方法,点高级筛选,选不重复记录。最后count一下,OK。