Страницы: 1
RSS
Вставить дату изменения ячейки, Макроса для отформатированной (умной таблицы)
 
Всем добрый день!

Пожалуйста подскажите можно ли изменить макрос для динамичного диапазона отформатированной (умной) таблицы. Количество сток может изменятся. А так же применять его для нескольких диапазонов. Заранее спасибо. Пример во вложении.
А также изменение диапазона D при рецензировании

Код
Private Sub Worksheet_Change(ByVal Target As Range) 
For Each cell In Target 'проходим по всем измененным ячейкам
If Not Intersect(cell, Range("C10:C13")) Is Nothing Then 'если измененная ячейка попадает в диапазон C10:C13
With cell.Offset(0, 1) 'вводим в соседнюю справа ячейку дату
.Value = Now
.EntireColumn.AutoFit 'выполняем автоподбор ширины для столбца D, чтобы дата умещалась в ячейке
End With
End If
Next cell
End Sub
 
Цитата
Количество сток может изменятся
Может так?
Код
j = 10 'Начальная строка
    Do While ThisWorkbook.Sheets("Лист1").Cells(j, 3) > "" 'ищем последнюю пустую ячейку 
        j = j + 1
    Loop
For Each cell In Target 
If Not Intersect(cell, Range("C10:C" & j)) Is Nothing Then 
With cell.Offset(0, 1) 
.Value = Now
.EntireColumn.AutoFit 
End With
End If
Next cell
 
Если в столбе "C" ввод из списка, зачем цикл? Ну и добавим дату при вводе номера автомобиля (столб "F").
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
r = Cells(Rows.Count, 2).End(xlUp).Row
If Not Intersect(Target, Union(Range(Cells(10, 3), Cells(r, 3)), Range(Cells(10, 6), Cells(r, 6)))) Is Nothing Then
Application.EnableEvents = False
With Target.Offset(0, 1)
.Value = Now: .EntireColumn.AutoFit
End With
Application.EnableEvents = True
End If
End Sub
 
да, спасибо работает, но если ставли защиту листа с разрешением изменяемых диапазонов выдает ошибку.
 
снимаю защиту, макрос перестает работать
Страницы: 1
Наверх