• DİKKAT

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

Koşula Göre Rastgele Sayı Oluşturma

  • Konbuyu başlatan Konbuyu başlatan HASAN40
  • Başlangıç tarihi Başlangıç tarihi
Katılım
18 Ekim 2010
Mesajlar
215
Excel Vers. ve Dili
Microsoft Excel 03,07
Merhaba Sayın Uzman Arkadaşlar;
Aşağıdaki kodlarla 1.Sayfanın C7 hücresindeki kritere göre rastgele sayı oluşturmak istiyorum. İlk koşuldaki kriterleri seçtiğimde sorunsuz rastgele sayılar oluşuyor ancak ikinci koşuldaki kriteri seçtiğimde excel sürekli hesaplama yapmaya çalışıyor hesaplamayı durduğumda ise rastgele sayı oluşmadan "İşlem kullanıcı tarafından kesildi" gibi bir uyarı alıyorum ve istediğim seçim meydana gelmiyor. Şimdiden teşekkür ederim...
Kod:
Sheets(3).[b21] = "": Sheets(3).[g21] = ""
    Dim h As Byte
    For h = 2 To 7 Step (5)
        If Sheets(1).[c7] = "AA" Xor Sheets(1).[c7] = "BB" Then
a:
        Sheets(3).Cells(21, h) = Int((Rnd * 8) + 1)
            If WorksheetFunction.CountIf(Sheets(3).Range("b21:g21"), Sheets(3).Cells(21, h)) > 1 Then
                Sheets(3).Cells(21, h) = ""
                GoTo a
            End If
        End If
        If Sheets(1).[c7] = "CC" Xor Sheets(1).[c7] = "DD" Xor Sheets(1).[c7] = "EE" Then
b:
        Sheets(3).Cells(21, h) = Int((Rnd * 2) + 1)
            If WorksheetFunction.CountIf(Sheets(3).Range("b21:g21"), Sheets(3).Cells(21, h)) > 1 Then
                Sheets(3).Cells(21, h) = ""
                GoTo b
            End If
        End If
    Next
 
Günaydın,

Arkadaşlar, sorunumu çözdüm. Sorunum kodlama ile ilgili değilmiş, daha doğrusu "worksheetfunction.countif(.......("b21:g21")....) saydırma yaptığım bu aralıkta eğer sabit sayı olarak 1 veya 2 var ise kodlar döngüye giriyor ve esc ile çıkmak gerekiyor. Rastgele sıralama yapmadan önce saydırma yapılan aralıktaki hücreleri boşaltırsak kodlar sorunsuz çalışıyor ve kritere göre belirli sayı aralıklarında rastgele benzersiz sayılar oluşturuluyor.
(Not : Kodlar özel bir çalışma ve fikir üzerinde olduğundan ilgili dosyamı yayınlamayı uygun bulmuyorum.)
Saygılar sunar, iyi çalışmalar dilerim...
 
Geri
Üst