2017-07-27 232 views
1

我有一個用戶窗體1個組合框和3個文本框。我想使用vlookup根據組合框中的選擇顯示texbox中的值。第一個文本框可以工作,但之後會出錯。請幫助。 這裏是我的代碼:Excel VBA用戶窗體使用vlookup

Private Sub ComboBox1_Change() 
    Description = Application.VLookup(ComboBox1.Value, Range("A1:B17"), 2, 0) 
    TextBox1.Value = Description 
    Platform = Application.VLookup(ComboBox1.Value, Range("A1:B17"), 3, 0) 
    TextBox2.alue = Platform 
End Sub 
+2

這部分'Application.VLookup(ComboBox1.Value,範圍( 「A1:B17」),3,0)'返回一個錯誤,因爲你想返回第3當您僅用2列('Range(「A1:B17」)')定義範圍時 –

+0

此外,您輸入錯誤:'TextBox2.alue = Platform' - 您錯過了'Value'中的'V'。 –

+0

在發佈問題之前,請做一些基本的錯誤檢查。您的問題僅僅是因爲您在代碼中存在拼寫錯誤。投票以低質量解決這個問題。 – teylyn

回答

1

由於在評論時,你指的3列提到的,你應該在你的範圍內至少3列。 Read more about VLookup here

嘗試這樣的:

Private Sub ComboBox1_Change() 

    Description = Application.VLookup(ComboBox1.value, Range("A1:C17"), 2, 0) 
    TextBox1.value = Description 
    Platform = Application.VLookup(ComboBox1.value, Range("A1:C17"), 3, 0) 
    TextBox2.value = Platform 

End Sub