Перейти к основному контенту
Поддержка
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.

Проблемы

В Microsoft Office Excel код макроса Microsoft Visual Basic для приложений (VBA), содержащийся за листом или книгой, может работать неправильно.

Причина

Это произойдет, если выполняются оба следующих условия:

  • Рассматриваемый код содержится в автоматически выполняемой подпрограмме, например в подпрограмме Auto_Open или Auto_Close.

  • Код не содержится в модуле Visual Basic, а находится за листом или самой книгой.

Обходное решение

Чтобы автоматически выполняемые подпрограммы правильно работали в Microsoft Excel, они должны содержаться в модуле Visual Basic.

Необходимо вставить модуль Visual Basic в книгу, а затем поместить код в новый модуль.

Чтобы вставить модуль Visual Basic, выполните приведенные далее действия.

  1. В Обозреватель Project в редакторе Visual Basic активируйте книгу, содержащую соответствующий код.

  2. В меню Вставка выберите команду Модуль.

После вставки нового модуля вырезайте код из исходного расположения и вставьте его в модуль Visual Basic. Затем сохраните книгу.

Дополнительная информация

В Excel код VBA можно хранить в трех разных местах: в модуле Visual Basic, в модуле класса Visual Basic и на листах и книгах "позади".

Чтобы изменить код "позади" листа или книги, выполните приведенные ниже действия.

  1. Активируйте редактор Visual Basic (нажмите клавиши ALT+F11).

  2. В окне Project Обозреватель вы увидите следующие записи:

        
         VBAProject (Book1)
         Microsoft Excel Objects
            Sheet1 (Sheet1)
            Sheet2 (Sheet2)
            Sheet3 (Sheet3)
            ThisWorkbook         
         Modules
             Module1

Если дважды щелкнуть одно из имен листа или ThisWorkbook, можно ввести код в окне кода. Такой код, не содержащийся в модуле Visual Basic, считается "за" листом или
Thisworkbook.

Если Auto_Open, Auto_Close или другая автоматически выполняемая подпрограмма хранится "за" листом или книгой ThisWorkbook, она может работать неправильно при открытии или закрытии книги или при выполнении действия, которое должно привести к запуску подпрограммы.

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

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

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×