Как программно отключить предупреждение в буфере обмена


Аннотация


Если вы закроете книгу Microsoft Excel, вы не сможете получить предупреждающее сообщение о том, что вы хотите сохранить или удалить данные из буфера обмена. В этой статье объясняется, почему появляется это предупреждение, и как это сделать с помощью макроса Microsoft Visual Basic для приложений.

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


Корпорация Майкрософт предоставляет примеры программирования только для иллюстраций, в том числе не ограничиваясь гарантийными обязательствами и (или) подразумеваемым, в частности, неограниченные гарантии товарной пригодности и/или пригодности. В этой статье предполагается, что вы знакомы с демонстрируемым языком программирования и инструментами, используемыми для создания и отладки процедур. Специалисты службы поддержки Майкрософт могут объяснить особенности конкретных процедур, но они не изменяют эти примеры для предоставления дополнительных функций или создания процедур для удовлетворения конкретных потребностей. Если вы ограничили взаимодействие с программированием, вам может потребоваться обратиться к сертифицированному партнеру Майкрософт или в консультационной службе Майкрософт. Для получения дополнительных сведений посетите следующие веб-сайты Майкрософт: сертифицированные партнеры Майкрософт — https://Partner.Microsoft.com/Global/30000104( http://support.Microsoft.com/GP/advisoryservice) за дополнительными сведениями о доступных вариантах поддержки и о том, как связаться с Microsoft, посетите веб-сайт Майкрософт по адресу:http://support.Microsoft.com/default.aspx?scid=FH; EN-US; CNTACTMSПри вырезании или копировании ячеек в Excel диапазон этих ячеек окружается перемещаемой границей. Перемещаемая граница показывает, что вы в режиме вырезания или копирования. Сообщение с предупреждением в буфере обмена появляется при выполнении всех указанных ниже условий.
  • Вы в режиме вырезания или копирования.
  • На вашем компьютере выделена 101 или больше ячеек.
  • Вы закрываете книгу или перекрываете Excel, тем самым принудительно закрывая книгу.
Эти условия создают предупреждение, подобное следующему:
Буфер обмена содержит большой объем информации. Вы хотите вставить эти данные в другую программу позже?
Есть несколько способов предотвратить вывод этого предупредительного сообщения. Самый быстрый способ ручной — нажать клавишу ESC прямо перед закрытием книги. В автоматическом сценарии, использующем макрос Visual Basic для приложений, для вырезания или копирования ячеек, возможно, вам не нужно будет использовать клавишу ESC, чтобы предотвратить это предупреждение. В этом случае используйте любые из следующих программных методов, чтобы предотвратить предупреждение.

Способ 1: копирование одной ячейки

Если вы используете макрос Visual Basic для приложений для вырезания или копирования ячеек, вставьте следующую строку непосредственно перед строкой, которая закроет ее.
ActiveSheet.Range("A1").Copy
Сообщение с предупреждением не отображается, если в буфере обмена содержится 100 или меньше ячеек.

Способ 2: выход из CutCopyMode

Если вы используете макрос Visual Basic для приложений для вырезания или копирования ячеек, вставьте следующую строку непосредственно перед строкой, которая закроет ее.
workbook.Application.CutCopyMode = False
где "книга" — объект книги.Примечание. Если задать для CutCopyMode значение true или false, Excel может отменить режим вырезания или копирования.

Способ 3: сохранение книги

Если вы используете макрос Visual Basic для приложений для вырезания или копирования ячеек, вставьте следующую строку непосредственно перед строкой, которая закроет ее.
workbook.Save
где "книга" — объект книги. При сохранении книги приложение Excel больше не находится в режиме вырезания или копирования.