Jak skopiować dane do innego arkusza roboczego za pomocą filtru zaawansowanego w programie Excel?
Zwykle możemy szybko zastosować Zaawansowany filtr funkcja wyodrębniania danych z surowych danych w tym samym arkuszu. Ale czasami, gdy spróbujesz skopiować przefiltrowany wynik do innego arkusza, pojawi się następujący komunikat ostrzegawczy. W takim przypadku jak poradzisz sobie z tym zadaniem w programie Excel?
Skopiuj dane do innego arkusza roboczego za pomocą filtru zaawansowanego za pomocą kodu VBA
Skopiuj dane do innego arkusza za pomocą filtru zaawansowanego za pomocą funkcji filtru zaawansowanego
Oto prosty sposób obejścia tego zadania, wykonaj następujące czynności:
1. Aktywuj arkusz, do którego chcesz skopiować przefiltrowany wynik, używając funkcji Filtr zaawansowany.
2. Następnie kliknij Dane > Zaawansowanezobacz zrzut ekranu:
3, w Zaawansowany filtr okno dialogowe, wybierz Skopiuj do innej lokalizacji z Działania , a następnie kliknij , aby wybrać zakres danych, który chcesz filtrować w innym arkuszu obok Zakres listy, kliknij dalej przycisk obok Zakres kryteriów aby wybrać kryteria z innego arkusza, zobacz zrzut ekranu:
4. Następnie kliknij przycisk obok Kopiuj do zaznacz komórkę, w której chcesz wyprowadzić przefiltrowany wynik z aktywnego arkusza, a następnie kliknij OK przycisk, przefiltrowany wynik został wyodrębniony do innego arkusza na podstawie oryginalnego arkusza danych.
Skopiuj dane do innego arkusza roboczego za pomocą filtru zaawansowanego za pomocą kodu VBA
Jeśli jesteś biegły w kodzie VBA, możesz zakończyć tę pracę za pomocą następującego kodu VBA.
1. Aktywuj arkusz, który chcesz przefiltrować, i skopiuj wynik do innego arkusza.
2. Przytrzymaj ALT + F11 klucze w programie Excel i otwiera plik Microsoft Visual Basic for Applications okno.
3. Kliknij wstawka > Modułi wklej następujący kod w Moduł Okno.
Kod VBA: Skopiuj dane do innego arkusza roboczego za pomocą filtru zaawansowanego:
Sub Advancedfiltertoanothersheet()
'Updateby Extendoffice
Dim xStr As String
Dim xAddress As String
Dim xRg As Range
Dim xCRg As Range
Dim xSRg As Range
On Error Resume Next
xAddress = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Please select the filter range:", "Kutools for Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
Set xCRg = Application.InputBox("Please select the criteria range:", "Kutools for Excel", "", , , , , 8)
If xCRg Is Nothing Then Exit Sub
Set xSRg = Application.InputBox("Please select the output range:", "Kutools for Excel", "", , , , , 8)
If xSRg Is Nothing Then Exit Sub
xRg.AdvancedFilter xlFilterCopy, xCRg, xSRg, False
xSRg.Worksheet.Activate
xSRg.Worksheet.Columns.AutoFit
End Sub
4. A następnie naciśnij F5 aby uruchomić ten kod i pojawi się okno dialogowe umożliwiające wybranie zakresu danych, który chcesz filtrować, patrz zrzut ekranu:
5. Następnie kliknij OK, a pojawi się kolejne okno dialogowe przypominające o wybraniu zakresu kryteriów, na podstawie którego chcesz filtrować, patrz zrzut ekranu:
6. Kliknij dalej OK, w wyskakującym oknie dialogowym wybierz komórkę z innego nowego arkusza, w którym chcesz wyprowadzić wynik filtru, zobacz zrzut ekranu:
7. Nareszcie kliknij OK przycisk, przefiltrowane dane zostały wyprowadzone do innego określonego arkusza zgodnie z potrzebami.
Najlepsze narzędzia biurowe
Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas. Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...
Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę
- Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
- Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
- Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!