当前位置: 代码迷 >> VBA >> 让EXCEL单元格具有下拉列表功能(ComboBox)解决方法
  详细解决方案

让EXCEL单元格具有下拉列表功能(ComboBox)解决方法

热度:3955   发布时间:2013-02-26 00:00:00.0
让EXCEL单元格具有下拉列表功能(ComboBox)
今日在做一个让EXCEL和ComboBox类似这类控件组合的文件。挺方便实用的。

1.新建一个EXCEL文件,点“视图”-》“工具栏”,选择Visual   Basic。再点VB面板的“控件工具箱”,选择一个ComboxBox控件(组件)(同时设置此控件为非打印对象,以免打印时,出现控件)。这里,你也可以选择其它控件,看你具体使用情况,可适当变动。

2.按Alt+F11,进入VBA编程界面。双击“ThisWorkbook”(就是本EXCEL对象),输入代码:

Private   Sub   Workbook_Open()
        Sheet1.ComboBox1.Visible   =   False
End   Sub

这个语句的作用是,启动EXCEL文件时,不显示控件。

再双击“Sheet1”,输入代码:

Private   Sub   ComboBox1_Change()
     
End   Sub

Private   Sub   ComboBox1_Click()
        Selection.Value   =   Sheet1.ComboBox1.Text
End   Sub

Private   Sub   Worksheet_SelectionChange(ByVal   Target   As   Range)
        If   Target.Column   =   6   Then   ‘这里6是说,当点击第六列时,才启动ComboBox
                With   Sheet1.ComboBox1
                        .Visible   =   True
                        .Width   =   Target.Width
                        .Height   =   Target.Height
                        .Left   =   Target.Left
                        .Top   =   Target.Top
                        .Clear
                        .AutoSize   =   True
                        .AddItem   “张三”
                        .AddItem   “李斯”
                        .AddItem   “王武”
                        .AddItem   “陶喆”
                End   With
        End   If
End   Sub
好了,这样就差不多了。你可以适当修改、扩充功能。

(本文mxay.com原创,转贴请注明来源:mxay.com)  


------解决方案--------------------------------------------------------
直接使用序列更简单啊
------解决方案--------------------------------------------------------
使用有效性更方便呀
------解决方案--------------------------------------------------------
mark
------解决方案--------------------------------------------------------
原创顶起
  相关解决方案