怎样使用VBA列表框控件打造增强型数据有效性?

2025-10-28 01:22:30

1、首先在开发工具中打开VBA编辑器

怎样使用VBA列表框控件打造增强型数据有效性?

2、在单元格区域当中输入一些内容作为例子

怎样使用VBA列表框控件打造增强型数据有效性?

3、在VBA编辑器中插入模块

怎样使用VBA列表框控件打造增强型数据有效性?

4、在模块当中输入如下代码,然后运行

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

 

On Error Resume Next

 

If Target.Column > 1 Then Me.ListBox1.Visible=False: Exit Sub

 

                              '如果不是第一列则隐藏列表框并退出程序

 

    With ListBox1

 

    .Visible=True    '如果是第一列则显示列表框

 

    .LinkedCell=Target.Address       '列表框的链接地址设置为当前单元格

 

    .BoundColumn=1

 

        '将第一列的数据与单元格连接,即第二、三列仅共查看,无法输入到单元格中

 

    .ColumnCount=3     '列表框的列数为3

 

    .ColumnHeads=True  '显示表头

 

    .ListStyle=fmListStyleOption  '设置样式

 

    .Left=Target.Left+Target.Width

 

      '列表框的左边框等于当前单元格左边距加单格的宽度,即位于当前单元格的右边

 

    .Top=Target.Top                '列表框的上边距等于当前单元格的上边距

 

    .ColumnWidths="35;35;35"         '设置列表框三列的宽度

 

    .ListFillRange="e2:g11"  '设置列表框的数据引用源,也可改为动态数据源,将

 

                    行数11改为worksheetfunction.counta(range("G:G"))

 

    '.ListFillRange="e2:g" & WorksheetFunction.CountA(Range("G:G"))

 

    .ListIndex=0  '单击单元格时默认显示列表框中第一行数据

 

    End With

 

End Sub

怎样使用VBA列表框控件打造增强型数据有效性?

5、单击单元格A2,弹出列表框,列表框的条目即参照区域中的数据。显示列表框的同时列表框第一行数据输入到单元格中,如图

怎样使用VBA列表框控件打造增强型数据有效性?

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢