|
代码如下:- Sub ykcbf() '//2024.2.17
- Set d = CreateObject("Scripting.Dictionary")
- arr = Sheets("Sheet1").UsedRange
- ReDim brr(1 To UBound(arr), 1 To 4)
- For i = 2 To UBound(arr)
- s = arr(i, 3)
- If Not d.exists(s) Then
- d(s) = IIf(arr(i, 4) = "达标", 1, 0)
- Else
- d(s) = d(s) + IIf(arr(i, 4) = "达标", 1, 0)
- End If
- Next
- t = d.items
- On Error Resume Next
- For i = 2 To UBound(arr)
- m = m + 1
- For x = 1 To 3
- brr(m, x) = arr(i, x)
- Next
- Sum = 0
- If arr(i, 1) <> Empty Then
- t = d(arr(i, 3))
- For j = 5 To UBound(arr, 2)
- If arr(i, j) <> Empty Then
- If arr(i, j) = "达标" Then
- Sum = Sum + 1
- End If
- End If
- Next
- Sum = Sum + t
- End If
- brr(m, 4) = Sum
- Next
- With Sheets("统计结果")
- .UsedRange.Offset(1) = ""
- .[a2].Resize(m, 4) = brr
- End With
- End Sub
复制代码
|
|