VBA Application.CutCopyMode = False - Что это такое?

Приложение VBA.CutCopyMode = False

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

1 Application.CutCopyMode = False

Эта строка кода «очищает» буфер обмена *. Если вы скопировали ячейку Excel, запуск этой строки кода приведет к удалению анимации вокруг скопированной ячейки:

CutCopyMode - это свойство уровня приложения, которое указывает, находится ли программа Microsoft Office (например, Excel) в режиме вырезания или копирования. В режиме копирования (или вырезания) Excel хранит что-то в буфере обмена, которое можно вставить.

Я не знаю, когда вам когда-нибудь понадобится установить Application.CutCopyMode в True.

Избегание CutCopyMode = False

Обычно вы можете избежать необходимости устанавливать Application CutCopyMode = False, используя лучшие практики VBA Copy + Paste. В качестве примера следующая строка кода копирует и вставляет ячейку в одну строку, устраняя необходимость устанавливать CutCopyMode на False:

123 Sub CopyPaste_OneLine ()Диапазон («a1»). Копировать диапазон («b1»)Конец подписки

Получить статус Application.CutCopyMode

Иногда вам может понадобиться получить статус Application.CutCopyMode. Возможно, чтобы предотвратить ошибки при попытке вставить, когда в буфере обмена ничего нет. Для получения статуса используйте следующий код:

123456789101112 Sub Get_Application_CutCopyMode_Status ()Выберите Case Application.Case Is = xlCopyMsgBox «Режим копирования»Случай Is = xlCutMsgBox «Режим вырезки»Case Is = FalseMsgBox «Не в режиме вырезания или копирования»Конец ВыбратьКонец подписки

* Application.CutCopyMode очищает только буфер обмена приложения Microsoft Office (например, Excel). Буфер обмена Windows не очистится. Щелкните ссылку, чтобы узнать больше о том, как очистить буфер обмена Windows с помощью VBA.

Вы поможете развитию сайта, поделившись страницей с друзьями

wave wave wave wave wave