- Katılım
- 13 Ekim 2017
- Mesajlar
- 178
- Excel Vers. ve Dili
- 2003-tr
- Altın Üyelik Bitiş Tarihi
- 13/02/2019
Merhaba arkadaşlar;
Döngü konusunda hiç bilgisi olmayan arkadaşlara, bildiğim kadarıyla örnek ve açıklama ile izah etmeye çalışacağım.
NOT: Daha önce buna benzer açılmış bir konu varsa k.bakmayın. Ayrıca bilgilerim eksikse yorumda belirtirseniz düzelteyim.
Döngü meselesini bir örnek ile açıklamak istiyorum; Sayfa1'deki belirsiz B hücrelerinin bazılarında "ALIŞ", bazılarında ise "SATIŞ" yazmakta. İstediğimiz şey, "SATIŞ" yazan hücrelerin yanındaki A hücresine "X" işareti koydurmak (ya da X yazdırmak).
Öncelikle ilk ve son satır sayısını buluyoruz.
NOT: Dim ile "ilk,son,v vb." gibi belirlediğimiz kısa isimlerle, bu isimlerin ne tür değer içeriğini belirledik. Örn: ilk için Integer, yani sayı dedik. ara için String, yani yazı dedik.
NOT: B2 ilk satırımız, B30 son satırımız varsayarak buradaki kod ile "ilk =2" , "son=30" rakamı olur. Yani hücre değil, rakamsal değeri alır.
Şimdi döngüden önce aranacak kelimemizi belirliyoruz.
NOT: yer diye tanımladığımız değişken, eğer döngü ya da arama ilk satırdan değilde istediğiniz satırdan başlasın diyorsanız, yer değişkenine satır numarasını yazmalısınız. Örn: 5. satırdan döngü başlasın istiyorum, yer=5 yazmalıyım. Ama ben burada "ilk" satırdan başlatacağımdan, yer'i sadece anlatımda size göstermek için ekledim.
Burada For döngü kodumuz. Kısaca "ilk ve son satırları arasında döngü gerçekleştir" dedik. V döngümüzün adı ya da kodu.
Burada eğer B'deki değer SATIŞ değil ise o satırı atla dedik.
burada SATIŞ değerini bulunca A hücresine X yazmasını istedik.
burada, döngüyü sonlandırdık.
yani sonuç olarak kodlarınız aşağıdaki gibi görünmeli.
Umarım işinize yarar.
İyi forumlar.
Döngü konusunda hiç bilgisi olmayan arkadaşlara, bildiğim kadarıyla örnek ve açıklama ile izah etmeye çalışacağım.
NOT: Daha önce buna benzer açılmış bir konu varsa k.bakmayın. Ayrıca bilgilerim eksikse yorumda belirtirseniz düzelteyim.
Döngü meselesini bir örnek ile açıklamak istiyorum; Sayfa1'deki belirsiz B hücrelerinin bazılarında "ALIŞ", bazılarında ise "SATIŞ" yazmakta. İstediğimiz şey, "SATIŞ" yazan hücrelerin yanındaki A hücresine "X" işareti koydurmak (ya da X yazdırmak).
Öncelikle ilk ve son satır sayısını buluyoruz.
Kod:
Dim ilk As Integer, son As Integer
Dim v As integer, yer As Integer
Dim ara As String
Kod:
ilk = Sayfa1.Range("B1").End(xlDown).Row
son = Sayfa1.Range("B" & Rows.Count).End(xlup).Row
Şimdi döngüden önce aranacak kelimemizi belirliyoruz.
Kod:
ara = "SATIŞ"
Kod:
For v = ilk to son
Kod:
IF Not Sayfa1.Range("B" & ilk).Value = ara Then GoTo atla
Kod:
Sayfa1.Range("A" & ilk).Value = "X"
Kod:
atla:
ilk = ilk + 1
Next v
yani sonuç olarak kodlarınız aşağıdaki gibi görünmeli.
Kod:
Dim ilk As Integer, son As Integer
Dim v As integer, yer As Integer
Dim ara As String
ilk = Sayfa1.Range("B1").End(xlDown).Row
son = Sayfa1.Range("B" & Rows.Count).End(xlup).Row
ara = "ALIŞ"
For v = ilk to son
IF Sayfa1.Range("B" & ilk).Value = ara Then GoTo atla
Sayfa1.Range("A" & ilk).Value = "X"
atla:
ilk = ilk + 1
Next v
İyi forumlar.