本帖最后由 scl5801 于 2016-8-22 10:19 编辑
laoau123 发表于 2016-8-22 10:10
是否直接改就不行,
instr当然可以用
Sub lqxs()
Dim arr, i&, brr, j&, m&, n&
Sheet1.Activate
[l10:l5000].ClearContents
arr = [c9].CurrentRegion
brr = [j9].CurrentRegion
For i = 2 To UBound(brr)
m = 0
For x = 2 To UBound(arr)
n = 0
For j = 1 To UBound(arr, 2)
If InStr("|" & brr(i, 1) & "|" & brr(i, 2) & "|", "|" & arr(x, j) & "|") Then n = n + 1 '两条IF语句改为一条,结果不能出
'将两条if改为 if arr(x,j)=brr(i,1) and arr(x,j)=brr(i,2) then n=n+1
Next
If n = 2 Then m = m + 1 '直接判断如何改,不用先判断n=2,然后m累加1
Next
brr(i, 3) = m
Next
[j9].CurrentRegion = brr
End Sub
|