繁体   English   中英

宏以清除数据验证单元格的内容,如果特定的单元格公式更改了它的值

[英]Macro To Clear Contents of a Data Validation Cell IF Specific Cell Formula Changes it's Value

我在单元格N6中有一个数据验证列表。 清单是:房屋,常客,建筑商,私人。

单元格M8具有以下公式:= IF(N6 =“ Housing”,“ Grade:”,“”)

N8单元中有一个数据验证列表。 列表为:第一,第二,第三。

如果要更改或清除单元格N6,我希望能够清除单元格N8。 我已经尝试过此VBA代码,但未按预期清除单元格N8:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("N6")) Is Nothing Then
If Range("N6") <> "" Then Range("N8").ClearContents
End If
End Sub

我也尝试过此VBA代码,但它也不能清除单元格N8。

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("$N6")) Is Nothing Then
    Range("N8").ClearContents
End If
End Sub

请帮助我解决这个问题。

在工作表的专用代码表中尝试此操作(右键单击工作表名称选项卡,然后选择查看代码),

Private Sub Worksheet_Change(ByVal Target As Range)

    If Not Intersect(Target, Range("N6")) Is Nothing Then
        application.enableevents = false
        Range("N8") = vbnullstring
        application.enableevents = true
    End If

End Sub

先前的错误尝试可能会使事件禁用。 application.enableevents = true放入VBE的即时窗口中,然后按Enter。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM