3
基本上我有2個細胞。一個是產品說明,一個是產品編號。它現在的存在方式是,產品描述是數據驗證的,產品編號是通過描述查找的。單元格可以同時具有數據驗證和vlookup嗎?
我想要發生的事情是能夠根據產品編號或產品描述進行查找,以便基本上如果我從下拉列表中選擇產品編號,則會查找產品描述,如果我從產品描述中選擇產品描述下拉列表中查找產品編號。
這是可能的還是我想這是錯誤的方式?
基本上我有2個細胞。一個是產品說明,一個是產品編號。它現在的存在方式是,產品描述是數據驗證的,產品編號是通過描述查找的。單元格可以同時具有數據驗證和vlookup嗎?
我想要發生的事情是能夠根據產品編號或產品描述進行查找,以便基本上如果我從下拉列表中選擇產品編號,則會查找產品描述,如果我從產品描述中選擇產品描述下拉列表中查找產品編號。
這是可能的還是我想這是錯誤的方式?
回答一個老問題,因爲沒有人做了精確的...希望這可以幫助其他人。另請參閱代碼中的註釋。
這不能與Excel公式&確認來完成,因爲它會創建循環引用 [不是說你不能改變循環迭代的次數,但仍...]
正是在VBA簡單得多。 ..這裏是誰想要使用它的任何一個代碼..
Private Sub Worksheet_Change(ByVal Target As Range)
Const sNumRng As String = "$A$1"
Const sDescRng As String = "$B$1"
'# both sListRngNum & sListRngDesc must be of the same size
Const sListRngNum As String = "$K$1:$K$4"
Const sListRngDesc As String = "$L$1:$L$4"
'# EnableEvnent should be disabled first
'# because the code will trigger it again
'# by changing the next cell value
Application.EnableEvents = False
If Target.Address = sNumRng Then
Range(sDescRng).Value = WorksheetFunction.Index(Range(sListRngDesc), _
WorksheetFunction.Match(Target.Value, Range(sListRngNum), 0))
ElseIf Target.Address = sDescRng Then
Range(sNumRng).Value = WorksheetFunction.Index(Range(sListRngNum), _
WorksheetFunction.Match(Target.Value, Range(sListRngDesc), 0))
End If
Application.EnableEvents = True
End Sub
要實現這種紙張的板模塊這個代碼粘貼。 根據您的需要更改範圍地址。此外,這可以通過動態數組,集合等..等..但這是很簡單:)
這是可行的。您需要使用更改事件。通過控制事件「目標」參數,您可以搜索描述或產品編號。 – 2013-03-15 22:04:19