У меня есть книга, написанная кем-то другим, и определенная ячейка заменяется каким-то кодом. Я не могу понять код, который изменяет значение ячейки.
Я даже не могу найти стратегию, чтобы сузить возможности кода, кроме установки точки останова в сотнях процедур. Поэтому я был бы доволен идеями стратегии.
Я очень опытен с использованием VBA в Microsoft Access и немного опытен с использованием VBA в Excel.
РЕДАКТИРОВАТЬ Должен иметь дело. Я не могу даже F8 через код, начиная с самого начала. Я имею в виду, что рассматриваемая ячейка изменяется после того, как я изменяю значение (фактически год) на листе. Поэтому я настроил подпрограмму и точку останова, как показано ниже.
Private Sub Worksheet_Change(ByVal Target As Range)
End Sub '<== set breakpoint here
Затем я нажимаю F8, и отладчик не вводит никакого другого кода, а ячейка меняется.
Проблема может быть в том, что в коде происходит множество формул динамической обработки c. Точно сказать не могу. Не знаю достаточно о причудах Excel.
РЕДАКТИРОВАТЬ 2 В рассматриваемой ячейке отсутствует формула. Извините, что потратил впустую время каждого.
Так как пропущенная формула может изменить значение ячейки. Это не может! Вопрос должен был быть «Как определить, почему клетка НЕ меняется». Так почему я не спросил об этом?
Я не заметил, что другие ячейки в том же столбце, что и эта ячейка, содержат формулу. Поскольку другие ячейки меняли значения правильно, а эта ячейка не работала, я предположил, что это был некий код VBA, поэтому я попытался отследить мошеннический код. Я предполагаю, что не будучи опытным человеком Excel, я не исключил очевидного кровотечения и пошел прямо к VBA. Уф!