Vba Excel将下拉列表中的所有数据提取到列中

Vba Excel将下拉列表中的所有数据提取到列中,vba,excel,Vba,Excel,我从其他工作表复制了一个下拉列表单元格,并试图获取其所有项目的名称。下拉列表是通过excel属性按链接创建的,不使用组合框。有没有办法获取下拉列表中的所有项目? 表示获取映射到下拉列表的原始列表 我试图通过VB脚本也得到它,但它不工作 Dim dd As DropDown Set dd = ActiveSheet.DropDowns("MyDropDown") 当我调试该代码时,它显示“无法获取工作表类的dropdowns属性”错误 Set dd = ActiveSheet.DropDowns

我从其他工作表复制了一个下拉列表单元格,并试图获取其所有项目的名称。下拉列表是通过excel属性按链接创建的,不使用组合框。有没有办法获取下拉列表中的所有项目? 表示获取映射到下拉列表的原始列表

我试图通过VB脚本也得到它,但它不工作

Dim dd As DropDown
Set dd = ActiveSheet.DropDowns("MyDropDown")
当我调试该代码时,它显示“无法获取工作表类的dropdowns属性”错误

Set dd = ActiveSheet.DropDowns("MyDropDown")
线和这个 对我没有帮助。 是否ActiveSheet.DropDowns(“MyDropDown”)仅适用于组合框?
那么,我如何使用excel属性或VB脚本获取所有项目?

啊,您最初的问题没有明确说明您使用的是数据验证。要循环浏览数据验证列表中的所有项目,可以使用以下代码:

Sub loopthroughvalidationlist()
     Dim inputRange As Range
     Dim c As Range
     ' Change range below to first cell in your list
     Set inputRange = Evaluate(Range("J6").Validation.Formula1)
     For Each c In inputRange
        MsgBox (c)
     Next c
End Sub