Birden Çok Excel Dosyasından Verileri Tek Bir Excel Dosyasına veya Erişim Veritabanına Nasıl Birleştirilir?


13

Hepsi aynı formatta olan birkaç düzine excel dosyası var (Excel dosyası başına 4 çalışma sayfası). Tüm dosyaları 4 çalışma sayfasından sadece 2'si olması gereken 1 ana dosyada birleştirmem gerekiyor. Her Excel dosyasındaki karşılık gelen çalışma sayfaları sütun başlıklarıyla tamamen aynı şekilde adlandırılır.

Her dosya aynı şekilde yapılandırılırken, sayfa 1 ve 2'deki bilgiler (örneğin) farklıdır. Yani her şey tek bir sayfada olacak şekilde tek bir dosyada birleştirilemez!

Daha önce hiç VBA kullanmadım ve bu göreve nereden başlayabileceğimi merak ediyorum!

Yanıtlar:


3

Onları tek bir sayfada istediğin için, yukarıdakinin aradığın şey olmadığını düşünüyorum.

Verileri birleştirmek için Microsoft Access kullanıyorum. Özellikle, farklı sayfalarda benzer bir tanımlayıcı varsa (parça numarası / ilgili kişi / vb).

Birleştirilecek her e-tablo için bir "tablo" oluşturursunuz İstediğiniz sütunları bir sayfaya çeken bir "sorgu" oluşturursunuz


7

Lütfen Excel için Çalışma Sayfalarını Birleştirme Sihirbazı eklentisine bakın

Eklentinin birkaç birleştirme modu vardır, bunlardan biri tam olarak ihtiyacınız olanı yapar.

Modun ayrıntılı bir açıklaması için lütfen bu bağlantıya bakın (aynı ada sahip sayfaları bir ile nasıl birleştirebilirsiniz)

Eklenti bir shareware, ancak 15 günlük tamamen işlevsel bir deneme sürümüne (sayfanın üstündeki indirme düğmesi) sahiptir, böylece binlerce çalışma kitabınızı ücretsiz olarak birleştirebilirsiniz :)


5

İşte python'da bir çözüm.

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
her zaman birkaç satır python ile neler yapabileceğinizi şaşırttı!
TimoSolo

2
dosyayı yazmak için, şöyle bir şey kullanın: writer = pd.ExcelWriter('merged.xlsx', engine='xlsxwriter') \n all_data.to_excel(writer, sheet_name='Sheet1') \n writer.save()
TimoSolo


0
  1. Tüm Excel çalışma kitaplarını aynı Excel örneğinde açın.
    • Tek tek çalışma kitaplarını görmek için dahili "geri yükle" düğmesini tıklamanız gerekebilir.
  2. Taşımak istediğiniz tüm sayfaları Ctrl+ Çalışma sayfası sekmelerini tıklatarak seçin .
  3. Seçilen sekmelerden birine sağ tıklayın ve Taşı veya Kopyala ... seçeneğini belirleyin.
  4. Açılan iletişim kutusunda hedef çalışma kitabını ("Ana" çalışma kitabınız) seçin ve ardından nereye ekleyeceğinizi seçin.
    • (Son hareket) seçeneği istediğini olasıdır, ancak her zaman onları daha sonra yeniden düzenleyebilirsiniz.
    • Sayfaların ilk çalışma kitabından kaldırılmasını istemiyorsanız Kopya oluştur'u seçin.
  5. Tıklayın Tamam .

Seçilen çalışma sayfaları orijinal çalışma kitabından "Ana" çalışma kitabınıza taşınacak veya kopyalanacaktır. Önem verdiğiniz tüm çalışma sayfalarını tek bir büyük wookbook'ta toplayana kadar kaynak wookbook'u kapatın ve bir sonraki ile tekrar yapın. Kaydettiğinizden emin olun!


Evet, Excel 2010 ile çalışıyor.
Keks Dose
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.