İç içe 5 For next döngüsünü kısaltmak

xternet

Altın Üye
Katılım
12 Kasım 2004
Mesajlar
462
Excel Vers. ve Dili
2010 Tr
Altın Üyelik Bitiş Tarihi
12-10-2028
Dün bu konuyla ilgili olarak başka bir konu açmıştım. Sayın Ayhan Ercan yardımıyla da sorumu çözmüştüm. Ancak bugün farklı bir durumla karşılaştım. Konuyu tekrar farklı birbaşlıkla açmak istedim.
Örnek dosyayı ekledim. Konu başlığından da anlaşılacağı gibi, 1 den 15 e kadar değerleri iç içe 5 kez hücrelere atayan bir makro kodu. Sorun işlemin yaklaşık 7 saat sürecek olması.Dosya içinde de gerekli açııklamaları yaptım.
Dosyada da belittiğim gibi bu tamamen keyfi bir çalışma. Merakı olanlar zaman ayırabilir. kimsenin vaktini boşa almak istemem.
İyi çalışmalar.
 

Ekli dosyalar

Katılım
14 Şubat 2006
Mesajlar
3,426
Excel Vers. ve Dili
(Excel 2016 - İngilizce)
Altın Üyelik Bitiş Tarihi
30-11-2022
Merhaba,

İlginç bir çalışma...Pause için belki araya uyarı kutusu koyabilirsiniz.

Evet tuşuna bastığınızda makro çalışmaya devam edecektir.

Burada k=5 olunca uyarı penceresi çıkıyor..

Kod:
Sub piramid()
Dim i As Integer
Dim x As Integer
Dim y As Integer
Dim z As Integer
Dim k As Integer
For i = 6 To 15
For x = 14 To 15
For y = 14 To 15
For z = 1 To 15
For k = 1 To 15
[C14] = i
[E14] = x
[G14] = y
[I14] = z
[K14] = k
If k = 5 Then MsgBox "Devam Edilsin mi?", vbInformation + vbYesNo, "Uyarı"
If [o19] = 0 Then GoTo son
Next k
Next z
Next y
Next x
Next i
son:
End Sub
 

xternet

Altın Üye
Katılım
12 Kasım 2004
Mesajlar
462
Excel Vers. ve Dili
2010 Tr
Altın Üyelik Bitiş Tarihi
12-10-2028
Sayın Recep İpek teşekkür ederim çözümünüz için. Farklı değişkenlere bu şekilde sınır koyarak mola noktaları oluşturulabilir.
Peki bir doğru kombinasyon oluşunca kod dursun ve sonra devam etsin. Bu mümkün mü?
 
Son düzenleme:
Katılım
24 Nisan 2005
Mesajlar
3,680
Excel Vers. ve Dili
Office 2016 EN 64 Bit
Altın Üyelik Bitiş Tarihi
25/05/2022
Merhaba,

bu tür işlemleri severim. Ancak sonucu görünce hayal kırıklığı oldu :)
İki sonuç çıktı. Program esnek olduğu için bir iki düzenleme ile 16 lı 17 li düzenlenebilir.

Sonuçlar bir kaç saniyede dökülüyor.
6-14-15-3-13-8-1-12-10-7-11-2-4-9-5
13-3-15-14-6-10-12-1-8-2-11-7-9-4-5

Edit: Kodlama da hata yapmışta olabilirim ilk kontrollerimde sorun göremedim.

iyi çalışmalar.
 

Ekli dosyalar

xternet

Altın Üye
Katılım
12 Kasım 2004
Mesajlar
462
Excel Vers. ve Dili
2010 Tr
Altın Üyelik Bitiş Tarihi
12-10-2028
İlginç ve gerçekten çok basit bir çözüm üretmişsiniz sayın asri. Bu sonuçdan anlaşılıyor ki, benim daha önceden elle bulduğum 6-14-15-3-13 dizilişinden başka çözüm yok.
Sizinde dediğiniz gibi bu soru daha çoklu satırlar içinde yapılabilir. Zaten benim amacımda alt satırı 6 kare olan ve yukarı doğru toplam 21 sayının bu şartlara göre dizilmesi. Bu problemi elle çözememiştim. Şimdi bu kodları ona uyarlamaya çalışıcam. Bakalım onun sonucu ne çıkıcak.
 
Katılım
24 Nisan 2005
Mesajlar
3,680
Excel Vers. ve Dili
Office 2016 EN 64 Bit
Altın Üyelik Bitiş Tarihi
25/05/2022
İlginç ve gerçekten çok basit bir çözüm üretmişsiniz sayın asri. Bu sonuçdan anlaşılıyor ki, benim daha önceden elle bulduğum 6-14-15-3-13 dizilişinden başka çözüm yok.
Sizinde dediğiniz gibi bu soru daha çoklu satırlar içinde yapılabilir. Zaten benim amacımda alt satırı 6 kare olan ve yukarı doğru toplam 21 sayının bu şartlara göre dizilmesi. Bu problemi elle çözememiştim. Şimdi bu kodları ona uyarlamaya çalışıcam. Bakalım onun sonucu ne çıkıcak.
@xternet,

sanırım 21 sayı olduğunda bir sonuç bulunmuyor. Program 10 dk kontrol etti ve sonuç dönmedi.

iyi çalışmalar.
 

Ekli dosyalar

xternet

Altın Üye
Katılım
12 Kasım 2004
Mesajlar
462
Excel Vers. ve Dili
2010 Tr
Altın Üyelik Bitiş Tarihi
12-10-2028
Anladım sayın asri. Bende bunu merak ediyordum. Teşekkür ederim emeğin için.
İyi çalışmalar.
 
Katılım
24 Nisan 2005
Mesajlar
3,680
Excel Vers. ve Dili
Office 2016 EN 64 Bit
Altın Üyelik Bitiş Tarihi
25/05/2022
Anladım sayın asri. Bende bunu merak ediyordum. Teşekkür ederim emeğin için.
İyi çalışmalar.
Merhaba,

Ben teşekkür ederim. GÜzel bir beyin jimnastiği oldu.

iyi çalışmalar
 
Üst