2013-10-18 21:03:56 +0000 2013-10-18 21:03:56 +0000
12
12

Jak łączyć dane z wielu plików Excela w jeden plik Excela lub bazę danych Access Database?

Mam kilkadziesiąt plików Excela, które mają ten sam format (tj. 4 arkusze na plik Excela). Muszę połączyć wszystkie pliki w jeden plik główny, który musi mieć tylko 2 z 4 arkuszy. Odpowiednie arkusze z każdego pliku Excela mają dokładnie taką samą nazwę jak nagłówki kolumn.

Podczas gdy każdy plik ma taką samą strukturę, informacje w arkuszu 1 i 2 (np.) są inne. Nie można więc połączyć ich w jeden plik z wszystkim w jednym arkuszu!

Nigdy wcześniej nie używałem VBA i zastanawiam się, gdzie mogę zacząć to zadanie!

Odpowiedzi (5)

7
7
7
2013-10-21 10:39:29 +0000

Proszę zobaczyć Kreator Konsolidacji arkuszy roboczych dla Excela

Dodatek ma kilka trybów łączenia, jeden z nich robi dokładnie to, czego potrzebujesz. Zobacz ten link aby uzyskać szczegółowy opis tego trybu (jak łączyć arkusze o tej samej nazwie do jednego)

Dodatek jest oprogramowaniem typu shareware, ale posiada 15-dniową, w pełni funkcjonalną wersję próbną (przycisk pobierania na górze strony), dzięki czemu można łączyć tysiące swoich skoroszytów za darmo :)

4
4
4
2016-05-20 17:57:22 +0000

Dzisiaj natknąłem się na ten link RDBMerge, Excel Merge Add-in for Excel for Windows , który moim zdaniem będzie służył temu celowi.Jest to darmowe narzędzie oparte na makrach.

4
4
4
2016-10-25 22:45:42 +0000

Tutaj jest rozwiązaniem w pytonie.

import glob
import pandas as pd

path = "<path to files>"
file_identifier = "*.xlsx"

all_data = pd.DataFrame()
for f in glob.glob(path + "/*" + file_identifier):
    df = pd.read_excel(f)
    all_data = all_data.append(df,ignore_index=True)
3
3
3
2013-10-18 21:36:29 +0000

Ponieważ chciałeś je umieścić na jednym arkuszu, myślę, że to nie jest to, czego szukałeś.

Używam Microsoft Access do łączenia danych. Zwłaszcza, jeśli różne arkusze mają podobny identyfikator (numer części/osoba kontaktowa/ekt).

Tworzysz “tabelę” dla każdego arkusza, który ma być połączony Tworzysz “zapytanie”, które ściąga pożądane kolumny do jednego arkusza.

0
0
0
2013-10-18 21:28:57 +0000
  1. Otwórz wszystkie skoroszyty Excela w tej samej instancji.
  2. Być może trzeba będzie kliknąć wewnętrzny przycisk “restore”, aby zobaczyć poszczególne skoroszyty.
  3. Wybierz wszystkie arkusze, które chcesz przenieść, klikając Ctrl+kliknięcie na zakładki arkuszy.
  4. Kliknij prawym przyciskiem myszy na jedną z wybranych zakładek i wybierz Ruchnij lub Kopiuj…
  5. W pojawiającym się oknie dialogowym wybierz docelowy skoroszyt (“Master”), a następnie wybierz miejsce, w którym chcesz go wstawić.
  6. Opcja (przenieś na koniec) jest prawdopodobnie tym, co chcesz, ale zawsze możesz później zmienić ich kolejność.
  7. Wybierz Utwórz kopię, jeśli nie chcesz, by arkusze zostały usunięte z pierwszego skoroszytu
  8. Kliknij OK.

Wybrane arkusze zostaną przeniesione lub skopiowane z oryginalnego skoroszytu do Twojego “Master”. Po prostu zamknij źródłowy skoroszyt i zrób to ponownie z następnym, dopóki nie zgromadzisz wszystkich arkuszy, na których Ci zależy, w jednym dużym skoroszycie. Upewnij się, że zapisałeś!