Как я могу избежать окна сообщения буфера обмена при копировании больших объемов данных в Excel?

У меня есть макрос, который копирует 4 листа из одной книги в новую книгу и сохраняет ее с другим именем.

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

Любые советы о том, как избежать окна сообщения буфера обмена, или просто дать ему автоматический ответ Нет, будут с благодарностью оценены.

Я бы изменил макрос. Выключите оповещения при запуске макроса и включите их, когда макрос будет выполнен. Т.е. Application.DisplayAlerts = False

Проблема с Application.DisplayAlerts = False заключается в том, что она может скрывать предупреждение, которое вам нужно увидеть.

Используйте Application.CutCopyMode = False после вставки, который удаляет ссылку на большой диапазон из буфера обмена.

Я нашел этот документ MS относительно этого. Похоже, вы можете использовать несколько различных программных решений в своем макросе, чтобы решить эту проблему. Это зависит от того, что именно вы копируете в буфер обмена. KB # 287392

Я согласен с Джоном Пельтье: «Проблема с Application.DisplayAlerts = False заключается в том, что он может скрыть предупреждение, которое вам нужно увидеть». Кроме того, вы должны помнить «Application.DisplayAlerts = True» после того, как вы закончите, так что это 3 строки кода для каждой вставки. И если ваша программа прерывает BEFORE «Application.DisplayAlerts = True», вы будете неосознанно отключать оповещения до тех пор, пока Вы выходите из Excel.

Я проверил его предложение «Application.CutCopyMode = False после вставки», он отлично работает в someSpreadsheet.xls

 Workbooks.OpenText Filename:="someDirectory\someFile.txt", _ DataType:=xlDelimited, TextQualifier:=xlNone, _ Tab:=True Cells.Select Selection.Copy Windows("someSpreadsheet.xls").Activate ActiveSheet.Paste Application.CutCopyMode = 0 Windows("someFile.txt").Activate ActiveWorkbook.Close 
  • ExecuteExcel4Macro, чтобы получить значение из закрытой книги
  • Номер столбца Excel из имени столбца
  • Это . in. Изменить, если это определено .Cells?
  • Как я могу выполнить эту функцию с помощью VBA в excel?
  • Объявлять и инициализировать строковый массив в VBA
  • Макрос для копирования отдельных значений из одного листа Excel в другой
  • Ошибка Excel 1004 «Невозможно получить ... свойство classа WorksheetFunction», появляющееся непоследовательно
  • Как я могу конкатенировать строки в VBA?
  • Создать форму timestamp для Excel
  • Как добавить именованный лист в конце всех листов Excel
  • Outlook VBA - запуск кода каждые полчаса
  • Давайте будем гением компьютера.