Excel VBA паста стойности

Ежедневно обикновено използваме функцията за копиране / поставяне в excel често. Освен копиране / поставяне, можем да форматираме данни и с различни по-горе споменати опции, налични в специална паста.

Функция VBA PASTE VALUES Поставя само стойностите на копирания диапазон от данни, както са показани в клетките.

Забележка: Тя няма да копира основната формула, присъстваща в клетката, която ще намерите в лентата с формули. т.е. ще копира само стойността на резултата от формула.

Във VB макро прозорец, CTRL + SPACE щракването ще ви помогне за падащото меню VBA Intellisense, което ще ви помогне при писането на кода. След като напишете PASTE SPECIAL и щракнете върху интервала под споменатите различни опции за тип паста, която също съдържа xLPasteValues.

Синтаксис за поставяне на стойности в Excel VBA

Синтаксисът за VBA функцията Paste Value в excel е както следва:

Преди да поставите специални стойности или Когато използвате специални опции за поставяне, обектът на VBA Range трябва да бъде споменат преди това, защото копирате данните от определен диапазон на клетки в друг диапазон от клетки.

Тук, с позоваване на работния лист excel, обектът на VBA обхвата е клетки, които могат да бъдат единични или множество.

Тип XlPaste:

Различни видове паста, които се появяват при падащото меню PASTE SPECIAL, са:

Тип операция XlPaste:

Подобно на опциите за тип паста, също така има опция за операции с поставяне, където можете да изпълните по-долу споменаването на математически операции.

  • (Skip Blanks): Ако искате да пропуснете заготовки, тогава можете да изберете една от опциите, т.е. ИСТИНСКА или ЛЕЖНА.
  • (Транспониране): Ако искате да транспонирате данните, тогава можете да изберете една от опциите, т.е. ИСТИНСКА или ЛЕЖНА

Да предположим, че разполагам с изходните данни в диапазон G7 TO J10, който съдържа оценка на учениците и техните резултати по отношение на идентификационния номер на регистрацията, където съдържа формули, текстови данни и цифрови данни.

Трябва да копирам тези данни в друга гама от клетки в същия лист без формула, т.е. само като стойност, за това трябва да следвам стъпките по-долу.

Как да използвате функцията за поставяне на стойности в Excel VBA?

По-долу са различните примери за използване на функцията за поставяне на стойности в Excel с помощта на VBA код.

Можете да изтеглите този шаблон на VBA Paste Values ​​Excel тук - VBA Paste Values ​​Excel Шаблон

Функция VBA Paste Values ​​- Пример №1

Стъпка 1: Отворете прозорец на VB редактор с помощта на клавиш за бърз достъп Alt + F11, Изберете или щракнете върху Visual Basic в групата Code в раздела Developer.

Стъпка 2: За да създадете празен модул, щракнете с десния бутон на мишката върху Microsoft excel обекти, в това щракнете върху Вмъкване и под секцията с меню изберете Модул, където празният модул се създава, в категорията (ИМЕ) на свойствата, можете да преименувате като „VB_PASTE_VALUES“

Код:

 Sub PASTE_VALUES () Край Sub 

Стъпка 3: Трябва първо да копирам диапазона от данни с помощта на Range. Метод на копиране (за копиране на специфичния диапазон от данни), т.е. от G7 до J10 от името на листа „VB_PASTE_VALUES“ за копиране на диапазона, трябва да прилагам или добавям по-долу споменатия код след под.

Код:

 Sub PASTE_VALUES () Обхват ("g7: j10"). Копиране на края Sub 

Стъпка 4: След като копирам данните, трябва да залепя стойностите от G14 в J17. Тук Първата референция на гамата е G14, тук или мога да въведете „G14” ИЛИ мога да въведете „G14 до J17”. След като изберете диапазона, трябва да залепя. Така че, за това поставете точка (.) След диапазон и напишете PasteSpecial, след като щракнете върху клавиша за интервал, се появяват под споменатите различни опции xlpastetype, в който изберете xlPasteValues

Код:

 Под PASTE_VALUES () Обхват ("g7: j10"). Диапазон на копиране ("g14"). PasteSpecial xlPasteValues ​​End Sub 

Стъпка 5: След като стартирате този код, той копира данните от G7 в J10 и постави от G14 в J17 като стойности.

Сега в гореспоменатия пример има разлика във формата на таблицата между копирани и поставени данни. (Форматиране на промени).

Стъпка 6: Ако искате един и същ формат на таблицата, трябва да актуализирате кода с посочените по-долу промени, където трябва да използвате един допълнителен ред код xlPasteformat преди xlPastevalues

Код:

 Под PASTE_VALUES () Обхват ("g7: j10"). Диапазон на копиране ("g14: j17"). PasteSpecial xlPasteFormats Range ("g14: j17"). PasteSpecial xlPasteValues ​​End Sub 

Стъпка 7: Когато стартирате горния код, той първоначално ще копира и постави формата на таблицата, а по-късно ще постави стойности.

Забележка: Когато стартирате гореспоменатите кодове, по време на процедурата за копиране и поставяне на стойности, след като данните се копират, се появява режим на избор, можете да го наблюдавате отвъд границите със зелени пунктирани линии.

Можете да премахнете това, като актуализирате макроса с последен ред код преди край подкоманда, т.е.

Application.cutcopymode = невярно горният код ще деактивира маршируващи мравки около копиран диапазон

Функция VBA Paste Values ​​- Пример №2

В първия пример направихме копиране и поставяне на данни в същия лист на работния лист,

Нека предположим, че искате да копирате данни от един работен лист в друг работен лист, нека проверите как можем да изпълним тази задача

Стъпка 1: В редактора на VBA имам име като PASTE_VALUES3 () след въвеждане на Sub

Код:

 Sub PASTE_VALUES_3 () Край Sub 

Стъпка 2: Преди да изберем диапазона, ние трябва да информираме от кой лист трябва да бъдат избрани данните, така че работният лист трябва да бъде избран, след това трябва да изберем диапазона с помощта на range.Copy метод, подобен на пример 1.

Код:

 Под PASTE_VALUES_3 () Работни листове ("VB_PASTE_VALUES"). Обхват ("g7: j10"). 

В горния код името на работния лист е „VB_PASTE_VALUES“, а диапазонът от данни е „g7: j10 ″

Стъпка 3: В следващата стъпка поставяме данни в друг работен лист, следователно трябва да изберем този лист според неговото име и диапазон, където трябва да поставим данните, след диапазона, трябва да въведем пастеспециална функция и опция за тип паста, т.е. PasteSpecial xlPasteValue

Код:

 Под PASTE_VALUES_3 () Работни листове ("VB_PASTE_VALUES"). Обхват ("g7: j10"). Копирайте работни листове ("Sheet2"). Обхват ("A1"). PasteSpecial xlPasteValues ​​End Sub 

Стъпка 4: В края на кода, преди края sub, трябва да въведем гореспоменатия код, където той ще деактивира маршируващи мравки около копирания диапазон.

Код:

 Под PASTE_VALUES_3 () Работни листове ("VB_PASTE_VALUES"). Обхват ("g7: j10"). Копирайте работни листове ("Sheet2"). Обхват ("A1"). PasteSpecial xlPasteValues ​​Application.CutCopyMode = False End Sub 

Стъпка 5: Сега кодът е готов, след като стартирате гореспоменатия код, той ще върне под споменатия изход в sheet2, т.е. копираните данни ще бъдат поставени в sheet2 от клетка A1 (като стойности на паста)

Мисли да си спомня

  • В даден момент може да се изпълнява само една специална задача за поставяне, може да е тип паста или операция с поставяне. Специално поставяне (Paste, Operation, SkipBlanks, Transpose), В специалната функция paste всичките четири аргумента са незадължителни, където първите два аргумента са важни, чрез които можем да контролираме стойностите на набора от данни (форматиране, оцветяване и валидиране на данни)
  • Опциите за тип паста в специална паста са важни и полезни при форматирането на данни, когато изваждате данни от различни бази данни
  • В VBA, За да поставите само стойности, има различни други опции, различни от обхвата.

Препоръчителни статии

Това е ръководство за стойностите на VBA Paste. Тук обсъждаме как да използвате функцията Excel VBA Paste Values ​​заедно с практически примери и шаблон за Excel, който можете да изтеглите. Можете да разгледате и другите ни предложени статии -

  1. Функция за копиране на поставяне в VBA
  2. Функция Substring Excel
  3. VBA абонамент извън обхвата
  4. Excel ISNUMBER Formula

Категория: