跪求高手指点迷津

2025-02-27 07:14:26
推荐回答(1个)
回答1:

你的代码有个问题:
在For j = 1 To 3027循环中,
如果没有找到匹配项使得value1 = value2,
那么在for循环结束后,活动窗体是Windows("1.xlsx"),
value1 = Cells(i, 10).Value中单元格是1.xlsx中的单元格。
现代码修改如下:
Sub gylx()
Dim i, j As Integer
Dim value1, value2 As String
For i = 1 To 3568
Windows("3011.3.25-9L3240-CPP明细表.xls").Activate
value1 = Cells(i, 10).Value
Windows("1.xlsx").Activate
For j = 1 To 3027
Cells(j, 5).Select
value2 = Cells(j, 5).Value
If value1 = value2 Then
Cells(j, 8).Copy
Windows("3011.3.25-9L3240-CPP明细表.xls").Activate
Cells(i, 26).Select
ActiveSheet.Paste
Exit For
End If
Next j
Next i
End Sub