Note: The other languages of the website are Google-translated. Back to English

Jak scalić lub skonsolidować arkusze lub skoroszyty w jeden arkusz?

W naszej codziennej pracy możemy napotkać problem polegający na scalaniu setek arkuszy lub skoroszytów w jeden arkusz w celu analizy danych, co zajmuje dużo czasu, jeśli używasz polecenia Kopiuj i wklej w programie Excel. W tym samouczku podam kilka wskazówek, jak szybko rozwiązać tę pracę.

doc połącz 1

SZYBKA NAWIGACJA

Scalanie wszystkich arkuszy aktywnego skoroszytu w jeden arkusz z VBA
Łączenie dziesiątek arkuszy lub skoroszytów w jeden arkusz / skoroszyt za pomocą kliknięć
Łączenie dwóch tabel w jedną i aktualizowanie według kolumny za pomocą kliknięć
Pobierz przykładowy plik


Scalanie wszystkich arkuszy aktywnego skoroszytu w jeden arkusz z VBA

W tej sekcji podaję kod VBA, który utworzy nowy arkusz, aby zebrać wszystkie arkusze aktywnego skoroszytu podczas jego uruchamiania.

1. Aktywuj skoroszyt, w którym chcesz połączyć wszystkie arkusze, a następnie naciśnij + klucze do otwarcia Microsoft Visual Basic for Applications okno.

2. W wyskakującym oknie kliknij wstawka > Moduł aby utworzyć nowy skrypt modułu.

3. Skopiuj poniższy kod i wklej go do skryptu.

Sub Combine()
'UpdatebyExtendoffice
Dim J As Integer
On Error Resume Next
Sheets(1).Select
Worksheets.Add
Sheets(1).Name = "Combined"
Sheets(2).Activate
Range("A1").EntireRow.Select
Selection.Copy Destination:=Sheets(1).Range("A1")
For J = 2 To Sheets.Count
Sheets(J).Activate
Range("A1").Select
Selection.CurrentRegion.Select
Selection.Offset(1, 0).Resize(Selection.Rows.Count - 1).Select
Selection.Copy Destination:=Sheets(1).Range("A65536").End(xlUp)(2)
Next
End Sub
doc połącz 2

4. naciśnij F5 klucz, następnie wszystkie dane w arkuszach zostały scalone w nowy arkusz o nazwie Połączone, który jest umieszczony na początku wszystkich arkuszy.


nie ruszaj się

Czy chcesz mieć podwyżkę i dużo czasu na towarzystwo rodziny?

Karta Office zwiększa wydajność o 50% podczas pracy pakietu Microsoft Office

Niewiarygodne, praca na dwóch lub więcej dokumentach jest łatwiejsza i szybsza niż praca na jednym.

W porównaniu ze znanymi przeglądarkami narzędzie z kartami na karcie Office jest wydajniejsze i bardziej wydajne.

Zredukuj dla siebie setki kliknięć myszą i pisania na klawiaturze każdego dnia, pożegnaj się z dłonią myszy.

Jeśli zwykle pracujesz nad wieloma dokumentami, karta Office to świetna oszczędność czasu.

30-dniowy bezpłatny okres próbny, Nie wymagamy karty kredytowej.

Przeczytaj więcejPobierz teraz


Łączenie dziesiątek arkuszy lub skoroszytów w jeden arkusz / skoroszyt za pomocą kliknięć

Dzięki VBA można łączyć arkusze tylko w aktywnym skoroszycie, ale jak można scalać arkusze w skoroszytach z arkuszem lub skoroszytem?

Scal arkusze ze skoroszytów w jeden arkusz
doc połącz 18

Scal arkusze ze skoroszytów w jeden skoroszyt
doc połącz 3

Aby rozwiązać tę pracę i spełnić inne wymagania dotyczące kombinacji arkuszy, plik Połączyć funkcja została opracowana z czterema scenariuszami kombinacji:

  • Połącz wiele arkuszy lub skoroszytów w jeden arkusz
  • Połącz wiele arkuszy lub skoroszytów w jeden skoroszyt
  • Połącz arkusze z tymi samymi nazwiskami w jeden arkusz
  • Konsoliduj wartości w arkuszach lub skoroszytach w jednym arkuszu

Oto druga opcja jako przykład:

Połącz wiele arkuszy lub skoroszytów w jeden skoroszyt

Po bezpłatna instalacja Kutools dla programu Excel, wykonaj poniższe czynności:

1. Aktywuj program Excel, kliknij Kutools Plus > Połączyć, pojawi się okno dialogowe przypominające o konieczności zamknięcia skoroszytów, które chcesz połączyć. Kliknij OK aby kontynuować.
doc połącz 4
doc połącz 5

2. w Połącz arkusze robocze krok 1 okno dialogowe, sprawdź Połącz wiele arkuszy ze skoroszytów w jeden skoroszyt opcja. Kliknij Dalej aby przejść do następnego kroku kreatora.
doc połącz 6

3. kliknij Dodaj > filet or Teczka aby dodać skoroszyty, które chcesz połączyć z plikiem Lista skoroszytów okienku, możesz określić, który arkusz zostanie połączony, wpisując nazwy Lista arkuszy szkło. Kliknij Dalej aby przejść do ostatniego kroku kreatora.
doc połącz 7

4. W tym kroku określ potrzebne ustawienia. Następnie kliknij koniec.
doc połącz 8

5. Pojawi się okno, w którym wybierzesz folder, w którym chcesz umieścić połączony skoroszyt, a następnie kliknij Zapisz.
doc połącz 9

Teraz skoroszyty zostały scalone w jeden skoroszyt. Na początku wszystkich arkuszy tworzony jest również arkusz główny o nazwie Kutools for Excel, który zawiera niektóre informacje o arkuszach i linkach dla każdego arkusza.
doc połącz 10

Demo: Połącz arkusze / skoroszyty w jeden arkusz lub skoroszyt

Kutools dla programu Excel: 200 + przydatne przydatne narzędzia, upraszczające skomplikowane zadania w programie Excel za pomocą kilku kliknięć.

Pożegnaj się teraz z dłonią myszy i spondylozy szyjnej

300 zaawansowanych narzędzi Kutools for Excel rozwiązuje 80% Zadania Excela w kilka sekund, wyrwij się z tysięcy kliknięć myszką.

Z łatwością radzisz sobie z 1500 scenariuszami pracy, nie musisz tracić czasu na szukanie rozwiązań, miej dużo czasu, aby cieszyć się życiem.

Popraw wydajność o 80% dla ponad 110000 wysoce efektywnych osób każdego dnia, oczywiście włączając Ciebie.

Nie męczy Cię już bolesne formuły i VBA, daj swojemu mózgowi spokój i radosny nastrój do pracy.

30-dniowa bezpłatna wersja próbna z pełnymi funkcjami, 30-dzień zwrotu pieniędzy bez powodu.

Lepsze ciało tworzy lepsze życie.


Łączenie dwóch tabel w jedną i aktualizowanie według kolumny za pomocą kliknięć

Jeśli chcesz scalić dwie tabele w jedną i zaktualizować dane na podstawie kolumny, jak pokazano na poniższym zrzucie ekranu, możesz wypróbować Scalanie tabel użyteczność Kutools dla programu Excel.
doc połącz 11

Kutools dla programu Excel: ponad 200 poręcznych dodatków do programu Excel upraszczających skomplikowane zadania za pomocą kilku kliknięć w programie Excel

Po bezpłatna instalacja Kutools dla programu Excel, wykonaj poniższe czynności:

1. kliknij Kutools Plus > Scalanie tabel umożliwić Scalanie tabel Kreator.
doc połącz 12

2. W kroku 1 kreatora należy oddzielnie wybrać główną tabelę i zakresy tabel przeglądowych. Następnie kliknij Dalej.
doc połącz 13

3. Zaznacz kolumnę kluczową, na podstawie której chcesz zaktualizować dane w głównej tabeli. Kliknij Dalej.
doc połącz 14

4. Następnie sprawdź kolumny w głównej tabeli, dla których chcesz zaktualizować dane na podstawie tabeli przeglądowej. Kliknij Dalej.
doc połącz 15

5. W kroku 4 kreatora zaznacz kolumny, które chcesz dodać z tabeli przeglądowej do tabeli głównej. Kliknij Dalej.
doc połącz 16

6. W ostatnim kroku kreatora określ potrzebne opcje ustawień. Następnie kliknij koniec.
doc połącz 17

Teraz w głównej tabeli zaktualizowano dane i dodano nowe dane na podstawie tabeli przeglądowej.

Demo: Połącz arkusze / skoroszyty w jeden arkusz lub skoroszyt

Kutools dla programu Excel: 200 + przydatne przydatne narzędzia, upraszczające skomplikowane zadania w programie Excel za pomocą kilku kliknięć.


Pobierz przykładowy plik

próba


Zalecane narzędzia zwiększające produktywność

Karta Office - przeglądanie w kartach, edycja, zarządzanie dokumentami w pakiecie Microsoft Office 2019-2003 i Office 365


zakładka Office

Profesjonalny dodatek przyspieszający pracę programu Excel 2019-2007, skracający godziny zadań do sekund

Ten dodatek zawiera dziesiątki grup zawodowych, a ponad 300 opcji zautomatyzuje większość Twoich codziennych zadań w programie Excel i zwiększy produktywność co najmniej o 50%. Takich jak grupy opcji opcji za jednym kliknięciem i konwersje zbiorcze.
Teraz masz szansę przyspieszyć się dzięki Kutools for Excel!


Sortuj komentarze według
Komentarze (168)
Brak ocen. Oceń jako pierwszy!
Ten komentarz został zminimalizowany przez moderatora na stronie
użyłeś swojej pierwszej funkcji makra. WOW! dzięki za wiadomość
Ten komentarz został zminimalizowany przez moderatora na stronie
myślę, że kod 'Selection.Offset(0, 0).Resize(Selection.Rows.Count - 1).Wybierznie musi tam być. Z mojej strony to, co robi, to zaznaczanie drugiego rzędu, pomijając pierwszy.
Ten komentarz został zminimalizowany przez moderatora na stronie
Mam ten sam problem. Pomija pierwszy wiersz z drugiego dodanego arkusza.
Ten komentarz został zminimalizowany przez moderatora na stronie
Eliminuje nagłówki, dzięki czemu nie masz zduplikowanych nagłówków
Ten komentarz został zminimalizowany przez moderatora na stronie
Działa jak urok, dzięki za udostępnienie!
Ten komentarz został zminimalizowany przez moderatora na stronie
Dziękuję Ci! Makro zadziałało idealnie.
Ten komentarz został zminimalizowany przez moderatora na stronie
nie wiem, jak korzystać z funkcji VBN w programie Excel, czy możesz pomóc, jak to zrobić.
Ten komentarz został zminimalizowany przez moderatora na stronie
Wielkie dzieki!!! Bardzo, bardzo przydatne
Ten komentarz został zminimalizowany przez moderatora na stronie
Makro jeden działa dobrze. Dzięki!! To jest zajebiste!!!! :)
Ten komentarz został zminimalizowany przez moderatora na stronie
Zauważ, że jest to ograniczone przez limit 65 tys. wierszy, jeśli musisz zwiększyć zakres linii Selection.Copy Destination:=Sheets(1).Range("A65536").End(xlUp)(2), aby rozwiązać problem.
Ten komentarz został zminimalizowany przez moderatora na stronie
Świetne narzędzie, jednak nie łączy wszystkich 21 arkuszy. Jak mogę poszerzyć asortyment?
Ten komentarz został zminimalizowany przez moderatora na stronie
UWAGA!!! Musisz być ostrożny z makro.. będzie działać, jeśli Twoje dane mają ciągły przepływ informacji i nie ma pustego wiersza. to, co robi wiersz "Selection.CurrentRegion.Select". Na przykład, jeśli chcesz skopiować WSZYSTKIE dane w arkuszu kalkulacyjnym, ale w (powiedzmy) wierszu 200 jest pusty wiersz, makro skopiuje tylko do wiersza 200; Zignoruje wszystkie dane poniżej tego wiersza!!!
Ten komentarz został zminimalizowany przez moderatora na stronie
Czy ktoś zna polecenie, aby uniknąć tego problemu? Problem z Selection.Offset(1, 0).Resize(Selection.Rows.Count - 1).Select można rozwiązać? Selection.Rows.Count - 1) to polecenie wywołujące problem. Ktokolwiek??
Ten komentarz został zminimalizowany przez moderatora na stronie
Zamiast zaczynać od góry i schodzić w dół, zacznij od dołu i idź w górę
Ten komentarz został zminimalizowany przez moderatora na stronie
Czy ktoś zna kod do rozwiązywania problemów z pustymi wierszami i kolumnami?. Mam to w swoich danych, ale nie ma prostego rozwiązania, jak uruchamianie od dołu do góry? Dzięki!
Ten komentarz został zminimalizowany przez moderatora na stronie
Aby usunąć puste wiersze: Opcja 1: Zaznacz komórki w kolumnie A, które chcesz usunąć. Użyj Ctrl -, a następnie wybierz Cały wiersz w wyskakującym okienku. Zapisz skoroszyt i wyjdź. Następnie otwórz skoroszyt. Opcja 2: Wybierz wiersze, które chcesz usunąć. Użyj Ctrl -. Zapisz skoroszyt i wyjdź z otwartego skoroszytu. Podałem opcję 1, aby było widać, co się dzieje. Aby usunąć kolumny, które są puste: Wybierz kolumnę. Klawisz kontrolny -. Zapisz skoroszyt i wyjdź z otwartego skoroszytu.
Ten komentarz został zminimalizowany przez moderatora na stronie
Czy mamy jakieś rozwiązanie, aby skopiować dane poniżej pustej komórki?
Ten komentarz został zminimalizowany przez moderatora na stronie
Dziękuję Ci ! Mój drugi rząd był pusty na wszystkich arkuszach i byłem zdezorientowany.
Ten komentarz został zminimalizowany przez moderatora na stronie
kod vba działał świetnie, ale potrzebuję połączonego arkusza roboczego do aktualizacji, gdy dodam nowe wiersze lub nowe dane do komórek w arkuszach, które łączę. Czy jest na to sposób? Dziękuję za pomoc.
Ten komentarz został zminimalizowany przez moderatora na stronie
Kod makra działał świetnie w przypadku pierwszego połączonego arkusza roboczego, ale muszę go zaktualizować, gdy dodam dane do istniejących arkuszy, które łączę. Czy jest na to sposób?
Ten komentarz został zminimalizowany przez moderatora na stronie
Czy kiedykolwiek zastanawiałeś się, jak zaktualizować go w wzorcu podczas dodawania wierszy do innych arkuszy?
Ten komentarz został zminimalizowany przez moderatora na stronie
Świetna robota.. Skróciło to moją pracę z 2 godzin do 10 minut.
Ten komentarz został zminimalizowany przez moderatora na stronie
Świetnie, użyłem zarówno pierwszego makra, jak i Kutools, oba znacznie ograniczyły moje prace związane z gromadzeniem i kompilacją danych. Dzięki za udostępnienie.
Ten komentarz został zminimalizowany przez moderatora na stronie
Właśnie skasowałem część podaną poniżej i teraz tylko się aktualizuje. Mam nadzieję, że to pomoże... Arkusze(1).Wybierz Arkusze.Dodaj
Ten komentarz został zminimalizowany przez moderatora na stronie
Kod działa świetnie! Potrzebuję makra do skopiowania wszystkich danych na arkuszach. Odcina pierwszy wiersz po arkuszu 1. Tylko arkusz pierwszy ma wiersz nagłówka, pozostałe arkusze to tylko dane. czy to możliwe?
Ten komentarz został zminimalizowany przez moderatora na stronie
Mam pytanie na temat "Połącz wszystkie arkusze w jeden arkusz z kodem VBA": Kod działa bardzo dobrze, ale tylko wtedy, gdy jest pusty, dodaje nagłówek, można zmodyfikować kod, aby nie konsolidować pustego arkusza?
Ten komentarz został zminimalizowany przez moderatora na stronie
Dzięki zaoszczędziłeś mi godzinę kopiowania i wklejania :D
Ten komentarz został zminimalizowany przez moderatora na stronie
Mieć dwa skoroszyty, te same dane, ale drugi zawiera dodatkowe dane, a niektóre dane zostały zaktualizowane, inv# Status 123 7/2 otwarty inv# status 123 7/2 otwarty 7/7 zamknięty jak scalić w jeden usuwając lub podświetlając duplikaty i dodając jakakolwiek nowa inv# nie w pierwszej
Ten komentarz został zminimalizowany przez moderatora na stronie
Działa świetnie, jeśli kolumna A nie jest pusta. Na arkuszach z kolumną A pusta, wydaje się, że jest nadpisywana. W moich danych kolumna E jest niepusta na wszystkich arkuszach. Jak mogę zmodyfikować miejsce docelowe kopii, aby uwzględnić pustą kolumnę A na niektórych arkuszach?
Ten komentarz został zminimalizowany przez moderatora na stronie
Sub CopySheet() ' ' Makro CopySheet ' ' Dim i As Integer For i = 2 To 25 Sheets("Sheet1").Select Range("A1").Select Selection.End(xlDown).Select Range("A" & CStr(Selection.Row) + 1).Select Sheets("Arkusz" i CStr(i)).Select Range("A2").Select Range(Selection, Selection.End(xlDown)).Select Range(Selection, Selection) .End(xlToRight)).Select Selection.Cut Sheets("Arkusz1").Select ActiveSheet.Paste Next End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
Range("A:A").SpecialCells(xlCellTypeLastCell).Select ActiveCell.Offset(1, 0).Select 'użyj tego kodu, aby wybrać ostatnią komórkę w kolumnie "A" [cytat] Sub CopySheet() ' ' CopySheet Macro ' ' Dim i As Integer For i = 2 To 25 Sheets("Arkusz1").Select Range("A1").Select Selection.End(xlDown).Select Range("A" & CStr(Selection.Row) + 1) .Wybierz arkusze("Arkusz" i CStr(i)).Wybierz zakres("A2").Wybierz zakres(Zaznaczenie, Zaznaczenie.End(xlDown)).Wybierz zakres(Zaznaczenie, Zaznaczenie.End(xlToRight)).Wybierz zaznaczenie .Cut Sheets("Arkusz1").Wybierz ActiveSheet.Paste Next End SubBy[/ Quote]
Ten komentarz został zminimalizowany przez moderatora na stronie
MAKRO KOD DZIAŁAŁ TAK DOBRZE... ŚWIETNA PRACA :-)
Nie ma tu jeszcze żadnych komentarzy
Pokaż więcej

Bądż na bieżąco

Prawa autorskie © 2009 - www.extendoffice.com. | Wszelkie prawa zastrzeżone. Zasilany przez ExtendOffice, | Mapa strony
Microsoft i logo Office są znakami towarowymi lub zastrzeżonymi znakami towarowymi Microsoft Corporation w Stanach Zjednoczonych i / lub innych krajach.
Chronione przez Sectigo SSL