Я должен исправить ошибку в файле excel с большим количеством макросов vba, которые я не создал. Также я никогда не работал с VBA в Excel, поэтому надеюсь, что вы можете немного помочь мне.Excel/VBA - ошибка во время выполнения 91 возникает только после ввода и выхода из режима разработки
Файл используется для хранения всех видов информации в каждой строке, и есть кнопка, показывающая/всплывающая форма пользователя, где я могу редактировать новую строку и добавлять ее к файлу. Все работает нормально, я открываю файл, и я могу использовать его по назначению. Но после того, как я вошел и вышел из режима Desing, каждый раз, когда я нажимаю кнопку «новая строка», я получаю ошибку времени выполнения 91.
Когда я его отлаживаю, отладчик останавливается на строке, где я хочу написать имя пользователя из переменной (имя хранится при открытии файла) в текстовый файл.
Print #file, user.name
После жесткого кодирования имени пользователя (Print #file, "ck"
) отладчик останавливается в другом положении с ошибкой времени выполнения 91, где форма пользователя загружаются/показана на рисунке.
frmAddData.Show
В моем понимании эта ошибка возникает из-за user.name
и frmAddData
являются пустыми, соответственно, удаляются после того, как я вышел из режима редактирования.
Есть ли какие-либо известные проблемы или кто-либо когда-либо слышал о такой проблеме в режиме оформления, или кто-то знает, какая ошибка/ошибка или что может вызвать эту странную проблему и как ее исправить, не переписывая все вещь?
Спасибо заранее, Gistiv
Режим проектирования иногда вызывает перекомпиляцию кода, поэтому любые связанные переменные могут быть потеряны/очищены. –
Благодарим вас за ответ. Есть ли способ остановить это или, по крайней мере, узнать, как и какой код перекомпилировать? – Gistiv
Нет реального способа остановить его, я думаю - если вы отредактируете код, это будет иметь какой-то эффект, если вы уже создали объекты, созданные на основе этого кода. В регулярном модуле вы, скорее всего, будете в безопасности, но если вы редактируете модуль класса (форма/рабочий лист/пользовательский класс), вы увидите поведение, с которым у вас проблемы. –