0
我正在編譯一份員工CPD類的列表以及它們的工作小時數,爲每個用戶創建打印輸出。我從多個工作表中提取數據,並且在VLOOKUP不斷查找相同數據時遇到問題。我的代碼目前是:用於避免重複的VLookups循環的VBA
result = lookup.Find(name) Is Nothing
If (result = False) Then
For Each cell In lookup
className = Application.VLookup(name, lookup, 7, True)
classHours = Application.VLookup(name, lookup, 9, True)
Sheets("employee output").Range("B" & counter).Formula = className
Sheets("employee output").Range("C" & counter).Formula = classHours
empHours = empHours + classHours
counter = counter + 1
numClasses = numClasses + 1
corporate = Range("B" & i) *** vba precompliles the loop so this doesn't work *
Set lookup = Range("corporate:K") ** doesn't work either***
Next
End If
所以我需要限制查找範圍的範圍或以某種方式避免找到相同的數據。任何幫助將不勝感激...
在查找中將true更改爲false。它會找到完全匹配的。 –
它仍然一遍又一遍地找到相同的數據。這就是我需要避免的。 –
在'lookup'中找到'name'後,在'lookup'的第一列找到'name'的位置,並通過這個值來抵消'lookup'(你也可以調整' lookup',所以它總是會在同一個單元格中結束)。 –