Excel 查找操作没有结果
以下代码以类似于Excel的Excel 查找操作没有结果,excel,vba,Excel,Vba,以下代码以类似于Excel的VLOOKUP函数的方式将表a中的值与表B中的值进行匹配 代码运行时没有错误,但我在单元格中没有得到任何结果。我怎样才能解决这个问题 Sub LoopTem() Dim ws As Worksheet Dim ws1 As Worksheet Dim i As Integer Dim r As Integer Dim lastRow1 As Integer Dim lastRow2 As Integer Set ws = Worksheets("Proactive
VLOOKUP
函数的方式将表a中的值与表B中的值进行匹配
代码运行时没有错误,但我在单元格中没有得到任何结果。我怎样才能解决这个问题
Sub LoopTem()
Dim ws As Worksheet
Dim ws1 As Worksheet
Dim i As Integer
Dim r As Integer
Dim lastRow1 As Integer
Dim lastRow2 As Integer
Set ws = Worksheets("Proactive Template")
Set ws2 = Worksheets("To")
lastRow1 = ws.Range("Q" & Rows.Count).End(xlUp).Row
lastRow2 = ws2.Range("Q" & Rows.Count).End(xlUp).Row
For i = 2 To lastRow1
For r = 2 To lastRow2
If ws.Cells(i, 18) = ws2.Cells(r, 17) Then
ws.Cells(i, 20) = ws2.Cells(r, 19)
Else
ws.Cells(i, 20) = ""
End If
Next r
Next i
End Sub
找到匹配项后,必须转到第20列中的下一个单元格。现在你没有那么做;因此,无论是否找到匹配项,搜索都将继续,单元格最终会被
ws.Cells(i,20)=“
覆盖
若要在找到匹配项后停止搜索,请使用Exit For
If ws.Cells(i, 18) = ws2.Cells(r, 17) Then
ws.Cells(i, 20) = ws2.Cells(r, 19)
Exit For ' <~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Stop search, iterate to next cell
Else
ws.Cells(i, 20) = "" ' <~~~~~~~~ Otherwise this will overwrite it eventually
End If
如果ws.Cells(i,18)=ws2.Cells(r,17),那么
ws.Cells(i,20)=ws2.Cells(r,19)
请退出“每个问题一个问题”。我删掉了第二个。请随意将其作为单独的问题发布。谢谢让-弗朗索瓦·科贝特