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