我正在尝试编写一个搜索子,查看一个范围内的单元格,然后给出一些参数在第二个范围内找到匹配,有多个值相同,所以在这种情况下我想返回下一个值在第二个范围内。我想我可以为每个循环设置一个,每当第一个范围内的值相同时,下一次循环第二个范围时,调整它以排除我从它返回的第一个值,但是如果它是第一个范围的新值,然后它会再次搜索所有第二个范围,但我似乎无法使它工作(它给出了第一个if语句的类型不匹配的错误)
Sub mySearch()
Dim rng1 As Range
Dim rng2 As Range
Set rng1 = Sheets("Deduped NS Data").Range("E2:E142")
Set rng2 = Sheets("Sheet3").Cells(2, 1)
For Each i In rng1
If i = i.Offset(1) And i = rng2 And i.Offset(, 3) = rng2.Offset(, 8) Then
i.Offset(, 2) = rng2.Offset(, 7)
rng2 = rng2.Offset(1)
ElseIf i = rng2 And i.Offset(, 3) = rng2.Offset(, 8) Then
i.Offset(, 2) = rng2.Offset(, 7)
rng2 = Sheets("Sheet3").Cells(2, 1)
End If
Next i
End Sub