Selam,
Arkadaşlar örnek dosyaya sanırım ihtiyaç duyulmayacaktır , basitçe izah edeyim.
A1= Yüzdelik Değer
A2= Başlangıç sayısı
A3= Hedef sayı
Amaç şu:
Başlangıç sayısına , verilen yüzdelik değer ardışık olarak ekleniyor , ta ki hedef sayıya "en yakın küçük yada eşit" değere ulaşana kadar. Örneğin 14. defada alınan yüzde , verilen hedef sayıyı geçiyorsa iterasyon 13 verilmeli.
Yapılan işlemlerin herhangi bir sütunda görünmesi gerekmiyor. Çünkü çok fazla işlem adedi olduğu zamanlarda bin satırlık bir işlem dizisi oluşabilir ki bu aşamada buna ihtiyacımız bulunuyor.
Yalnızca iterasyon sayısı bir hücreye atanmalı , örneğin B1 hücresine sonucu yazdırmalı.
Bu işlemin adedi yani iterasyon sayısını verecek makro nasıl olabilir?
Yüzde iterasyon sayısı
-
- Mesajlar: 5
- Kayıt: 19 Eki 2023, 21:17
- Adınız: Tunç
- Soyadınız: Demirer
-
- Mesajlar: 84
- Kayıt: 24 Haz 2023, 00:23
- Web Sitesi: https://erseldemirel.com.tr/
- Adınız: Ersel
- Soyadınız: Demirel
Re: Yüzde iterasyon sayısı
Bir inceleyin
Kod: Tümünü seç
Sub test()
A1 = Range("A1").Value
A2 = Range("A2").Value
A3 = Range("A3").Value
Iterasyon = 0
Do While A2 < A3
A2 = A2 + (A2 * A1 / 100)
Iterasyon = Iterasyon + 1
Loop
Range("B1").Value = Iterasyon - 1
End Sub
-
- Mesajlar: 5
- Kayıt: 19 Eki 2023, 21:17
- Adınız: Tunç
- Soyadınız: Demirer
Re: Yüzde iterasyon sayısı
erseldemirel yazdı: ↑20 Eki 2023, 09:53 Bir inceleyin
Kod: Tümünü seç
Sub test() A1 = Range("A1").Value A2 = Range("A2").Value A3 = Range("A3").Value Iterasyon = 0 Do While A2 < A3 A2 = A2 + (A2 * A1 / 100) Iterasyon = Iterasyon + 1 Loop Range("B1").Value = Iterasyon - 1 End Sub
Evet bu , teşekkür ederim Ersel bey.
Bir noktada bilgi almak istiyorum işin mantığını bilmediğimden yanlış bir deneme olmaması adına.
Bazı durumlarda iterasyon sayısının örneğin 5 fazlasını yada 8 fazlasını almak gerekiyor. İşlemle ilgili bir konu.
Kod üzerindeki yeri sanırım aşağıdaki satır.
Range("B1").Value = Iterasyon - 1
Yani iterasyonun 6 fazlası için - 1 olan yeri + 5 olarak değiştiriyoruz.
-
- Mesajlar: 84
- Kayıt: 24 Haz 2023, 00:23
- Web Sitesi: https://erseldemirel.com.tr/
- Adınız: Ersel
- Soyadınız: Demirel
Re: Yüzde iterasyon sayısı
Evet iterasyon bir değişken. Range("B1").Value = Iterasyon - 1 burada her türlü sonucu matemaik işlemleri ile değiştirirsiniz
-
- Mesajlar: 5
- Kayıt: 19 Eki 2023, 21:17
- Adınız: Tunç
- Soyadınız: Demirer
Re: Yüzde iterasyon sayısı
Tekrar teşekkür ederim Ersel bey ,erseldemirel yazdı: ↑20 Eki 2023, 14:12 Evet iterasyon bir değişken. Range("B1").Value = Iterasyon - 1 burada her türlü sonucu matemaik işlemleri ile değiştirirsiniz
İyi çalışmalar dilerim.
-
- Mesajlar: 84
- Kayıt: 24 Haz 2023, 00:23
- Web Sitesi: https://erseldemirel.com.tr/
- Adınız: Ersel
- Soyadınız: Demirel
Re: Yüzde iterasyon sayısı
Rıca ederım sızede kolay gelsın