Страницы: 1
RSS
Поставить дату и время (дата изменения) в ячейку если было хоть одно изменение в строке
 
Всем добрый день, нужна помощь, здесь на нашел код. Помогите его переделать, что бы он реагировал на определенный диапазон изменений и самое главное что изменением является АВТОМАТИЧЕСКИЙ пересчет формулы.
Есть два листа ТХ и ВКХ - они являются рабочими туда ежедневно вносятся изменения, а на листе СВОД - на основании данных выводится отчет. И для контроля изменений когда последний раз менялись сводные данные по каждому объекту ЗВО и ВКС - нужно что бы в столбце P (ДАТА изменения данных) напротив  строки в которой изменились данные и ставилась дата  и время изменения хоть. Ссылка на код который нашел http://www.planetaexcel.ru/techniques/6/44/
Код
Private Sub Worksheet_Change(ByVal Target As Range)
     
    For Each cell In Target   'проходим по всем измененным ячейкам
       If Not Intersect(cell, Range("A2:A100")) Is Nothing Then  'если изменененная ячейка попадает в диапазон A2:A100
            With cell.Offset(0, 1)         'вводим в соседнюю справа ячейку дату
               .Value = Now
               .EntireColumn.AutoFit  'выполняем автоподбор ширины для столбца B, чтобы дата умещалась в ячейке
            End With
       End If
    Next cell
End Sub
Изменено: a.i.mershik - 29.06.2017 11:04:12
Не бойтесь совершенства. Вам его не достичь.
 
У вас событие пересчет формул Worksheet_Calculate, а не изменение ячейки Worksheet_Change.
Можете попробовать сохранять сводную в массив при открытии книги, затем на каждый пересчет формул сравнивать старые значения с новыми.
 
kavaka08, а в коде это все нельзя сделать!? и где можно и может посмотреть инфу?
Не бойтесь совершенства. Вам его не достичь.
Страницы: 1
Наверх