Spis treści
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.