• DİKKAT

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

Makro Kodunun İçine Formül Yazmak

cavanoos

Altın Üye
Katılım
17 Aralık 2008
Mesajlar
781
Excel Vers. ve Dili
Microsoft 365
Merhaba arkadaşlar;

Uygun bir başlık bulamadım,derdimi anlatacak.Bunu yazdım.

Yapmış olduğum bir excel tablosu var.Sqlden veri çekiyor.Gelen veriyi sınıflandırıyor.Sınıflandırılan sayfayı baz alıp işlem yapan bir eğer fonksiyonu var.Bu şekilde çalışması gerekiyor.Ama;

Veriyi sqlden çekiyorum.Sınıflandırma sayfasında takılıp kalıyor.Ama,eğer fonksiyonu ile bağlantısını kaldırdığımda hemen geliyor.Yani eğer fonksiyonu olmazsa sınıflandırma işlemi çabuk bitiyor.İş böyle olunca eğer fonksiyonunu,makro işlemi bitince tekrardan oluşturuyorum.Manuel oluyor yani.

Sınıflandırma işlemi bittikten sonra,hücreye formülü kopyalamak ve çalıştırmak istiyorum.

Ekli dosyamda F4 sütununda hücrenin içine yazacağım formülü kopyaladım. Makro kodu kullanarak D1 hücresine kopyalayıp,"=" işaretini en başına ekleyip,D20 hücresine kadar formülü çekiyorum.Ama hata alıyorum.Kullandığım makro kodu alttadır.Hata verdiği satır kırımızı olandır.

Umarım derdimi anlatabilmişimdir.Yardımcı olabilir misiniz ?

Range("F4").Select
Selection.Copy
Range("D1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Selection.FormulaArray = _
"=IF(ISERROR(INDEX('Alış İade Özet Listesi'!R2C5:R10000C5,SMALL(IF('Alış İade Özet Listesi'!R2C1:R10000C1=R[1]C1,ROW('Alış İade Özet Listesi'!R2C1:R10000C1)-ROW('Alış İade Özet Listesi'!R2C1)+1),COLUMNS(R[1]C7:R[1]C[3])))),0,INDEX('Alış İade Özet Listesi'!R2C5:R10000C5,SMALL(IF('Alış İade Özet Listesi'!R2C1:R10000C1=R[1]C1,ROW('Alış İade Özet Listesi'!R2C1:R10000C1)-ROW('Alış İade Özet Listesi'!R2C1)+1),COLUMNS(R[1]C7:R[1]C[3]))))" Selection.AutoFill Destination:=Range("D1:D5"), Type:=xlFillDefault
Range("D1:D5").Select
 

Ekli dosyalar

Geri
Üst