Excel Dosyalarını Birleştirme: Power Query ve Otomasyon
Her hafta aynı klasöre gelen Excel dosyalarını açıp alt alta kopyalıyorsanız, asıl ihtiyaç yalnız birleştirme formülü olmayabilir. Hangi dosya geldi, hangi şubenin verisi eksik, sütun adı değişti mi ve aynı kayıt daha önce alındı mı sorularını da cevaplayan bir aktarım ekranı hazırlıyorum. Çıktı, kaynağı belli ortak bir kayıt listesi olur.
Örnek: İki dosyadan beş kayıt
Görseldeki örnek gerçek müşteri verisi içermez. Ankara.xlsx içinde 2, İzmir.xlsx içinde 3 satır var. Sütun eşlemesi tamamlanınca toplam 5 kayıt birleşiyor. Ankara dosyasındaki tarih alanı ile İzmir dosyasındaki karşılığı aynı hedef alana bağlanıyor; ürün alanı da ayrı eşleniyor.
Birleşmiş listede her satırın hangi dosyadan ve hangi satırdan geldiğini koruyorum. Böylece yanlış görünen ürün kodunun kaynağı bulunabiliyor. Beş kaydın beşi de uygunsa sonuç beş olur; hatalı satır varsa toplam alınan, kabul edilen ve incelemeye ayrılan sayıları ayrı gösteririm. Başarılı etiketi, kaybolan satırların üzerini örtmez.
Yeni dosya gelince ne olacak?
İlk eşleme bir aktarım profiline kaydedilir. Aynı şubenin sonraki dosyasında beklenen sütun eksikse gelişigüzel başka sütun kullanılmaz. Kullanıcı değişikliği görür ve eşlemeyi onaylar. Tarih biçimi, ondalık ayırıcı ve başında sıfır bulunan ürün kodları da bu profilin parçasıdır.
Aynı dosyanın yeniden gelmesiyle aynı siparişin başka dosyada tekrar bulunması farklı durumlardır. Dosya kontrolü gereksiz tekrar okumayı azaltır. Sipariş veya işlem kimliği ise iş kaydının ikinci kez eklenmesini engelleyecek kuralı sağlar. Kimlik yoksa benzer görünen satırları otomatik silmek yerine şüpheli eşleşmeleri gösteririm.
Power Query ile karşılaştırma
Power Query klasördeki aynı yapıya sahip dosyaları birleştirebilir. Mevcut sorgu işinizi karşılıyorsa özel uygulama şart değildir. Basit başlangıçta yalnız alınacak dosyalar seçilir, örnek dosyanın dönüşümü hazırlanır ve aynı işlem diğer dosyalara uygulanır. Yenilemeden sonra kaynak dosya sayısı ile birleşen kayıt sayısı karşılaştırılır. Sütun yapısı değişen dosya ayrıca incelenir. Farklı kişiler hataları düzeltecek, geliş zamanlarını takip edecek ve yalnız yetkili oldukları şubeyi görecekse uygulama katmanı anlamlı olur. Var olan dönüştürme kurallarını mümkün olduğunca koruyarak ilerlerim.
Kurulumu nasıl somutlaştırıyorum?
Önce mevcut dosyanızın veya ekranınızın kişisel bilgilerden arındırılmış örneğini ve süreci kullanan kişilerin rollerini incelerim. Hangi bilginin nereden geldiğini, kim tarafından değiştirilebildiğini ve sonucun nereye gideceğini yazılı kapsamda belirlerim. Aynı dosyanın ikinci gelişi, başka dosyada tekrarlanan sipariş ve adı değişmiş sütunla örnek aktarım yaparım. Önizleme onayı, kopya dosyalar üzerinde alınır; çalışan kayıtlar test malzemesi olarak kullanılmaz.
Teslim kapsamına ekranların yanında veri dışa aktarımı, yedekleme yaklaşımı ve sorun olduğunda kimin müdahale edeceği de yazılır. İlk sürümü tek bir gerçek iş akışı üzerinde değerlendirir, sonraki bağlantıları o temel üzerinden planlarım.
Sıkça Sorulan Sorular
Bütün dosyaların sütun adları aynı mı olmalı?
Hayır, farklı adları ortak alanlara eşleyebiliriz. Ancak aynı görünen iki sütunun aynı anlamı taşıdığı doğrulanmalıdır. Bir dosyadaki satış tarihi ile diğerindeki ödeme tarihini tek alana birleştirmem.
Eski kayıt değişirse yeni satır mı açılır?
İş kimliğine göre ekleme ve güncelleme davranışı belirlerim. Değişen alanları önizlemede gösterir, önceki değerin izini korurum. Dosya adı tek başına kayıt kimliği değildir.
Klasöre gelen her dosya alınır mı?
Yalnız tanımladığımız kaynak, dosya türü ve adlandırma kurallarına uyanlar işlenir. Arşiv veya geçici dosyaların yanlışlıkla ana listeye girmesini ayrı filtrelerim.
İhtiyacınızı konuşalım
İlgili ihtiyacınız için Her Gün API’den Veri Çeken Web Uygulaması sayfasına, genel yaklaşım için ekibinize özel web uygulamalarına bakabilirsiniz. Örnek akışınızı iletişim sayfasından paylaşarak kapsamı konuşabiliriz.
Nasıl çalışıyorum?
Çalışma saati paketleri
WhatsApp’tan ya da telefonda işinizden ve ihtiyacınızdan bahsedin; 5 ile 40 saat arasında bir çalışma paketinde anlaşalım, ben gerekenleri yapmaya başlayayım. Aldığınız şey bir takvim aralığı değil, doğrudan sizin işinize harcanacak net mesai. 40 saati üç gün aralıksız çalışarak da kullanabiliriz, bilerek zamana yayıp bir yılda da bitirebiliriz — işin gerektirdiği neyse o. İşin ne kadar süreceğini tahmin etmeye değil, işi yapmaya vakit harcarım; harcadığım her saatin işinizde kalıcı bir karşılığı olur. Faydalı olduğunu düşündüğünüz sürece bu şekilde devam ederiz.
Neden aylık değil?
40 saat 1 hafta mı oluyor?
Aylık sabit ücrette iki taraf da yanlış yere bakar: siz sabit gidere, karşı taraf kaç tane daha böyle sözleşme bağlayabileceğine. Saat üzerinden çalışınca ikimizin de baktığı yer aynı olur — yapılan işin gerçek değeri. "Toplamda ne kadar tutar?" sorusunun peşinen net bir cevabı olmaması bu modelin doğal maliyeti, farkındayım. Ama sonuç üretmeyen bir yapıya aylarca sabit ücret ödemek yerine yalnızca işinize ayrılan nitelikli zamanı ödersiniz, o zamanın nereye gittiğini de baştan sona görürsünüz. Müşterilerimin benimle tekrar tekrar çalışmasının sebebi bu.
