Добавляет текущую дату в ячейку из "А" столбца при редактировании "С" столбца
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.Count > 1 Then Exit Sub If Not Intersect(Target, Range("C2:C9999")) Is Nothing Then With Target(1, -1) .Value = Now .EntireColumn.AutoFit End With End If End Sub
[/vba]
Добавляет текущую дату в ячейку из "А" столбца при редактировании "С" столбца
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.Count > 1 Then Exit Sub If Not Intersect(Target, Range("C2:C9999")) Is Nothing Then With Target(1, -1) .Value = Now .EntireColumn.AutoFit End With End If End Sub
Уважаемые знатоки, подскажите пожалуйста, что нужно заменить в этом макросе, что бы дата ставилась только по определенному значению в ячейке? Например, в водим в ячейку A1 "В работе" при этом в ячейке A2 ничего не происходит, а если в ячейку A1 вводим "завершено", то в ячейке A2 ставится текущая дата и время.
Уважаемые знатоки, подскажите пожалуйста, что нужно заменить в этом макросе, что бы дата ставилась только по определенному значению в ячейке? Например, в водим в ячейку A1 "В работе" при этом в ячейке A2 ничего не происходит, а если в ячейку A1 вводим "завершено", то в ячейке A2 ставится текущая дата и время.nexbsp
в первой строке меняем, во второй получаем дату-время [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("A1:D1")) Is Nothing Then If Target.Value = "завершено" Then Application.EnableEvents = False Target.Offset(1, 0).Value = Now Application.EnableEvents = True End If End If End Sub
[/vba]
в первой строке меняем, во второй получаем дату-время [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("A1:D1")) Is Nothing Then If Target.Value = "завершено" Then Application.EnableEvents = False Target.Offset(1, 0).Value = Now Application.EnableEvents = True End If End If End Sub
Скажите пожалуйста, а если условий несколько, например "завершено" и/или "приостановлено" и т.п., какие строчки и куда нужно добавить? Или может как-то перечислить все возможные условия через ; или or?
Скажите пожалуйста, а если условий несколько, например "завершено" и/или "приостановлено" и т.п., какие строчки и куда нужно добавить? Или может как-то перечислить все возможные условия через ; или or?nexbsp
Спасибо большое! Вот такой у меня в общей сложности получился код и он прекрасно работает:
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.Count > 1 Then Exit Sub If Not Intersect(Target, Range("H3:H99999")) Is Nothing Then If Target.Value = "завершено" Or Target.Value = "отправлено" Or Target.Value = "в ожидании" Or Target.Value = "запрос" Then Application.EnableEvents = False Target.Offset(0, -1).Value = Now Application.EnableEvents = True End If End If
[/vba]
Спасибо большое! Вот такой у меня в общей сложности получился код и он прекрасно работает:
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.Count > 1 Then Exit Sub If Not Intersect(Target, Range("H3:H99999")) Is Nothing Then If Target.Value = "завершено" Or Target.Value = "отправлено" Or Target.Value = "в ожидании" Or Target.Value = "запрос" Then Application.EnableEvents = False Target.Offset(0, -1).Value = Now Application.EnableEvents = True End If End If