Jak scalić dane z wielu plików Excela w pojedynczy plik Excel lub uzyskać dostęp do bazy danych?


13

Mam kilkadziesiąt plików Excela, które są w tym samym formacie (tj. 4 arkusze na plik Excel). Muszę połączyć wszystkie pliki w jeden plik główny, który musi zawierać tylko 2 z 4 arkuszy. Odpowiednie arkusze z każdego pliku Excel są nazywane dokładnie tak samo, jak nagłówki kolumn.

Podczas gdy każdy plik ma taką samą strukturę, informacje w arkuszach 1 i 2 (na przykład) są różne. Dlatego nie można go połączyć w jeden plik ze wszystkim w jednym arkuszu!

Nigdy wcześniej nie korzystałem z VBA i zastanawiam się, gdzie mógłbym zacząć to zadanie!

Odpowiedzi:


3

Ponieważ chciałeś je na jednym arkuszu, myślę, że powyższe nie jest tym, czego szukałeś.

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

Tworzysz „tabelę” dla każdego arkusza kalkulacyjnego, który ma zostać scalony. Tworzysz „kwerendę”, która przenosi żądane kolumny do jednego arkusza



5

Oto rozwiązanie w python.

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)

1
zawsze zadziwiałam, co możesz zrobić za pomocą kilku linii Pythona!
TimoSolo,

2
aby zapisać plik, użyj czegoś takiego: writer = pd.ExcelWriter('merged.xlsx', engine='xlsxwriter') \n all_data.to_excel(writer, sheet_name='Sheet1') \n writer.save()
TimoSolo,


0
  1. Otwórz wszystkie skoroszyty programu Excel w tym samym wystąpieniu programu Excel.
    • Może być konieczne kliknięcie wewnętrznego przycisku „przywróć”, aby wyświetlić poszczególne skoroszyty.
  2. Wybierz wszystkie arkusze, które chcesz przenieść, Ctrlklikając + Karty zakładki arkusza.
  3. Kliknij prawym przyciskiem myszy jedną z wybranych kart i wybierz Przenieś lub Kopiuj ...
  4. W wyświetlonym oknie dialogowym wybierz docelowy skoroszyt (skoroszyt „główny”), a następnie wybierz miejsce, w którym chcesz je wstawić.
    • Opcja (przejście do końca) jest prawdopodobnie tym, czego chcesz, ale zawsze możesz zmienić ich kolejność później.
    • Wybierz opcję Utwórz kopię, jeśli nie chcesz, aby arkusze były usuwane z pierwszego skoroszytu
  5. Kliknij OK .

Wybrane arkusze zostaną przeniesione lub skopiowane z oryginalnego skoroszytu do skoroszytu „wzorcowego”. Po prostu zamknij źródłowy wookbook i zrób to ponownie z następnym, aż zgromadzisz wszystkie arkusze, na których Ci zależy, w jednym dużym wookbooku. Pamiętaj, aby zapisać!


Tak, działa z programem Excel 2010.
Keks Dose
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.