VBA Paste Special to Copy Values and Formats in Excel (9 Examples) -.

  • Udostępnij To
Hugh West

Gdy potrzebujemy skopiować i wkleić dowolne dane w programie Microsoft Excel, mamy do dyspozycji różne skróty i narzędzia wstążki w Excelu.Excel VBA Makro również posiada takie udogodnienie zamiast opcji skoroszytu.Omówimy VBA Wklejanie specjalne wartości i formaty w programie Excel.

Pobierz Zeszyt ćwiczeń

Pobierz ten zeszyt ćwiczeń, aby ćwiczyć podczas czytania tego artykułu.

Wartości i formaty przy użyciu PasteSpecial.xlsm

9 Przykłady na kopiowanie wartości i formatów z wklejaniem specjalnym w Excelu VBA

W tym artykule omówimy 9 metod z Makra VBA do Wklej Specjalnie wartości i format w programie Excel.

W tym celu rozważymy poniższy zbiór danych.

1. zastosuj InputBox w VBA Wklejanie specjalne do kopiowania wartości i formatów

W tym przykładzie użyjemy opcji InputBox dla Wklej Specjalnie .

Krok 1:

  • Idź do Deweloper tab.
  • Kliknij na Zapis Makro .
  • Ustaw Excel_Paste_Special_1 jako Nazwa makra .
  • Następnie naciśnij OK .

Krok 2:

  • Teraz należy kliknąć Makra polecenie.
  • Wybierz Makro a następnie naciśnij Step Into .

Krok 3:

  • Skopiuj i wklej następujący kod na module poleceń.
 Sub Excel_Wklejanie_Specjalne_1() Dim Kopia_Cell As Zakres, Wklej_Cell As Zakres xTitleId = "Płace_Arkusz" Set Kopia_Cell = Application.Selection Set Kopia_Cell = Application.InputBox("Wybierz zakres do skopiowania :", xTitleId, Kopia_Cell.Adres, Typ:=8) Set Wklej_Cell = Application.InputBox("Wklej do dowolnej pustej komórki:", xTitleId, Typ:=8) Kopia_Cell.Kopia Wklej_Cell.Rodzic.Aktywuj Wklej.xlPasteValuesAndNumberFormats Paste_Cell.PasteSpecial xlPasteFormats Application.CutCopyMode = False End Sub 

Krok 4:

  • Naciśnij F5 aby uruchomić kod.
  • Pojawi się nowe okno dialogowe, w którym należy wybrać zakres źródeł.
  • Następnie naciśnij OK .

Krok 5:

  • Pojawi się kolejne okno dialogowe. Wybierz pusty zakres, w którym wkleisz skopiowane komórki.

Teraz spójrz na zbiór danych.

Wszystkie dane są kopiowane z wartościami i formatami za pomocą VBA Wklejanie specjalne .

Read More: Jak zastosować VBA PasteSpecial i zachować formatowanie źródłowe w Excelu

2. wstawianie zakresu komórek z wartościami i formatami przy użyciu xlPasteAllUsingSourceTheme w VBA Wklejanie specjalne

Wstawimy zakres komórek bezpośrednio na VBA kod w tej sekcji.

Krok 1:

  • Naciśnij Alt+F11 aby wejść do modułu dowodzenia.
  • W module poleceń umieść następujący kod.
 Sub Excel_Paste_Special_2() Range("B4:C9").Copy Range("E4").PasteSpecial xlPasteAllUsingSourceTheme End Sub 

Krok 2:

  • Teraz naciśnij F5 aby uruchomić kod.

Ten xlPasteAllUsingSourceTheme polecenie kopiuje dokładny duplikat danych źródłowych.

Read More: Excel VBA: Kopiuj wartość komórki i wklej do innej komórki

3. użycie zmiennej VBA do wstawienia zakresu z wartościami i formatami przy użyciu funkcji Wklej Specjalnie

Pokażemy użycie zmiennych w VBA Wklejanie specjalne kod tutaj.

Krok 1:

  • Najpierw należy wejść do modułu poleceń, naciskając Alt+F11 .
  • Napisz poniższy kod w module poleceń.
 Sub Excel_Paste_Special_3() Dim źródło_rng As Range, wklej_rng As Range Set źródło_rng = Range("B4:C9") Set wklej_rng = Range("E4") źródło_rng.Kopiuj wklej_rng.WklejSpecial:=xlPasteAllUsingSourceTheme End Sub. 

Krok 2:

  • Naciśnij F5 i uruchomić kod.

Read More: Excel VBA: Kopiowanie zakresu do innego skoroszytu

4. Użyj xlPasteValues i xlPasteFormats aby skopiować wartości i formaty w innym arkuszu zachowując niezmienione formaty

Powyższe metody służyły do kopiowania i wklejania danych w tym samym arkuszu. Teraz pokażemy, jak wykorzystać metodę VBA Wklejanie specjalne dla różnych arkuszy.

Krok 1:

  • Wejdź do modułu poleceń, klikając Alt+F11 i skopiować na nią następujący kod.
 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 Destination.PasteSpecial Paste:=xlPasteValues Destination.PasteSpecial Paste:=xlPasteFormats.Application.CutCopyMode = False Application.ScreenUpdating = True End Sub 

Krok 2:

  • Naciśnij F5 aby uruchomić kod.

Widzimy, że dane z Data_Set jest kopiowany do Different_Sheet .

Read More: Jak używać VBA PasteSpecial dla formuł i formatów w Excelu (3 sposoby)

Podobne lektury

  • Jak skopiować wiele komórek do innego arkusza w programie Excel (9 metod)
  • Różnica między Wklej a Wklej Specjalnie w Excelu
  • Excel VBA do kopiowania danych z innego skoroszytu bez otwierania
  • Jak skopiować i wkleić w Excelu i zachować rozmiar komórki (7 przykładów)
  • Kopiuj i wklej wartości do następnego pustego wiersza w Excelu VBA (3 przykłady)

5. użyj xlPasteFormats aby wkleić tylko formaty

W poprzednich metodach kopiowaliśmy całe dane i wklejaliśmy je bez zmian, ale w tej części skopiujemy tylko format danych.

Krok 1:

  • Przejdź do modułu sterowania, naciskając Alt+F11 .
  • Skopiuj i wklej poniższy kod w module poleceń.
 Sub Excel_Paste_Special_5() Range("B2:C9").Copy Range("E2").PasteSpecial xlPasteFormats End Sub 

Krok 2:

  • Teraz naciśnij przycisk F5 i uruchomić kod.

Spójrz na zbiór danych, tylko formaty są skopiowane, nie ma tu żadnych wartości.

Read More: Jak kopiować i wklejać w programie Excel bez zmiany formatu

6. użyj xlPasteValues aby wkleić tylko wartości

Możemy skopiować wartości tylko przy użyciu VBA Wklejanie specjalne .

Krok 1:

  • Naciśnij Alt+F11 aby wejść do modułu dowodzenia.
  • Napisz następujący kod na module komend.
 Sub Excel_Paste_Special_6() Range("B4:C9").Copy Range("E4").PasteSpecial xlPasteValues End Sub 

Krok 2:

  • Kliknij na F5 i uruchomić kod.

Zwróć uwagę na zbiór danych, tutaj kopiowane są tylko wartości, w tej metodzie nie są kopiowane formaty.

Read More: Jak używać VBA do wklejania wartości bez formatowania w Excelu

7. kopiowanie i wklejanie całej zawartości pojedynczej komórki

W poprzednich rozdziałach kopiowaliśmy zakres danych, tutaj skopiujemy tylko pojedynczą komórkę.

Krok 1:

  • Teraz naciśnij Alt+F11 i wejść do modułu poleceń.
  • Wpisz na module następujący kod.
 Sub Excel_Paste_Special_7() Range("B4").Copy Range("E4").PasteSpecial xlPasteAllUsingSourceTheme End Sub 

Krok 2:

  • Teraz naciśnij przycisk F5 aby uruchomić kod.

Widzimy, że kopiowana jest tutaj pojedyncza komórka, a nie zakres.

Read More: Formuła do kopiowania i wklejania wartości w Excelu (5 przykładów)

Kopiuj i wklej wszystkie atrybuty określonej kolumny za pomocą VBA

Podobnie jak w przypadku pojedynczej komórki, możemy skopiować pojedynczą kolumnę w zbiorze danych.

Krok 1:

  • Wystarczy nacisnąć Alt+F11 aby wejść do modułu dowodzenia.
  • Napisz poniższy kod w module.
 Sub Excel_Paste_Special_8() Dim źródło_rng As Range, paste_rng As Range Set źródło_rng = Columns("C") Set paste_rng = Columns("E") źródło_rng.Copy paste_rng.PasteSpecial Paste:=xlPasteAllUsingSourceTheme End Sub 

Krok 2:

  • Uruchom kod, naciskając przycisk F5 .

Tutaj widzimy, że Kolumna B jest kopiowany do Kolumna E .

Read More: [Naprawiono]: Kopiowanie i wklejanie prawym przyciskiem myszy nie działa w Excelu (11 rozwiązań)

9. kopiowanie i wklejanie wszystkich atrybutów wiersza za pomocą VBA w Excelu

Podobnie, możemy skopiować pojedynczy wiersz używając Wklej Specjalnie .

Krok 1:

  • Kliknij na Alt+F11 aby wejść do modułu komend.
  • Skopiuj następujący kod na moduł poleceń.
 Sub Excel_Paste_Special_9() Dim źródło_rng As Range, wklej_rng As Range Set źródło_rng = Rows("4") Set wklej_rng = Rows("11") źródło_rng.Kopiuj wklej_rng.WklejSpecial:=xlPasteAllUsingSourceTheme End Sub 

Krok 2:

  • Uruchom kod, naciskając przycisk F5 .

Tutaj, Wiersz 4 jest kopiowany do Wiersz 11 .

Read More: Jak skopiować wiele wierszy w Excelu za pomocą makra (4 przykłady)

Wniosek

W tym artykule wyjaśniliśmy 9 metody VBA Wklejanie wartości specjalnych i formatów w Excelu. Mam nadzieję, że to zaspokoi Państwa potrzeby. Proszę zajrzeć na naszą stronę internetową Exceldemy.com i podawać swoje sugestie w polu komentarza.

Hugh West jest bardzo doświadczonym trenerem i analitykiem Excela z ponad 10-letnim doświadczeniem w branży. Posiada tytuł licencjata w dziedzinie rachunkowości i finansów oraz tytuł magistra administracji biznesowej. Hugh ma pasję do nauczania i opracował unikalne podejście do nauczania, które jest łatwe do naśladowania i zrozumienia. Jego specjalistyczna wiedza na temat programu Excel pomogła tysiącom studentów i profesjonalistów na całym świecie doskonalić swoje umiejętności i osiągać doskonałe wyniki w karierze. Za pośrednictwem swojego bloga Hugh dzieli się swoją wiedzą ze światem, oferując bezpłatne samouczki programu Excel i szkolenia online, aby pomóc osobom indywidualnym i firmom w pełni wykorzystać swój potencjał.