我將以示例開始我的問題,否則將很難解釋。循環列時忽略其他單元格的值VBA EXCEL
A B C D E (ID)
1 word letter 1
test blabla
other
2 word letter 2
number
3 test true 3
4 other false 4
5 word letter Yes 5
6 word letter Yes 6
7 test letter 7
目標是什麼?
如果我試着用文字來解釋目標,這將很難理解;這也很難解釋:)無論如何,我還添加了我的代碼,如果你對VBA很好,你會更好地理解代碼,然後再看看文本。如果一個值(在這個例子中:字)也在其他行中,那麼我們需要檢查C列,並且如果列C中有一個值我們在C列中找到多於一次(在這個例子中:字母),我們需要重新檢查,如果在A列中該值也出現多次。
所以我已經做了一個SUB,它工作! :)但不是如果有一個單元格中有更多的值。因此,在例子中,當僅存在1在細胞中的值,如在第6行7 &,柱d返回:YES
這是我的代碼爲止。
Sub duplicates()
Dim source As Range
Dim source2 As Range
For Each source In Range("A1", Range("A" & Rows.Count).End(xlUp))
If source.Value <> "" Then
For Each source2 In Range("A1", Range("A" & Rows.Count).End(xlUp))
If source.Value = source2.Value And source.Offset(0, 4).Value <> source2.Offset (0, 4).Value Then
If source.Offset(0, 2).Value = source2.Offset(0, 2).Value Then
source.Offset(0, 3) = "Yes"
End If
End If
Next source2
End If
Next source
End Sub
所以,我們應該回到:是在1行& 2爲好。希望你明白我的目標。 希望有人能幫助。
'A1'中'word''test'與'other'之間有什麼樣的字符?有空格或換行符嗎? – 2013-03-14 16:37:07
數據是導入的,我想這是一個ALT輸入 – user2156096 2013-03-14 21:14:23