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
5"), Type:=xlFillDefault
Range("D1
5").Select
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
Range("D1
