Сдвинутые ссылки на формулы после запуска макроса (время от времени) - PullRequest
1 голос
/ 11 марта 2020

У меня есть файл Excel с несколькими листами, которые по большей части защищены. Пользователь может редактировать только определенные ячейки, и все добавление / копирование / дублирование / удаление строк обрабатываются с помощью кнопок и макросов vba.

Код для вставки строки выглядит примерно так:

ActiveCell.EntireRow.Copy
ActiveCell.EntireRow.OffSet(1).Insert xlShiftDown

и удаление строки выглядит следующим образом:

Selection.EntireRow.Select
Selection.Delete xlShiftUp

В файле Excel содержится большое количество сумм (...) и других формул. В общем, они корректно обновляются, когда я выполняю макросы. Это означает, что сумма (B5: B10) правильно ссылается на сумму (B5: B15), когда вы добавляете в нее 5 строк. Время от времени, тем не менее, кажется, что есть ошибка, которая искажает многие формулы и неправильно их смещает (например, Sum (B4: B14)), что приводит к неправильным значениям.

Проблема в том, что эта ошибка это случается только изредка и только на указанных c ПК. Я не могу воспроизвести их ни на одной из моих машин. На большинстве пользовательских ПК это также работает правильно. Но на некоторых машинах это выглядит более регулярно, но по-прежнему не воспроизводимо по требованию.

Большинство пользователей сообщают, что это происходит после того, как они очень часто нажимают кнопки вставки строки и удаления строки с макросами в очень короткое время.


Информация, полученная от одного из пользователей, который столкнулся с этой проблемой:

Операционная система: Windows 10, 64-разрядная; Версия Excel: Excel 2016, 32-разрядная

Excel открывался из почты, а затем сохранялся на диске.

Программы открывались одновременно с проблемой: еще один файл Excel (без макросы), Outlook, IE, Adobe, Skype

Насколько я знаю, "автоматических c инструментов", таких как AutoHotKey или что-то в этом роде, нет.


Кто-нибудь сталкивался с такой ошибкой раньше, и, возможно, подскажет, как ее исправить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...