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

时间:2016-02-18 21:39:41

标签: excel vba excel-vba

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

我试图通过VB脚本获取它但它不起作用。

Dim dd As DropDown
Set dd = ActiveSheet.DropDowns("MyDropDown")

当我调试该代码时,它显示"无法获得工作表类的下拉属性"错误

Set dd = ActiveSheet.DropDowns("MyDropDown")

行和Excel dropdowns in VBA: "Unable to get the DropDowns property of the Worksheet class" 没帮我 ActiveSheet.DropDowns(" MyDropDown")是否仅适用于Combo Box? 然后我如何使用excel属性或VB脚本获取所有项目?

1 个答案:

答案 0 :(得分:1)

啊,您的原始问题并没有明确表明您使用的是数据验证。要遍历数据验证列表中的所有项目,您可以使用以下代码:

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