函数 conntif(range(),条件)
在VBA中如果需要使用countif函数,需要将数组写入单元格,因为countif的第一个参数是个range区域 
所以 如下面例子:需要先将 生成的数组写入表格,然后再用函数

 


Sub put_color()
Application.ScreenUpdating = False
With ActiveSheet
r = .[a65535].End(3).Row
ReDim arr(1 To r, 1 To 1)
For i = 1 To r
    arr(i, 1) = Format(.Cells(i, 1), 0) & ":" & .Cells(i, 2)
Next
.[c1].Resize(r) = arr
For i = r To 1 Step -1
     If Application.CountIf(.Range("c1:c" & i), arr(i, 1)) >= 2 Then
      .Range("a" & i).Resize(, 2).Interior.Color = vbYellow
    End If
Next
.[c1].Resize(r) = ""
End With
Application.ScreenUpdating = True
End Sub