|
Sub try()
'将数据一次性写入数组,判断分析后,再一次性写入工作表,速度较快
'你示例数据在A列,但原程序的语句Cells(i, 2)在B列,自己结合实际修改
Dim br
Row1 = Range("A65536").End(xlUp).Row
arr = Range("A2:A" & Row1)
ReDim br(1 To Row1 - 1, 1 To 1)
For i = 1 To Row1 - 1
s = arr(i, 1) '原为s = Cells(i, 1)
If s Like "DN*" And s Like "*×*" Then
p = InStr(3, s, "×")
a = Val(Mid(s, 3, p - 1))
b = Val(Mid(s, p + 1, Len(s) - p))
If a > 0 And a < 150 And b > 0 And b < 8.2 Then
br(i, 1) = "末端" 'Cells(i, 5) = "末端"
End If
End If
Next
[E2].Resize(Row1 - 1, 1) = br
End Sub |
|