Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("A1:A65536")) Is Nothing Then Target.Offset(0, 1).Value = CDate(Format(Now(), "hh:mm:ss DD.MM.YY")) End If End Sub
[/vba]так правильнее наверное: [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("A1:A65536")) Is Nothing Then If Target.Offset(0, 1) = "" Then Target.Offset(0, 1).Value = CDate(Format(Now(), "hh:mm:ss DD.MM.YY")) End If End If End Sub
[/vba]
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("A1:A65536")) Is Nothing Then Target.Offset(0, 1).Value = CDate(Format(Now(), "hh:mm:ss DD.MM.YY")) End If End Sub
[/vba]так правильнее наверное: [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("A1:A65536")) Is Nothing Then If Target.Offset(0, 1) = "" Then Target.Offset(0, 1).Value = CDate(Format(Now(), "hh:mm:ss DD.MM.YY")) End If End If End Sub
Доброго времени суток. Nic70y, Ваш макрос мне тоже подошёл почти идеально. Подскажите, как изменить макрос что бы формат ячейки в колонке B был ГГГГ.ММ.ДД ч:мм и в ячейках после заполнения в колонке А и B появлялись границы. Без использования УФ.
Доброго времени суток. Nic70y, Ваш макрос мне тоже подошёл почти идеально. Подскажите, как изменить макрос что бы формат ячейки в колонке B был ГГГГ.ММ.ДД ч:мм и в ячейках после заполнения в колонке А и B появлялись границы. Без использования УФ.DrMini
Немного более другой макрос. Поддерживает множественный - сразу в несколько ячеек - ввод (через Контрл+Ентер или копированием-вставкой). При удалении значения в А стирает дату в В и убирает границы. Если это не нужно, то сотрите две строки между IF и ELSE [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim d0_ As Range, d_ As Range Set d0_ = Intersect(Target, Columns(1)) If Not d0_ Is Nothing Then Application.ScreenUpdating = 0 cal_ = Application.Calculation Application.Calculation = xlCalculationManual Application.EnableEvents = 0 For Each d_ In d0_ With d_ If .Value = "" Then .Offset(, 1).ClearContents d_.Resize(, 2).Borders.LineStyle = xlNone Else .Offset(, 1) = CDate(Format(Now(), "hh:mm DD.MM.YY")) d_.Resize(, 2).Borders.Weight = xlThin End If End With Next d_ Application.EnableEvents = 1 Application.Calculation = cal_ Application.ScreenUpdating = 1 End If End Sub
[/vba]
Немного более другой макрос. Поддерживает множественный - сразу в несколько ячеек - ввод (через Контрл+Ентер или копированием-вставкой). При удалении значения в А стирает дату в В и убирает границы. Если это не нужно, то сотрите две строки между IF и ELSE [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim d0_ As Range, d_ As Range Set d0_ = Intersect(Target, Columns(1)) If Not d0_ Is Nothing Then Application.ScreenUpdating = 0 cal_ = Application.Calculation Application.Calculation = xlCalculationManual Application.EnableEvents = 0 For Each d_ In d0_ With d_ If .Value = "" Then .Offset(, 1).ClearContents d_.Resize(, 2).Borders.LineStyle = xlNone Else .Offset(, 1) = CDate(Format(Now(), "hh:mm DD.MM.YY")) d_.Resize(, 2).Borders.Weight = xlThin End If End With Next d_ Application.EnableEvents = 1 Application.Calculation = cal_ Application.ScreenUpdating = 1 End If End Sub
Александр спасибо большое за Ваше решение. Вечерком дома попробую. Надеюсь, что разберусь, как изменить "координаты" вставки данных в документ. СПАСИБО, что есть этот сайт и такие люди. P.S. Подскажите, как изменить макрос что бы формат ячейки в колонке B был ГГГГ.ММ.ДД ч:мм и в ячейках после заполнения в колонке А и B появлялись границы. Без использования УФ.
Александр спасибо большое за Ваше решение. Вечерком дома попробую. Надеюсь, что разберусь, как изменить "координаты" вставки данных в документ. СПАСИБО, что есть этот сайт и такие люди. P.S. Подскажите, как изменить макрос что бы формат ячейки в колонке B был ГГГГ.ММ.ДД ч:мм и в ячейках после заполнения в колонке А и B появлялись границы. Без использования УФ.DrMini
Сообщение отредактировал DrMini - Вторник, 29.08.2017, 14:18
Подскажите, как изменить макрос что бы формат ячейки в колонке B был ГГГГ.ММ.ДД ч:мм и в ячейках после заполнения в колонке А и B появлялись границы. Без использования УФ.
Подскажите, как изменить макрос что бы формат ячейки в колонке B был ГГГГ.ММ.ДД ч:мм и в ячейках после заполнения в колонке А и B появлялись границы. Без использования УФ.
Никак. В макросе все именно так и делается_Boroda_