工作簿中有几个工作表,表1为数据源,表2为处理结果。
我想要的结果是:当表1“J”列数值与表2“F5”单元格的值相等时,表2的“B”、"C“、”D“、”E“列分别返回表1对应的值。代码如下,运行似乎没问题,但感觉运算速度超慢,是哪里有什么不妥吗?请前辈们不吝指教,谢谢。
Sub test()
Dim x As Range, y%, z As Range
Set z = Sheet2.Range("f5")
For Each x In Sheet1.Range("j2:j166")
If x.Value = z.Value Then
y = y + 1
z(y, -3) = x(1, -6).Value
z(y, -2) = x(1, -7).Value
z(y, -1) = x(1, -3).Value
z(y, 0) = x(1, -0).Value
End If
Next x
End Sub
我想要的结果是:当表1“J”列数值与表2“F5”单元格的值相等时,表2的“B”、"C“、”D“、”E“列分别返回表1对应的值。代码如下,运行似乎没问题,但感觉运算速度超慢,是哪里有什么不妥吗?请前辈们不吝指教,谢谢。
Sub test()
Dim x As Range, y%, z As Range
Set z = Sheet2.Range("f5")
For Each x In Sheet1.Range("j2:j166")
If x.Value = z.Value Then
y = y + 1
z(y, -3) = x(1, -6).Value
z(y, -2) = x(1, -7).Value
z(y, -1) = x(1, -3).Value
z(y, 0) = x(1, -0).Value
End If
Next x
End Sub