Dosya simgesi

Scripting Dictionary ile ÇokEtopla

Bu dosya, ÇokEtopla (SUMIFS) işlemini formül yerine VBA ve Scripting Dictionary nesnesiyle yapan bir örnek çalışmadır. Büyük veri listelerinde hesap koduna ve tarih aralığına göre toplam almak için kullanılır; hesaplama dizi üzerinde yapıldığından formül tabanlı çözümlere göre hızlı çalışır.

Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir.

Dosyanın içeriği​

  • Sayfa1: Sonuç sayfasıdır. A4 hücresinden itibaren 101, 102, 103 gibi hesap kodları listelenir. Tarih aralığı C1 (başlangıç) ve D1 (bitiş) hücrelerinden okunur; C4 hücresinden başlayan "Veri Gelecek" sütununa hesaplanan toplamlar yazılır.
  • Sayfa2: Kaynak veri sayfasıdır. A3:C8137 aralığında, 4. satırdan itibaren hesap kodu (A), tarih (B) ve tutar (C) bilgileri bulunur.

Makrolar​

  • cokEtopla (Module1): Önce Sayfa1 üzerindeki C4 ve altındaki eski sonuçları temizler. Sayfa2'deki A4:C sütunlarını belleğe alır ve her satırın tarihini C1 ile D1 arasında olup olmadığına göre kontrol eder. Aralığa giren satırların tutarlarını hesap koduna göre Dictionary içinde biriktirir. Ardından Sayfa1'deki A sütunundaki her hesap kodunun toplamını Dictionary'den alıp C sütununa tek seferde yazar. İşlem bitince geçen süreyi gösteren bir "işlem tamam" mesajı verilir.
  • Kodda dosya silme, dışarıya bağlantı gibi zararlı bir işlem bulunmaz; makro yalnızca iki sayfa üzerinde çalışır.

Nasıl kullanılır​

  1. Dosyayı açıp makroları etkinleştirin.
  2. Sayfa2'ye hesap kodu, tarih ve tutar verilerini 4. satırdan itibaren girin.
  3. Sayfa1'in A sütununa toplamı alınacak hesap kodlarını, C1 ve D1 hücrelerine başlangıç ve bitiş tarihlerini yazın.
  4. Alt+F8 ile cokEtopla makrosunu çalıştırın.
  5. Sonuçlar Sayfa1'de C4 hücresinden itibaren listelenir; tarih aralığını değiştirip makroyu yeniden çalıştırabilirsiniz.

cakarem tarafından daha fazla dosya

Detaylar
Yazar
cakarem
İndirme
15
Gösterim
2,236
İlk sürüm
Güncel
SHA-256
02d66a58ea08c5d623d9a185707171dd5d57ad059e042e9bc951ebcf91494761

Puanlar

5.00 Oylama 1 İnceleme

En son değerlendirmeler

Dosyadan faydalandım, katkıda bulunanlara teşekkürler.
Geri
Üst