2016-03-06 39 views
0

我是一名vba新手,但希望能找到解決我的問題的簡單方法。我試圖從2列中查找值,看看它們是否在另外3個獨立的列中找到,但是有輕微的扭曲。列G和H分別具有名和姓,而列F和B具有我想搜索匹配的名字,列C具有LastNames,我也想搜索。基本上我希望Excel檢查Col G和H是否有First Name,如果是,請檢查Col C是否有姓。如果所有這些匹配,則寫「真」對col一,我已經使用嵌套IF語句試圖如該VBA從其他3列中的2列中查找值

=IF(OR(G2=F2:F20000, G2=B2:B20000, AND(H2=C2:C20000)), "", "Not Found")

這個公式似乎可行,但如果我拖下來的20K行它增加了公式範圍並使搜索失敗。我認爲在我可以運行的vba例程中這會更容易些?

幫助讚賞!

謝謝

+1

因爲它看起來對我來說,這是一個數組公式...我想你想檢查是否有一個行持有無論是在F或G中的名稱,並在C中的姓氏......我會建議像IF(OR(((G2 = $ F $ 2:$ F $ 20000)+(G2 = $ B $ 2:$ B $ 20000))*(H2 = $ C $ 2:$ C $ 20000)), 「,」未找到)「作爲數組公式(需要使用Ctrl + Shift + Enter確認) –

回答

0

問題是你需要使用絕對引用,像這樣。

=IF(OR(G2=$F$2:$F$20000, G2=$B2:$B$20000, AND(H2=$C$2:$C$20000)), "", "Not Found") 
+0

感謝您的支持,我現在可以將公式向下完美拖拽,但我發現結果似乎只是搜索而不是我指定的範圍,這是IF語句的限制嗎? – Wrigst