Если понедельник, то добавьте XYZ - PullRequest
0 голосов
/ 02 октября 2018

Подскажите, пожалуйста, как реструктурировать мой код.В данный момент я добавляю дату -1 в конец столбца D (каждый день).Однако когда наступает понедельник, мне нужно добавить дату -3, затем дату -2, а затем дату -1 в конец столбца D.

Вот мой текущий код:

y.Activate
With y1
Dim d As Long
d = Cells(Rows.Count, "D").End(xlUp).Row + 1 'there was an error in the code, I have changed the N to d
Cells(d, "D").Value = Date - 1
End With

Мое предположение будет утверждением IIf?Но опять же, я полагаю, это также требует петли.

Спасибо

1 Ответ

0 голосов
/ 02 октября 2018

Прямо перед строкой Cells(d, "D").Value = Date - 1 введите:

If Weekday(Now()) = 2 Then
    Cells(d, "D").Value = Date - 3
    Cells(d + 1, "D").Value = Date - 2
    Cells(d + 2, "D").Value = Date - 1
Else
    Cells(d, "D").Value = Date - 1
End If

. If Weekday(Now()) будет сравнивать день недели (по-моему, 1 - воскресенье по умолчанию).Таким образом, проверив, является ли это «2», вы можете запустить то, что вы хотите.Я не уверен, что это именно то, к чему вы стремились, но это поместит три разных значения даты, начиная с пятницы и заканчивая в воскресенье.

Возможно, не лучшее решение, но это было мое пониманиевопрос.Если я уйду, дайте мне знать, и я исправлю свой ответ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...