Зміст
Коли нам потрібно скопіювати та вставити будь-які дані в Microsoft Excel, ми маємо можливість використовувати різні інструменти швидкого доступу та стрічки в Excel. VBA Макрос також має таку можливість, а не опції робочої книги. Ми обговоримо Спеціальна вставка VBA значення та формати в Excel.
Завантажити Практичний посібник
Завантажте цей практичний посібник, щоб потренуватися, поки ви читаєте цю статтю.
Значення та формати за допомогою PasteSpecial.xlsm
9 Приклади копіювання значень і форматів за допомогою функції вставки в Excel VBA
У цій статті ми обговоримо 9 методів з Макроси VBA до Паста спеціальна значення та формат в Excel.
Для цього ми розглянемо наведений нижче набір даних.
1. Застосування InputBox у спеціальній вставці VBA для копіювання значень та форматів
У даному прикладі ми будемо використовувати опцію InputBox для Паста спеціальна .
Крок 1:
- Перейдіть на сторінку Розробник рахунок.
- Натисніть на Запис макросу .
- Набір Excel_Paste_Special_1 в якості Назва макросу .
- Потім натисніть ГАРАЗД. .
Крок 2:
- Тепер натисніть на кнопку Макроси командування.
- Виберіть пункт Макрос а потім натисніть Крок до .
Крок 3:
- Скопіюйте та вставте на командний модуль наступний код.
Sub Excel_Paste_Special_1() Dim Copy_Cell As Range, Paste_Cell As Range xTitleId = "Salary_Sheet" Set Copy_Cell = Application.Selection Set Copy_Cell = Application.InputBox("Виділити діапазон для копіювання:", xTitleId, Copy_Cell.Address, Type:=8) Set Paste_Cell = Application.InputBox("Вставити в будь-яку порожню комірку:", xTitleId, Type:=8) Copy_Cell.Copy Paste_Cell.Parent.Activate Paste_Cell.PasteSpecialxlPasteValuesAndNumberFormats Paste_Cell.PasteSpecial xlPasteFormats Application.CutCopyMode = False End Sub
Крок 4:
- Преса F5 для запуску коду.
- З'явиться нове діалогове вікно, в якому виберіть діапазон джерела.
- Потім натисніть ГАРАЗД. .
Крок 5:
- З'явиться ще одне діалогове вікно, в якому виберіть порожній діапазон, куди потрібно вставити скопійовані комірки.
Тепер подивіться на набір даних.
Всі дані копіюються зі значеннями і форматами за допомогою Спеціальна вставка VBA .
Читати далі: Як застосувати VBA PasteSpecial і зберегти вихідне форматування в Excel
2. вставка діапазону комірок зі значеннями та форматами за допомогою xlPasteAllUsingSourceTheme у спеціальній вставці VBA
Вставимо діапазон комірок безпосередньо на VBA код у цьому розділі.
Крок 1:
- Преса Alt+F11 для входу в командний модуль.
- Розмістіть на командному модулі наступний код.
Sub Excel_Paste_Special_2() Range("B4:C9").Copy Range("E4").PasteSpecial xlPasteAllUsingSourceTheme End Sub
Крок 2:
- Тепер натисніть F5 для запуску коду.
Це xlPasteAllUsingSourceTheme копіює точний дублікат вихідних даних.
Читати далі: Excel VBA: копіювання значення комірки та вставка в іншу комірку
3. використання змінної VBA для вставки діапазону зі значеннями та форматами за допомогою спеціальної вставки
Ми покажемо використання змінних в VBA Paste Special код тут.
Крок 1:
- Спочатку увійдіть в командний модуль, натиснувши Alt+F11 .
- Впишіть код, наведений нижче, в командний модуль.
Sub Excel_Paste_Special_3() Dim source_rng As Range, paste_rng As Range Set source_rng = Range("B4:C9") Set paste_rng = Range("E4") source_rng.Copy paste_rng.PasteSpecial Paste:=xlPasteAllUsingSourceTheme End Sub
Крок 2:
- Преса F5 і запустити код.
Читати далі: Excel VBA: копіювання діапазону в іншу книгу
4. за допомогою xlPasteValues та xlPasteFormats скопіювати значення та формати на інший аркуш, зберігши формати незмінними
Вище були розглянуті способи копіювання і вставки даних на одному аркуші. Тепер ми покажемо, як використовувати VBA Paste Special для різних аркушів.
Крок 1:
- Увійдіть в командний модуль, натиснувши Alt+F11 та копіювання на ньому наступного коду.
Private Sub Excel_Paste_Special_4() Application.ScreenUpdating = False Dim source_rng As Worksheet Dim paste_rng As Worksheet Set source_rng = Worksheets("Data_Set") Set paste_rng = Worksheets("Different_Sheet") Set Destination = paste_rng.Range("B2") source_rng.Range("B2:C9").Copy Призначення = paste_rng.Range("B2:C9").Copy Призначення.Спеціальна вставка Paste:=xlPasteValues Призначення.Спеціальна вставка Paste:=xlPasteFormatsApplication.CutCopyMode = False Application.ScreenUpdating = True End Sub
Крок 2:
- Преса F5 для запуску коду.
Ми бачимо, що дані Data_Set копіюється на Інший_аркуш .
Читати далі: Як використовувати VBA PasteSpecial для формул і форматів в Excel (3 способи)
Схожі читання
- Як скопіювати кілька комірок на інший аркуш в Excel (9 способів)
- Різниця між вставкою та спеціальною вставкою в Excel
- Excel VBA для копіювання даних з іншої книги без відкриття
- Як копіювати та вставляти в Excel зі збереженням розміру комірки (7 прикладів)
- Копіювання та вставка значень у наступний порожній рядок в Excel VBA (3 приклади)
5. використовуйте xlPasteFormats тільки для вставки форматів
У попередніх способах ми копіювали дані цілком і вставляли їх без змін. Але в цьому розділі ми будемо копіювати тільки формат даних.
Крок 1:
- Перейдіть до командного модуля, натиснувши Alt+F11 .
- Скопіюйте та вставте код, наведений нижче, в командний модуль.
Sub Excel_Paste_Special_5() Range("B2:C9").Copy Range("E2").PasteSpecial xlPasteFormats End Sub
Крок 2:
- Тепер натисніть кнопку F5 і запустіть код.
Подивіться на набір даних - скопійовані тільки формати, ніяких значень тут немає.
Читати далі: Як скопіювати і вставити в Excel без зміни формату
6. використовуйте xlPasteValues для вставки тільки значень
Копіювати значення ми можемо тільки за допомогою Спеціальна вставка VBA .
Крок 1:
- Преса Alt+F11 для входу в командний модуль.
- Напишіть на командному модулі наступний код.
Sub Excel_Paste_Special_6() Range("B4:C9").Copy Range("E4").PasteSpecial xlPasteValues End Sub
Крок 2:
- Натисніть на F5 і запустити код.
Зверніть увагу на набір даних, тут копіюються тільки значення, формати в цьому методі не копіюються.
Читати далі: Як за допомогою VBA вставити в Excel тільки значення без форматування
7. скопіювати та вставити весь вміст однієї комірки
У попередніх розділах ми копіювали діапазон даних, тут ми скопіюємо лише одну комірку.
Крок 1:
- Тепер натисніть Alt+F11 та увійти до командного модуля.
- Наберіть на модулі наступний код.
Sub Excel_Paste_Special_7() Range("B4").Copy Range("E4").PasteSpecial xlPasteAllUsingSourceTheme End Sub
Крок 2:
- Тепер натисніть кнопку F5 для запуску коду.
Ми бачимо, що тут копіюється одна комірка, а не діапазон.
Читати далі: Формула для копіювання та вставки значень в Excel (5 прикладів)
8. копіювання та вставка всіх атрибутів певного стовпця за допомогою VBA
Як і окрему комірку, ми можемо скопіювати один стовпець у наборі даних.
Крок 1:
- Просто натисніть кнопку Alt+F11 для входу в командний модуль.
- Впишіть код, наведений нижче, в модуль.
Sub Excel_Paste_Special_8() Dim source_rng As Range, paste_rng As Range Set source_rng = Columns("C") Set paste_rng = Columns("E") source_rng.Copy paste_rng.PasteSpecial Paste:=xlPasteAllUsingSourceTheme End Sub
Крок 2:
- Запустіть код, натиснувши F5 .
Тут ми бачимо, що Колонка Б копіюється на Колонка E .
Читати далі: [Виправлено]: Копіювання та вставка правою кнопкою миші не працює в Excel (11 рішень)
9. копіювання та вставка всіх атрибутів рядка за допомогою Excel VBA
Аналогічно ми можемо скопіювати один рядок за допомогою кнопки Паста спеціальна .
Крок 1:
- Натисніть на Alt+F11 для входу в командний модуль.
- Скопіюйте наступний код на командному модулі.
Sub Excel_Paste_Special_9() Dim source_rng As Range, paste_rng As Range Set source_rng = Rows("4") Set paste_rng = Rows("11") source_rng.Copy paste_rng.PasteSpecial Paste:=xlPasteAllUsingSourceTheme End Sub
Крок 2:
- Запустіть код, натиснувши F5 .
Ось, Ряд 4 копіюється на Рядок 11 .
Читати далі: Як скопіювати кілька рядків в Excel за допомогою макросу (4 приклади)
Висновок
У цій статті ми пояснили 9 способи вставки спеціальних значень і форматів в Excel. Сподіваюся, це задовольнить ваші потреби. Будь ласка, загляньте на наш сайт Exceldemy.com та висловлюйте свої пропозиції у полі для коментарів.