Здравствуйте, форумчане.
Ситуация следующая: есть xls, в котором с помощью условного форматирования выделяется диапазон ячеек в текущей строке с правилом
=ИЛИ(И(ЯЧЕЙКА("строка")=СТРОКА(F4);ЯЧЕЙКА("столбец")<>СТОЛБЕЦ(F4)))
Чтобы условное форматирование "обновлялось" при перемещении активной ячейки, прописал следующий код
При этом в Excel 2003 обнаружилась неприятная особенность работы этого кода - при копировании ячейки/диапазона ячеек в буфер (Ctrl+C) Excel отображает бегущий пунктир вокруг скопированных ячеек, но, при попытке переместить курсор в другое место для вставки скопированного, ActiveSheet.Calculate обновляет лист и бегущий пунктир исчезает, после чего вставка (Ctrl+V) скопированных ячеек не производится.
Есть ли какой-то способ отловить флаг копирования в буфер (момент отображения бегущего пунктира вокруг скопированных ячеек), чтобы по его состоянию управлять запуском ActiveSheet.Calculate?
Ситуация следующая: есть xls, в котором с помощью условного форматирования выделяется диапазон ячеек в текущей строке с правилом
=ИЛИ(И(ЯЧЕЙКА("строка")=СТРОКА(F4);ЯЧЕЙКА("столбец")<>СТОЛБЕЦ(F4)))
Чтобы условное форматирование "обновлялось" при перемещении активной ячейки, прописал следующий код
Код |
---|
Private Sub Worksheet_SelectionChange(ByVal Target As Range) ActiveSheet.Calculate End Sub |
Есть ли какой-то способ отловить флаг копирования в буфер (момент отображения бегущего пунктира вокруг скопированных ячеек), чтобы по его состоянию управлять запуском ActiveSheet.Calculate?