• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

FORMULÜ MAKROYA ÇEVİRME

bydogannn67

Altın Üye
Katılım
6 Ocak 2016
Mesajlar
226
Excel Vers. ve Dili
2010 türkçe
Merhabalar,

Aşağıdaki formülü çok sayıda kullandığımızdan excelde çok kasmaya sebep olmaktadır, bu formulu makroya uyarlıyabilirmiyiz

=TOPLA.ÇARPIM((D$2='Cari Hareket'!$C$10:$C$100000)*($B3='Cari Hareket'!$D$10:$D$100000)*(D$1='Cari Hareket'!$E$10:$E$100000)*('Cari Hareket'!$J$10:$J$100000))
 
Aşağıdaki kod satırı seçili hücreye verdiğiniz işlemi uygulayıp, doğrudan sonucunu yazar:

ActiveCell = Evaluate("=SUMPRODUCT((R2C[-5]='Cari Hareket'!R10C3:R100000C3)*(R[-5]C2='Cari Hareket'!R10C4:R100000C4)*(R1C[-5]='Cari Hareket'!R10C5:R100000C5)*('Cari Hareket'!R10C10:R100000C10))")

Yeterli değilse örnek dosya paylaşmanızı öneririm.
 
Aşağıdaki kod satırı seçili hücreye verdiğiniz işlemi uygulayıp, doğrudan sonucunu yazar:
.....
....

Eğer orjinal dosyada söz konusu formülün yazıldığı her hücreye bunu uygularsak sonuçta hız açısından bir fark olacağını sanmıyorum çünkü; koddaki "Evaluate" fonksiyonu ile zaten orjinal Excel fonksiyonu haline getiriliyor.

Bence yapılması gereken iş;

1) Sumproduct, Sumif .... gibi aslında "Array" tipi olan fonksiyonları sayfada mümkün mertebe az kullanmak,

2) Fonksiyonun etki alanını sınırlamak (verilerin 100.000 satır olduğunu sanmıyorum) ve bunun için "dinamik alan" kullanmak,

olabilir.


.
 
Son düzenleme:
Alternatf olarak özet tablo kullanabilirsiniz. Ya da yardımcı sütun kullanarak ETOPLA ile bir nebze hız kazanabilirsiniz.
 
Geri
Üst