- Sub test()
- Dim arrRule(99) As Boolean, arrOri, arrNo, Mn&, Mx&, i&, j&, Rng As Range, s$, n&
- With Sheets("主界面")
- For Each Rng In .[c2].CurrentRegion
- arrRule(Val(Rng)) = True
- Next Rng
- arrOri = .[c6].CurrentRegion
- arrNo = .[a6].CurrentRegion
- Mn = .[c4]: Mn = .[f4]
- End With
- For i = 1 To UBound(arrOri)
- For j = 1 To UBound(arrOri, 2)
- n = -arrRule(Val(Left(arrOri(i, j), 2))) - arrRule(Val(Right(arrOri(i, j), 2)))
- If n >= Mn And n <= Mx Then arrOri(i, j) = "'" & arrNo(i, 1) Else arrOri(i, j) = ""
- Next j
- Next i
- Sheets("生成区").[c3].Resize(UBound(arrOri), UBound(arrOri, 2)) = arrOri
- End Sub
复制代码 |