Vba: как вставить только значения без форматирования


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

 Sub PasteNoFormatting()

Range(" A1:D9 ").Copy
Range(" A12 ").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False

End Sub

Этот конкретный макрос скопирует ячейки в диапазоне A1:D9 и вставит значения ячеек без какого-либо форматирования в диапазон, начиная с ячейки A12 .

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

В следующем примере показано, как использовать этот синтаксис на практике.

Пример: Вставка только значений без форматирования с помощью VBA

Допустим, у нас есть следующий набор данных в Excel, содержащий информацию о различных баскетболистах:

Допустим, мы хотим скопировать и вставить все значения в диапазоне A1:D9 в новое место без форматирования.

Для этого мы можем создать следующий макрос:

 Sub PasteNoFormatting()

Range(" A1:D9 ").Copy
Range(" A12 ").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False

End Sub

Когда мы запускаем этот макрос, мы получаем следующий вывод:

Вставка только значений VBA, без форматирования

Обратите внимание, что исходные значения ячеек были вставлены в новое место без какого-либо форматирования.

Примечание . Полную документацию по методу VBA PasteSpecial можно найти здесь .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в VBA:

VBA: как найти последнюю использованную строку
VBA: как подсчитать количество строк в диапазоне
VBA: как подсчитать количество используемых столбцов

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *