2017-04-25 88 views
-1

我正在尋找下面的VBA宏。Vlookup與VB宏中的if函數

我希望宏在Excel的工作表1中查找特定值,並使用Excel中工作表2中的值執行VLOOKUP

如果工作表1中的字段中的值爲空,則Excel應顯示空白而不是#N/A

我能夠編寫代碼執行VLOOKUP,但是我真的不知道如何把在IF命令。

Private Sub CommandButton1_Click() 
    Dim ws As Worksheet 
    Set ws = ThisWorkbook.Sheets("Sheet1") 

    With ws 
     .Range("G5:G600").Formula = "=VLOOKUP(F5,Sheet2!D:F,3,0)" 
+0

歡迎StackOverflow上。請注意,這不是免費的代碼寫入服務。然而,我們渴望幫助其他程序員(和有志之士)編寫他們自己的代碼。請閱讀[我如何提出一個好問題](http://stackoverflow.com/help/how-to-ask)上的幫助主題。您可能還想[參觀](http://stackoverflow.com/tour)並在此過程中獲得徽章。之後,請用您迄今編寫的VBA代碼更新您的問題,以完成您希望實現的任務。我們會在這裏等你。隨時準備協助並幫助您完成*您的代碼*。 – YowE3K

+0

至少有50多個類似請求的回答涉及**這個**上** **。簡單的** GOOGLE **至少會顯示其中的一部分。 –

回答

1

訣竅包括IF是確保所有的雙引號轉義:

.Range("G5:G600").Formula = "=IF(F5="""","""",VLOOKUP(F5,Sheet2!D:F,3,0))"