EXCEL VBA 关于Combox:如何将一张表内的一列数据导入到它的列表中?

来源:百度知道 编辑:UC知道 时间:2024/07/01 03:00:48
我想用EXCEL VBA做这样一件事情:
1.一个combox显示地域,如北京市,上海市,河北省,等等。这些数据很多,都列在一张表里,每次Initialize时,添加到combox列表中,代替AddItem(输许多AddItem我觉得好烦)
2.地域选好后,另一个combox相应会显示出与该地域匹配的地区。比如,第一个combox选定“上海市”,第二个combox会从“地区表”中找到属于上海市的区添加进来供选择,如“静安区、卢湾区”等等。
应该是常见的用法,可我不会,请指教!

第一个问题:在COMBOX的里有ListFileRange项里写上单元格的数据区域就行了,例如:Sheet2!A1:A10
第二个问题:跟第一个方法差不多,不过需要用VBA带码在工作表中查出区域来.
Private Sub ComboBox1_Change()
combbox2.ListFileRange = "查找出的区域"
End Sub
如果这些城市名的位置没有规律,那就只有用AddItem来追加了

第一个问题,在Auto_Open或ThisWorkbook_Open事件中添加代码将这张表中的数据使用For Next循环加入到复合框中。
第二个问题,在ComboBox1的Change事件中添加ComboBox2的内容。
没有示例文件,不太好说。你可以到http://club.ExcelHome.nethttp://www.ExcelJY.com上发帖去问问。

1、定义数据名称,然后赋值给combox应该可以。
2、第2个combox用高级筛选或者for each循环语句也可以啊。