Макрос Excel для очистки ячеек через 4 месяца И при заполнении другой ячейки - PullRequest
0 голосов
/ 12 декабря 2018

Я работаю со списком, в котором мне нужно автоматически очищать данные в столбце GI, если выполняются два критерия:

  1. Если столбец N имеет значение

И

Если столбец A старше 4 месяцев

Я начал поиск и поиск, и нашел что-то, что, я думаю, может быть на правильном пути, используя код If DateDiff, ноЯ понятия не имею, как настроить код для соответствия для каждой строки, а также принять во внимание, что столбец N должен быть заполнен.

Sub Workbook_Open()
 If Not Intersect(Target, Range("N6:N2000")) Is Nothing Then

  If DateDiff("d", FileDateTime(ThisWorkbook.FullName), Now) >= 120 Then
  ' this above needs to only check on cell at the time in A??? 

        Target.Offset(0, -5).ClearContents
        Target.Offset(0, -6).ClearContents
        Target.Offset(0, -7).ClearContents

    ThisWorkbook.Save
  End If
 End If
End Sub

Я приближаюсь?

1 Ответ

0 голосов
/ 13 декабря 2018

Наконец-то получил решение:

Sub ClearCells()
  Dim Cel As Range, Ws As Worksheet
   Set Ws = Sheets("NameOfSheet")
     For Each Cel In Ws.Range("A6", Ws.Range("A" & Rows.Count).End(xlUp))
     If DateDiff("d", Cel, Date) > 120 And Cel.Offset(, 13) <> "" Then 
     Cel.Offset(, 6).Resize(, 3).ClearContents
    Next Cel
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...