使用不同的验证更改范围的InCellDropdown

时间:2018-05-07 13:34:01

标签: excel-vba vba excel

我有一张Excel表格,其中包含多个具有不同数据验证的单元格。使用ToggleButton我想打开或关闭下拉列表。我想出了以下代码:

Sub ToggleButton1_Click()

If ToggleButton1.Value = True Then

Dim rng As Range
Set rng = Range("activeFields")
rng.Validation.InCellDropdown = False

Else

Set rng = Range("activeFields")
rng.Validation.InCellDropdown = True

End If
End Sub

范围“activeFields”是具有数据验证的所有单元格的命名范围。如果我选择具有相同数据验证的字段,则代码才有效。有没有办法让它适用于所有细胞而无需单独选择它们?有很多。 非常感谢你的帮助!

1 个答案:

答案 0 :(得分:0)

使用循环:

Sub kfhsdf()
    Dim r As Range, rr
    Set r = Range("mylist")

    MsgBox Range("mylist").Address(0, 0)
    For Each rr In r
        rr.Validation.InCellDropdown = False
    Next rr
End Sub

enter image description here

Range("mylist")处于脱节状态。