Добрый день! Помогите плиз: нужен макрос если в столбец А вносим любое значение , то в столбце В автоматом появляется дата когда внесли значение. Если значение из ячейки стобца А удаляем то и ячейка в столбце В становится опять пустой. Спасибо!
Добрый день! Помогите плиз: нужен макрос если в столбец А вносим любое значение , то в столбце В автоматом появляется дата когда внесли значение. Если значение из ячейки стобца А удаляем то и ячейка в столбце В становится опять пустой. Спасибо!ПалычЪ
нужен макрос если в столбец А вносим любое значение , то в столбце В автоматом появляется дата когда внесли значение. Если значение из ячейки стобца А удаляем то и ячейка в столбце В становится опять пустой
проделывать . [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then If Target <> "" Then Cells(Target.Row, 2) = Format(Now(), "dd.mm.yyyy") Else Cells(Target.Row, 2) = "" End If End If End Sub
[/vba]
ПалычЪ, Вставьте в модуль книги, на которой вам нужно это
нужен макрос если в столбец А вносим любое значение , то в столбце В автоматом появляется дата когда внесли значение. Если значение из ячейки стобца А удаляем то и ячейка в столбце В становится опять пустой
проделывать . [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then If Target <> "" Then Cells(Target.Row, 2) = Format(Now(), "dd.mm.yyyy") Else Cells(Target.Row, 2) = "" End If End If End Sub
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Target.Column <> 1 Then Exit Sub If Target.Value <> "" Then Target.Offset(, 1) = Date Else Target.Offset(, 1).ClearContents End If End Sub
[/vba] Добавлено Наверное, вот так лучше будет (файл _2) [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = 0 For i = 1 To Target.Count If Target(i).Column = 1 Then If Target(i).Value <> "" Then Target(i).Offset(, 1) = Date Else Target(i).Offset(, 1).ClearContents End If End If Next i Application.EnableEvents = 1 End Sub
[/vba] Добавлено Код в файле _2 переписал, файл перевложил
Такой вариант [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Target.Column <> 1 Then Exit Sub If Target.Value <> "" Then Target.Offset(, 1) = Date Else Target.Offset(, 1).ClearContents End If End Sub
[/vba] Добавлено Наверное, вот так лучше будет (файл _2) [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = 0 For i = 1 To Target.Count If Target(i).Column = 1 Then If Target(i).Value <> "" Then Target(i).Offset(, 1) = Date Else Target(i).Offset(, 1).ClearContents End If End If Next i Application.EnableEvents = 1 End Sub
[/vba] Добавлено Код в файле _2 переписал, файл перевложил_Boroda_
Приветствую! Помогите с аналогичной ситуацией, но чтобы это работала в двух местах листа. В столбец А вводим число - дата появляется в столбце В, а когда вводим число в столбец С (на этом же листе) - дата появляется в D. А - В я реализовала, а вот чтоб и С-D работало не получается.
Приветствую! Помогите с аналогичной ситуацией, но чтобы это работала в двух местах листа. В столбец А вводим число - дата появляется в столбце В, а когда вводим число в столбец С (на этом же листе) - дата появляется в D. А - В я реализовала, а вот чтоб и С-D работало не получается.Marisa
Еще один вопрос: а если нужно чтобы дата появлялась не в соседнем столбце (A-B), а допустим A-C, а для второго случая D-E, т.е смещение даты на разное количество столбцов относительно вводимых значений? [moder]А вот это уже точно новый вопрос. Свою тему создавайте.
Еще один вопрос: а если нужно чтобы дата появлялась не в соседнем столбце (A-B), а допустим A-C, а для второго случая D-E, т.е смещение даты на разное количество столбцов относительно вводимых значений? [moder]А вот это уже точно новый вопрос. Свою тему создавайте.Marisa
Сообщение отредактировал _Boroda_ - Пятница, 06.11.2015, 04:04