0
我設法遍歷兩列來查找一列中的值是否出現在另一列中。VBA excel,在列中找到對應的值
現在下一步是確定兩列中的值是否在值的右側的單元格中包含相同的值。
所需結果和當前結果的圖片應解釋我想實現的目標。
P.S.不要被代碼弄糊塗,因爲我的工作簿中的列位於兩張不同的工作表上。
我曾嘗試通過循環列兩次,一旦我得到一個匹配的確認,但在這一點上,我只是失去了....對不起
Sub loopDb()
Set dbsheet1 = ThisWorkbook.Sheets("Sheet1")
Set dbsheet2 = ThisWorkbook.Sheets("Sheet2")
lr1 = dbsheet1.Cells(Rows.Count, 1).End(xlUp).Row
lr2 = dbsheet2.Cells(Rows.Count, 1).End(xlUp).Row
For x = 2 To lr1
act1 = dbsheet1.Cells(x, 1)
For y = 2 To lr2
act2 = dbsheet2.Cells(y, 1)
If Not dbsheet2.Cells(y, 3).Value = "Match" Then
'Only compare if previoulsy not done or resulted in "No match"
If act2 = act1 Then
dbsheet2.Cells(y, 3).Value = "Match"
If dbsheet2.Cells(y, 3).Value = "Match" Then
For i = 2 To lr1
If dbsheet2.Cells(y, 1).Value = dbsheet2.Cells(i, 1).Value Then
dbsheet2.Cells(y, 4).Value = "Match"
Else
dbsheet2.Cells(y, 4).Value = "No match"
End If
Next i
End If
Else
dbsheet2.Cells(y, 3).Value = "No match"
End If
End If
Next y
Next x
End Sub
爲什麼不使用'application.worksheetfunction.match(col1value,col2,0)'和'和'在你的邏輯,所以'如果MATCH1和MATCH2 then' –