Подскажите пожалуйста, текущий код вводит дату в ячейку D при заполнении E, как можно сделать, чтобы дата вводилась ещё и в A при заполнении B? Т.е. работало одновременно.
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
For Each cell In Target 'проходим по всем измененным ячейкам If Not Intersect(cell, Range("E2:E10000")) Is Nothing Then 'если изменененная ячейка попадает в диапазон A2:A100 With cell.Offset(0, -1) 'вводим в соседнюю справа ячейку дату .Value = Now End With End If Next cell End Sub
[/vba]
Подскажите пожалуйста, текущий код вводит дату в ячейку D при заполнении E, как можно сделать, чтобы дата вводилась ещё и в A при заполнении B? Т.е. работало одновременно.
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
For Each cell In Target 'проходим по всем измененным ячейкам If Not Intersect(cell, Range("E2:E10000")) Is Nothing Then 'если изменененная ячейка попадает в диапазон A2:A100 With cell.Offset(0, -1) 'вводим в соседнюю справа ячейку дату .Value = Now End With End If Next cell End Sub
Nic70y, Спасибо большое, я через точку с запятой пробовал по привычке. А возможно ли сделать, чтобы после однократного заполнения даты, изменения ячеек B и E не влияло на неё, а то при коррекции, дата будет меняться, а даже откат назад невозможен, можно случайно всё испортить.
Nic70y, Спасибо большое, я через точку с запятой пробовал по привычке. А возможно ли сделать, чтобы после однократного заполнения даты, изменения ячеек B и E не влияло на неё, а то при коррекции, дата будет меняться, а даже откат назад невозможен, можно случайно всё испортить.KIK
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("B2:B10000, E2:E10000")) Is Nothing Then If Target.Offset(0, -1) = "" Then Target.Offset(0, -1) = Now End If End Sub
[/vba] [p.s.]Если нужна дата без времени, то Now меняем на Date[/p.s.]
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("B2:B10000, E2:E10000")) Is Nothing Then If Target.Offset(0, -1) = "" Then Target.Offset(0, -1) = Now End If End Sub
[/vba] [p.s.]Если нужна дата без времени, то Now меняем на Date[/p.s.]Nic70y
Nic70y, Вечер добрый Подскажите пожалуйста а как поменять первоначальный код что бы проверял в указанном диапазоне значения ячеек ( допустим если в А2:А100 в ячейке 1 то в соседнюю с датами ставиться текущая дата (сегодняшняя) если нет то дата не меняется.
Nic70y, Вечер добрый Подскажите пожалуйста а как поменять первоначальный код что бы проверял в указанном диапазоне значения ячеек ( допустим если в А2:А100 в ячейке 1 то в соседнюю с датами ставиться текущая дата (сегодняшняя) если нет то дата не меняется.Extybr
Сообщение отредактировал Extybr - Среда, 23.09.2020, 00:07