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


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

 Sub PasteWithFormatting()

Range(" A1:C11 ").Copy
Range(" A13 ").PasteSpecial Paste:=xlPasteAllUsingSourceTheme
Application.CutCopyMode = False

End Sub

Цей конкретний макрос скопіює клітинки в діапазоні A1:C11 і вставить значення клітинок із їх форматуванням у діапазон, починаючи з клітинки A13 .

Примітка . Рядок Application.CutCopyMode = False вказує, що режим вирізання та копіювання слід вимкнути після запуску макросу.

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: вставте значення та продовжуйте форматувати за допомогою VBA

Припустімо, у нас є такий набір даних у Excel, який містить інформацію про різних баскетболістів:

Скажімо, ми хочемо скопіювати та вставити всі значення в діапазоні A1:C11 у нове місце та зберегти форматування.

Для цього ми можемо створити такий макрос:

 Sub PasteWithFormatting()

Range(" A1:C11 ").Copy
Range(" A13 ").PasteSpecial Paste:=xlPasteAllUsingSourceTheme
Application.CutCopyMode = False

End Sub

Коли ми запускаємо цей макрос, ми отримуємо такий результат:

Зауважте, що вихідні значення клітинок було вставлено з їх форматуванням у діапазон клітинок, починаючи з клітинки A13 .

Примітка . Ви можете знайти повну документацію для методу VBA PasteSpecial тут .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:

VBA: як вставити лише значення без форматування
VBA: Як скопіювати видимі рядки на інший аркуш
VBA: копіювати рядки на інший аркуш на основі критеріїв

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *