【问题标题】:Clear cells that are dependents and have validation lists清除依赖并具有验证列表的单元格
【发布时间】:2013-06-16 16:56:48
【问题描述】:

我需要一些帮助。我正在设置一个包含多个验证列表的电子表格。每个验证列表都有多个链接到它们的验证列表(依赖项)。当我更改第一个验证列表时,我需要清除所有依赖它的单元格(如果它们附加了验证列表)。

我正在尝试创建一个足够动态的宏,因此我不需要命名范围(无论如何我都有太多要做)。基本上,如果活动单元格更改/它有一个验证列表并有依赖项 - 如果它们中有验证列表,则清除依赖单元格的内容。原则上,这听起来很简单,但它让我死了......!!!!有没有人已经有了这样的宏,或者我会很感激任何建议?谢谢夏兰。

主要思想。

使用动态范围 byval 目标作为范围

如果单元格有依赖项 activecell.dependents.count>0

如果实际单元格有验证列表等。 activecell.specialcells(xlcelltypeallvalidation)

【问题讨论】:

    标签: excel excel-2007 excel-2010 vba


    【解决方案1】:

    以下内容只会在当前工作表中查看,但可以扩展到循环遍历所有工作表。它还只检查 List 类型的验证。

    Sub ClearListValidations()
        Dim ws As Worksheet    'not used currently
        Dim rngCurrent As Range
        Dim rngValids As Range
        Dim strLookup As String
        Dim rng As Range
        Dim varIntersect As Variant
    
        Application.ScreenUpdating = False
        Set rngCurrent = ActiveCell
        On Error Resume Next
        Set rngValids = rngCurrent.SpecialCells(xlCellTypeAllValidation)
        On Error GoTo 0     'reinstate error handling
        If rngValids Is Nothing Then Exit Sub   'no list validations
    
        For Each rng In rngValids
            If rng.Validation.Type = 3 Then     'list validation
                Set varIntersect = Application.Intersect(rngCurrent, _
                    Range(Mid(rng.Validation.Formula1, 2)))
                If Not varIntersect Is Nothing Then
                    rng.ClearContents
                    rng.Validation.Delete
                End If
            End If
        Next rng
        Application.ScreenUpdating = True
    End Sub
    

    基本上,如果 List-Validation 的源与当前单元格相交,它会从单元格中删除内容和验证设置。

    使用MID() 函数是因为Formula1 包含一个等号,我们需要将其丢弃以形成一个Range。

    【讨论】:

    • 非常感谢安德鲁的帮助。注释对于理解方法非常方便。非常感谢 - 干杯。
    • 欢迎您@user1624926。使用 MID() 函数是因为 Formula1 包含等号,我们需要将其丢弃以形成一个范围。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-26
    • 2017-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-19
    相关资源
    最近更新 更多