将列检查添加到唯一值函数

我有这个函数我用来遍历一个范围,并计算有多less个唯一值:

Function CountUniqueValues(InputRange As Range) As Long Dim cl As Range, UniqueValues As New Collection Application.Volatile On Error Resume Next For Each cl In InputRange UniqueValues.Add cl.Value, CStr(cl.Value) Next cl On Error GoTo 0 CountUniqueValues = UniqueValues.Count End Function CountUniqueValues(Range("B1:B100")) 

我需要在for循环中添加一个检查到另一列:

 If A1 = "P" Then UniqueValues.Add cl.Value, CStr(cl.Value) End If 

col A显然必须像B一样增加。 有任何想法吗?

使用:

 If Range("A" & c1.Row) = "P" Then