2016-06-06 4 views
0

Я пытаюсь достичь чего-то, что было бы довольно просто для вас, но оказалось для меня немного трудным, как новичок.VBA Если ячейка (или диапазон) на листе 1 содержит любое значение, то ясное содержимое диапазона ячеек на листе 2

Я пытаюсь создать сценарий следующий пример:

«Если клетки A1: A4 на sheet1 содержат любое значение (текст или INT), а затем сотрите A1: A4 на sheet2»

Я пытался построить несколько скриптов, но все не удалось.

Большое спасибо!

ответ

0

Попробуйте

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 
0

Как насчет:

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 

Это предполагает, вам нужно проверить, чтобы ячейка за ячейкой.

0

Вот один лайнер, значение ячейки подсчитывается, когда это пустая строка.

Public Sub ClearRange() 
     If Application.WorksheetFunction.CountIf(Range("a1:a4"), "<>") > 0 Then Range("a1:a4").ClearContents 
    End Sub 
Смежные вопросы