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)

http://www.mxay.com/blog/excel-combobox.html

你可能感兴趣的:(VBA)