Excel VBA-waarden plakken

Dagelijks gebruiken we meestal de functie kopiëren / plakken om vaak uit te blinken. Behalve kopiëren / plakken, kunnen we ook gegevens opmaken met verschillende hieronder genoemde opties die beschikbaar zijn in plakken speciaal.

VBA PASTE VALUES-functie Plakt alleen de waarden van het gekopieerde gegevensbereik zoals weergegeven in de cellen.

Opmerking: het kopieert niet de onderliggende formule die aanwezig is in de cel, die u in de formulebalk aantreft. dat wil zeggen dat het alleen de resultaatwaarde van een formule kopieert.

In het VB-macrovenster helpt CTRL + SPACE click u bij de VBA Intellisense-vervolgkeuzelijst, die u helpt bij het schrijven van de code. Na het typen van PASTE SPECIAL en klik op de onderstaande spatiebalk verschijnen verschillende opties voor het plakken van het type die ook xLPasteValues ​​bevatten.

Syntaxis voor waarden plakken in Excel VBA

De syntaxis voor de functie VBA-plakwaarde in Excel is als volgt:

Voorafgaand aan het plakken van speciale waarden of wanneer u speciale plakopties gebruikt, moet het VBA-bereikobject eerder worden vermeld omdat u de gegevens van een specifiek celbereik naar een ander celbereik kopieert.

Hier, met verwijzing naar Excel-werkblad, bestaat het VBA-bereikobject uit cellen die één of meerdere kunnen zijn.

XlPaste Type:

Verschillende soorten pasta-type die verschijnen onder dropdown van PASTE SPECIAL zijn:

XlPaste bewerking Type:

Net als bij de opties voor het plakken, is er ook een optie voor het plakken van bewerkingen, waarbij u wiskundige bewerkingen hieronder kunt uitvoeren.

  • (Spaties overslaan): als u spaties wilt overslaan, kunt u kiezen tussen TRUE of FALSE.
  • (Transponeren): als u de gegevens wilt transponeren, kunt u een van de opties kiezen, bijvoorbeeld WAAR of ONWAAR

Stel dat ik de brongegevens in een bereik van G7 tot J10 heb, die de score van studenten en hun resultaten met betrekking tot registratie-ID bevatten, waar het formules, tekstgegevens en numerieke gegevens bevat.

Ik moet deze gegevens naar een ander celbereik in hetzelfde blad kopiëren zonder formule, dwz alleen als een waarde, hiervoor moet ik de onderstaande stappen volgen.

Hoe de functie Waarden plakken te gebruiken in Excel VBA?

Hieronder staan ​​de verschillende voorbeelden om de functie Waarden plakken in Excel te gebruiken met behulp van VBA-code.

U kunt deze VBA-waarden Excel-sjabloon hier downloaden - VBA-waarden Excel-sjabloon plakken

VBA-waarden voor plakken Functie - Voorbeeld # 1

Stap 1: Open een VB Editor-venster met behulp van Alt + F11 sneltoets, selecteer of klik op Visual Basic in de codegroep op het tabblad Ontwikkelaars.

Stap 2: Om een ​​lege module te maken, klikt u met de rechtermuisknop op Microsoft Excel-objecten, klikt u op Invoegen en selecteert u Module, waar de lege module wordt gemaakt, onder de categorie (NAAM) categorie met eigenschappen, kunt u de naam wijzigen als 'VB_PASTE_VALUES'

Code:

 Sub PASTE_VALUES () Einde Sub 

Stap 3: Ik moet eerst het gegevensbereik kopiëren met behulp van Bereik. Kopieermethode (voor het kopiëren van het specifieke gegevensbereik), dat wil zeggen van G7 tot J10 van bladnaam "VB_PASTE_VALUES" voor het kopiëren van het bereik, moet ik de onderstaande code na sub toepassen of toevoegen.

Code:

 Sub PASTE_VALUES () Bereik ("g7: j10"). Kopiëren Einde Sub 

Stap 4: Na het kopiëren van de gegevens moet ik de waarden van G14 naar J17 plakken. Hier is de eerste referentie van het bereik G14, hier kan ik ofwel "G14" invoeren OF ik kan "G14 tot J17" invoeren. Nadat ik het bereik heb geselecteerd, moet ik plakken. Plaats daarom een ​​punt (.) Na het bereik en typ PasteSpecial, zodra u op de spatiebalktoets klikt, verschijnen hieronder verschillende xlpastetype-opties, selecteer xlPasteValues

Code:

 Sub PASTE_VALUES () Bereik ("g7: j10"). Kopieerbereik ("g14"). PasteSpecial xlPasteValues ​​End Sub 

Stap 5: Nadat u deze code hebt uitgevoerd, zijn de gegevens van G7 naar J10 gekopieerd en als waarden van G14 naar J17 geplakt.

Nu, in het bovengenoemde voorbeeld, is er een verschil in de tabelindeling tussen gekopieerde en geplakte gegevens. (Wijzigingen opmaken).

Stap 6: Als u hetzelfde tabelformaat wilt, moet u de code bijwerken met de onderstaande wijzigingen, waarbij u een extra regel code xlPasteformat moet gebruiken vóór xlPastevalues

Code:

 Sub PASTE_VALUES () Bereik ("g7: j10"). Kopieerbereik ("g14: j17"). PasteSpeciale xlPasteFormats Range ("g14: j17"). PasteSpecial xlPasteValues ​​End Sub 

Stap 7: Wanneer u de bovenstaande code uitvoert, kopieert en plakt deze eerst de tabelindeling en plakt later waarden.

Opmerking: Wanneer u de hierboven genoemde codes uitvoert, tijdens de kopieer- en plakwaardenprocedure nadat de gegevens zijn gekopieerd, verschijnt de selectiemodus en kunt u deze over de randen waarnemen met groene stippellijnen.

U kunt dat verwijderen door de macro bij te werken met de laatste regelcode vóór het einde van het subcommando, dwz

Application.cutcopymode = false de bovenstaande code schakelt marsmieren rond een gekopieerd bereik uit

VBA-waarden voor plakken Functie - Voorbeeld # 2

In het eerste voorbeeld hebben we gegevens kopiëren en plakken in hetzelfde werkbladblad,

Stel nu dat u gegevens van het ene werkblad naar een ander werkblad wilt kopiëren, laat ons eens kijken hoe we deze taak kunnen uitvoeren

Stap 1: In de VBA-editor heb ik een naam gegeven als PASTE_VALUES3 () na het typen van Sub

Code:

 Sub PASTE_VALUES_3 () Einde Sub 

Stap 2: Voordat we het bereik selecteren, moeten we informeren uit welk blad de gegevens moeten worden geselecteerd, dus het werkblad moet worden geselecteerd, daarna moeten we het bereik selecteren met behulp van bereik . Kopieermethode vergelijkbaar met voorbeeld 1.

Code:

 Sub PASTE_VALUES_3 () Werkbladen ("VB_PASTE_VALUES"). Bereik ("g7: j10"). Kopiëren Einde Sub 

In de bovenstaande code is de naam van het werkblad "VB_PASTE_VALUES" en is het gegevensbereik "g7: j10"

Stap 3: In de volgende stap plakken we gegevens naar een ander werkblad, daarom moeten we dat blad selecteren op basis van de naam en het bereik waar we de gegevens moeten plakken, na het bereik moeten we de pastespecial-functie en de optie voor het plaktype invoeren, dwz PasteSpecial xlPasteValue

Code:

 Sub PASTE_VALUES_3 () Werkbladen ("VB_PASTE_VALUES"). Bereik ("g7: j10"). Werkbladen kopiëren ("Sheet2"). Bereik ("A1"). PasteSpecial xlPasteValues ​​End Sub 

Stap 4: Aan het einde van de code, voorafgaand aan het einde sub, moeten we bovengenoemde code invoeren, waar het marcherende mieren rond het gekopieerde bereik zal uitschakelen.

Code:

 Sub PASTE_VALUES_3 () Werkbladen ("VB_PASTE_VALUES"). Bereik ("g7: j10"). Werkbladen kopiëren ("Sheet2"). Bereik ("A1"). PasteSpecial xlPasteValues ​​Application.CutCopyMode = False End Sub 

Stap 5: Nu is de code klaar, zodra u de bovengenoemde code uitvoert, retourneert deze de onderstaande uitvoer in blad2, dwz de gekopieerde gegevens worden vanuit A1 cel in blad2 geplakt (als plakwaarden)

Denkt te onthouden

  • Er kan slechts één speciale plaktaak tegelijk worden uitgevoerd, dit kan een pasta-type of een plakbewerking zijn. Plakken speciaal (Plakken, Bewerking, SkipBlanks, Transponeren), In de plak speciale functie zijn alle vier argumenten optioneel, waarbij de eerste twee argumenten belangrijk zijn waarmee we gegevenssetwaarden kunnen bepalen (opmaak, kleuren en gegevensvalidatie)
  • Plaktype-opties in plakken speciaal is belangrijk en nuttig bij het formatteren van gegevens wanneer u gegevens uit de verschillende databases haalt
  • In VBA, om alleen waarden te plakken, zijn er naast het bereik verschillende andere opties beschikbaar.

Aanbevolen artikelen

Dit is een handleiding voor VBA-waarden plakken. Hier bespreken we hoe u de functie Excel VBA Plakwaarden kunt gebruiken, samen met praktische voorbeelden en een downloadbare Excel-sjabloon. U kunt ook onze andere voorgestelde artikelen doornemen -

  1. Kopieer en plak functie in VBA
  2. Substring Excel-functie
  3. VBA-subscript buiten bereik
  4. Excel ISNUMBER Formula

Categorie: