VBA 如果工作表1上的单元格(或范围)包含任何值,则清除工作表2上单元格范围的内容



我正在尝试实现一些对你们来说很简单的事情,但对我自己作为初学者来说有点困难。

我正在尝试为以下示例创建脚本:

"如果工作表 A1:A4 上的

单元格 A1:A1 包含任何值(文本或整数),则清除工作表 1 上的 A2:A4"

我试图构建一些脚本,但都失败了。

非常感谢!

试试这个

Sub Clear()
 If Not IsEmpty("A1") And Not IsEmpty("A2") And Not IsEmpty("A3") And Not IsEmpty("A4") Then
    Range("A1:A4").Clear
 End If
End Sub

怎么样:

Sub ClearCell()
    Dim r As Range
    For Each r In Sheets("Sheet1").Range("A1:A4")
        If r.Value <> "" Then Sheets("Sheet2").Range(r.Address).Clear
    Next r
End Sub

这假设您需要逐个单元格进行检查。

这是一个行,当单元格值为空字符串时,将计算单元格值。

    Public Sub ClearRange()
        If Application.WorksheetFunction.CountIf(Range("a1:a4"), "<>") > 0 Then Range("a1:a4").ClearContents
    End Sub

最新更新