0
我想在另一个列表中根据用户选择填写下拉列表。在线找不到与其相关的任何内容。基于另一个选择列表动态更新选择列表
我有一个名为lookupDept包含下表工作簿:
A B
== ==============================
BS Business School
CG Chemical Engineering
其中列A具有定义的名称DEPTCODE和塔B具有定义的名称DEPTNAME。我有一个名为lookupModule一个第二个工作簿包含如下表:
A B C
====== ================================================== ==
BSA005 Organisational Behaviour BS
BSA007 Skills for Study BS
CGA001 Fluid Mechanics I MEng & BEng Status CG
CGA002 Stagewise Processes CG
我试图更新cbo_moduleCode我的形式来选择的范围中列A在lookupDept列相匹配C in lookupModule。这是我使用的代码:
因此,如果用户挑选BS - 商学院形式(这从lookupDept工作簿中提取,我想包含BS所有字段列C 。在lookupModule工作簿中选择的。这是我使用至今代码:。
Private Sub UserForm_Initialize()
Dim c_deptCode As Range
Dim c_deptName As Range
Dim deptCodes As Variant
Dim deptNames As Variant
Dim ws_dept As Worksheet
Dim ws_misc As Worksheet
Set ws_dept = Worksheets("lookupDept")
Set ws_misc = Worksheets("lookupMisc")
' Assign each range to an array containing the values
deptCodes = Choose(1, ws_dept.Range("deptCode"))
deptNames = Choose(1, ws_dept.Range("deptName"))
' Create deptcode+deptname cbo
For i = 1 To ws_dept.Range("deptCode").Rows.Count
CombinedName = deptCodes(i, 1) & " - " & deptNames(i, 1)
cbo_deptCode.AddItem CombinedName
Next i
End Sub
是否有其他方法,您不必使用自动过滤器? – methuselah
lookupModule – methuselah
只有一行时,你看到的结果是什么?是否有匹配的行,或根本没有? – nutsch