• DİKKAT

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

for next dögüsünde ikinci next 'i görmüyor

Katılım
16 Kasım 2017
Mesajlar
70
Excel Vers. ve Dili
2010 türkçe
merhaba
aşağıdaki makroda "for say" ve "for i" olarak iki tane "for" döngüsü var.Proğram ikinci next e bakmadan ilk next ten geri dönüyor.Bu nedenle de veriler üst üste yazılıyor.neden ikinci next e bakmıyor acaba?

Sub düzenle()
Dim s1, s2 As Worksheet
Dim say As Integer
Dim i, b, c As Integer
Set s1 = Worksheets(1)
Set s2 = Worksheets(2)

b = 3
c = 3
Do While b < 30
For say = 2 To 20 Step 2
For i = 6 To 20
If i = 21 Then b = b + 1
If i = 6 Then c = 3

If IsNumeric(s1.Cells(b, i)) Then s1.Cells(b, i).Copy s2.Cells(b, c)
If IsNumeric(s1.Cells(b, i)) Then c = c + 1
s1.Cells(b, i).Offset(b, -2).Copy s2.Cells(b, say)




Next i
Next say
Loop
 
Merhaba benzer farklı sorularınızda var öncelikle kodları mesaj yazdığınız bölümün üstündeki nesnelerden # buna tıklayınız
Kod:
 bunların arasına yapıştırın.

Diğer taraftan kodlarınız niçin çalışmıyor diye sorurunuza soru sorarken örnek dosyanızı mutlaka ekliyin kodları deneme şansımız olsun.

Şimdi sorunuza gelelim

[CODE]Do While b < 30
For say = 2 To 20 Step 2
For i = 6 To 20
If i = 21 Then b = b + 1

bu bölümde üç adet döngü var for-next ve Do While -Loop döngüleri
aşağıdaki bölüme dikkat et i değeri 21 olursa en üstdeki Do While -Loop döngüsü çalışmakta aksi taktirde kod kendisini ilk turda sonlandıracaktır.

Kod:
If i = 21 Then b = b + 1
 
hocam uyarınız için teşekkür ederim.bundan sonraki kodları # işareti arasına yazacağım.Şimdiye kadar bundan haberim yoktu.Doğrudur, ben yeni yenik kod yazmayı öğreniyorum,bu nedenle de çok soru soruyorum. Takıldığımız yerde sizler gibi üstatlardan yardım alarak ilerleyebiliyoruz.Bazen bir noktayı yanlış yere koymak her şeyi değiştiriyor ve biz acemiler bunun farkına varamıyoruz.Hele birde bizim gibi yaş 45 i geçmişse her şey daha zor oluyor.
Burada sorduğum makro konusuna gelince;bura da döngü sonlanmıyor,hatta proğram "next say" bölümüne bakmadığı için sonsuz döngüye giriyor,zaten sorunda oradan kaynaklanıyor hocam.
 
Son düzenleme:
Geri
Üst