sheet1是数据源表
数据结构如下:
序号 名称 父节点
320001 江苏 0
320002 山东 0
320003 上海 0
320004 江西 0
320005 北京 0
320006 南京 320001
320007 苏州 320001
320008 常州 320001
320009 镇江 320001
320010 无锡 320001
320011 济南 320002
320012 浦东 320003
320013 海淀区 320006
320014 吴江 320007
sheet2表是呈现表:
省份 城市 区县注:城市下拉项根据省份获取,区县下拉项根据城市获取;要在不改变数据源结构的情况下实现。
数据结构如下:
序号 名称 父节点
320001 江苏 0
320002 山东 0
320003 上海 0
320004 江西 0
320005 北京 0
320006 南京 320001
320007 苏州 320001
320008 常州 320001
320009 镇江 320001
320010 无锡 320001
320011 济南 320002
320012 浦东 320003
320013 海淀区 320006
320014 吴江 320007
sheet2表是呈现表:
省份 城市 区县注:城市下拉项根据省份获取,区县下拉项根据城市获取;要在不改变数据源结构的情况下实现。
控件ComboBox来实现下拉列表,并通过比对,并进行赋值。样例代码如下
Private Sub ComboBox1_GotFocus()
With Sheets("数据库")
ComboBox1.Clear
ComboBox2.Clear
Dim x As Long
For x = 2 To .Range("C" & Rows.Count).End(xlUp).Row
If .Cells(x, 3).Value = "0" Then
ComboBox1.AddItem .Cells(x, 1)
ComboBox2.AddItem .Cells(x, 1) & ":" & .Cells(x, 2)
.Range("C10").AddItem .Cells(x, 1)
End If
Next
End With
End Sub