• DİKKAT

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

şartlı makro döngüsü

Katılım
6 Mayıs 2014
Mesajlar
264
Excel Vers. ve Dili
office 365
Merhaba. Makro kaydet yöntemi ile birden fazla makroyu birleştirerek bir makro hazırladım. Bu makronun belli bir şart gerçekleşene kadar tekrar tekrar çalışmasını istiyorum. Yani makroyu çalıştırmak için makroyu atadığım butona tekrar tekrar basmak yerine tek bir defa bastığımda şart gerçekleşene kadar çalışmasını, şart gerçekleştiğinde ise durmasını istiyorum. Bunun için makronun sonunda ya da başına bir eklenti yapmak mümkünse yardımınızı rica ediyorum. Şart şu: a1 hücresindeki sayısal değer b1 hücresindeki sayısal değere eşit hale geldiğinde makro en son olarak bu aşamada çalışsın ve dursun. Örnek : b1 =8, a1 ise 1 diyelim. benim makromda a1 hücresindeki değeri makroyu her çalıştırdığımda arttırıyorum. ve a1 hücresindeki değer her değiştiğinde hesaplama yapıyor. son hesaplamayı a1=b1 olduğunda yapıyorum. eşit olduktan sonra işim bitiyor. a1=b1 olana kadar (eşitlik dahil) makronun tekrar tekrar çalışmasını sağlayacak bir eklentiyi makroma eklemek mümkünse yardım eder misiniz
 
Butona basarak çalışması yerine Private Sub Worksheet_Change yöntemini deneyebilirsiniz.
 
Merhaba.
Sorularınızı örnek belge ile destekleyiniz, konuyla ilgili gerekli açıklama cevabımın altındaki İMZA bölümünde var.

Yazdıklarınızdan; makro kodları içinde A1'deki değeri 1 artırmak yerine A1'i hiç kullanmadan,
mevcut işlem kodlarını For deger = 1 To Sheets("......").[B1] ............işlem kodları .......... Next
gibi döngü içerisine alarak yapabilirsiniz gibi anlaşılıyor.
.
 
Ekteki örnek dosyada kısa bir makro hazırladım. Örnek makro, normalde kullandığım makroya göre eksik ve farklı. Bu yüzden örnek makro biraz saçma. İşin mantığı şu şekilde. Butona atadığım makroyu her çalıştırdığımda E1 hücresindeki değer ve bu değere bağlı diğer hücrelerin değeri değişiyor. Sonra makro ilgili hücreleri kopyalıyor. ( normalde kullandığım makro daha uzun ve farklı işlemler yapıyor.) Bu makroyu e1 hücresindeki değer b1 hücresindeki değere eşit olana kadar çalıştırıyorum. (eşitlik dahil) Bunun yerine butonu tek sefer kullanarak e1 hücre değerini b1 hücre değerine eşit olana kadar (eşitlik dahil) arttırmak ve makronun geri kalanını çalıştırmak istiyorum. e1=b1 olana kadar makroyu çalıştırmak istiyorum. bunun için mevcut makromu değiştirmeden eklenti ile istediğimi yapabilir miyim?
 

Ekli dosyalar

Sorunuzu, gerçek belgenizin kopyası şeklinde hazırlanmış örnek belge üzerinden sormadığınızdan
konuya cevap vermeye devam etmemin pek anlamı yok aslında.

Son cevaptaki sorunun karşılığı, bir önceki cevabımda belirttiğim şey ile aynı.
Rich (BB code):
Sub ARTTIR()
    For brn = 1 To Sheets("SÜZ").[B1]
        Sheets("SÜZ").[E1] = brn
        Calculate
        Range("Tablo135").Copy
    Next
End Sub
 
teşekkür ederim
 
Geri
Üst