merhaba, aşağıdaki döngüde 31 sayfadaki verileri yukarıdan aşağı tek bir sayfada sıralattırmak istiyorum sadece ama döngü şu kısmı;

Cells(a, 13)

31 den geriye doğru çalıştırıyor. nerede yanlış yapıyorum?


Private Sub ComboBox1_Change()

Dim carino, a As Integer

carino = ComboBox1.ListIndex

a = 0

For a = 1 To 31

Sheets("rapor1").Cells(a, 13).Value = Sheets(a).Cells(carino + 4, 3)

Next a

End Sub

 

Kodda bir yanlışlık yok. Ben de çalıştırdım şimdi 8 sayfa için. 1'den 8'e kadar sıralı getirdi.

Sizdeki hata sayfa isimlerinde olabilir.

Sheet1'in adını ya da diğer sayfalar arasındaki yerini değiştirdiyseniz belki karışıyordur.

VBA sayfasına bakın.
i.imgur.com

Burada örneğin Sheet9 - rapor1 olarak geçiyor benim örnekte. Diğer sayfa isimleri sıraya uygun. Sheets(a) derseniz, a=1 durumunda isminden bağımsız olarak en 1 numaralı sayfaya gider. Sheets(9) mesela 'rapor1' sayfasıdır. Sizde bu isimler karışıksa o yüzden geriye doğru gidiyor gibi olabilir.

Bir de veriler gizli değilse dosyayı gönderirseniz sizin dosyaya da bakabilirim.

himmet dayi

Kodda bir problem yok. Sorun başka yerde bu kesin.

himmet dayi
1

mobil görünümden çık