这对我而言是新的。我试图计算我的ws中有多少个不同的值,问题在于相同的值重复多次,我只想计算一次。有些朋友试图帮助我处理代码,但我现在有点迷路了,例如我不知道为什么我要使用某个函数,或者为什么我必须将“Option Explicit”放在它的上面,任何想法是受欢迎的。在Excel工作表列中计算唯一值
Option Explicit
Function CountUnique(datarange As Range)
Dim datarange
Dim CheckCell
Dim Counter As Double
Counter = 0
For Each CheckCell In datarange.Cells
Counter = Counter + (1/(WorksheetFunction.CountIf(datarange, CheckCell.Value)))
Next
CountUnique = Counter
End Function
您可以通过创建数据透视表实现。如果您确定VBA是唯一的方法,那么请通过ADODB(工作簿应保存在驱动器中)或循环内的字典来查看SQL Distinct与聚合函数等解决方案。 – omegastripes