Поиск ячейки с изменившимся значением
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Поиск ячейки с изменившимся значением Expand / Collapse
Автор
Сообщение
14.05.2007 13:26
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 23.06.2008 8:38
Сообщ.: 91, Visits: 451
Мой макрос проводит некоторую обработку ячеек, значения которых пользователь изменяет в процессе работы с документом(Excel). Такие ячейки легко отлавливаются событием SheetChange. К сожалению, событие не срабатывает при изменении ячейки с формулой, когда её значение меняется при автоматическом перерасчете формулы программой Excel. У объекта WorkSheet в Excel есть событие SheetCalculate. Оно действительно срабатывает при пересчете формулы в листе. Но, к сожалению, это событие не возвращает ячейку в которой произошел пересчет формулы. Подскажите, как вытащить эту самую ячейку. Может другим каким-нибудь событием?
Сообщ. #913232
15.05.2007 12:43
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 31.10.2007 14:52
Сообщ.: 127, Visits: 1 233
а не поможет свойство CALLER?
Сообщ. #913274
15.05.2007 13:32
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 23.06.2008 8:38
Сообщ.: 91, Visits: 451
Gacol (15.05.2007)
а не поможет свойство CALLER?

Проверил. Не помогает.

Сообщ. #913276
15.05.2007 15:15
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 26.10.2007 9:10
Сообщ.: 166, Visits: 1 538
Сохраняй на отдельном листе ЗНАЧЕНИЯ формул с рабочего листа. При новых вычислениях сравнвай текущие значения формул с предварительно сохранёнными и увидишь, что изменилось. После анализа не забудь сохранить новые ЗНАЧЕНИЯ.
Сообщ. #913278
16.05.2007 11:22
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 31.10.2007 14:52
Сообщ.: 127, Visits: 1 233
Ну тогда другой вариант - через свойство Dependents (зависимые ячейки). 

В примере, если изменилась ячейка которая входит в формулу в рассматриваемой ячейки [C3], получаем сообщение. 

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
   On Error GoTo err:
   r = Target.Dependents.Row
   c = Target.Dependents.Column
   MsgBox r & " : " & c
   Exit Sub
err:
   On Error GoTo 0
End Sub

Сообщ. #913303
16.05.2007 11:35
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 23.06.2008 8:38
Сообщ.: 91, Visits: 451
Gacol (16.05.2007)
Ну тогда другой вариант - через свойство Dependents (зависимые ячейки). 

В примере, если изменилась ячейка которая входит в формулу в рассматриваемой ячейки [C3], получаем сообщение. 

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
   On Error GoTo err:
   r = Target.Dependents.Row
   c = Target.Dependents.Column
   MsgBox r & " : " & c
   Exit Sub
err:
   On Error GoTo 0
End Sub

То что нужно. Спасибо.

Сообщ. #913304
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl, VladConn

Время GMT +3:00, Сейчас 10:45