Bu dosya, iki ayrı listede yer alan verileri makro ile karşılaştırır. Liste1 ve Liste2 içindeki benzersiz kayıtları, iki listede ortak olanları ve yalnızca bir listede bulunanları ayrı sütunlara çıkarır. Karşılaştırma ADO bağlantısı ve SQL sorguları ile yapılır.
Dosya makro içerir (.xlsm), açarken makroları etkinleştirmeniz gerekir.
Makro kodunda ExcelDestek.com adresi ve geliştiricinin e-posta bilgisi yorum olarak yer almaktadır.
Dosya makro içerir (.xlsm), açarken makroları etkinleştirmeniz gerekir.
Dosyanın içeriği
- karsilastirma sayfası (A1:H14): A sütununda LİSTE-1, B sütununda LİSTE-2 verileri bulunur (örnek isimler: ahmet, mehmet, osman, ali, veli, can vb.). Sonuçlar 2. satırdaki başlıkların altına yazılır: C "Liste1'de Benzersiz", D Liste2 benzersiz, E "İki Listede ortak olan", F Liste1'de olup Liste2'de olmayanlar, G "Liste2'de var, Liste1'de yok", H iki listedeki tüm benzersiz kayıtlar.
- Dosyada formül, tablo, grafik ya da veri doğrulama yoktur; işlemlerin tamamı makro ile yapılır.
Makrolar
- exceldestek (Module2): Asıl karşılaştırma makrosudur. ThisWorkbook.FullName üzerinden Microsoft ACE OLEDB 12.0 sağlayıcısı ile dosyanın kendisine bağlanır. Altı ayrı SQL sorgusu çalıştırır (distinct, exists, not exists ve union kullanılır) ve sonuçları CopyFromRecordset ile C3, D3, E3, F3, G3 ve H3 hücrelerinden başlayarak yazar. Her sütun yazmadan önce temizlenir.
- Benzersiz (Module1): Döngü ve WorksheetFunction.CountIf ile yapılan alternatif, daha eski bir denemedir. Aynı satırdaki A ve B değerleri eşitse E sütununa, Liste1'de olup Liste2'de olmayanları F sütununa, Liste2'de olup Liste1'de olmayanları G sütununa yazar. Bazı alt yordamları yorum satırı durumundadır.
Makro kodunda ExcelDestek.com adresi ve geliştiricinin e-posta bilgisi yorum olarak yer almaktadır.
Nasıl kullanılır
- Dosyayı açın ve makroları etkinleştirin.
- karsilastirma sayfasında A3 ve B3 hücrelerinden itibaren iki listenizi yazın veya yapıştırın.
- Alt+F8 ile
exceldestekmakrosunu çalıştırın. - Sonuçları C:H sütunlarında inceleyin.