• DİKKAT

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

Random sayı.

Katılım
27 Kasım 2011
Mesajlar
37
Excel Vers. ve Dili
Excel 2007 ingilzce
Merhaba arkadaşlar 1 den 21 e kadar 21 tane sayı üreteceğim yanlız bunlar birbirinden farklı olucak.
yani 1 den 21 e kadar yerleri değişik şekilde sayılara ihtiyacım var;
söyle bir kod yazdım fakat hata veriyor hata nerde bulamadım yardımcı olurmusunuz?

Sub Pri()


Dim j As Integer
Dim z As Integer
Dim Priortiy(21) As Integer

For j = 1 To 21

Priortiy(j) = Int(RAND() * 20 + 1)

For z = 1 To j - 1

If (Priortiy(j) = Priortiy(z)) = True Then

Priortiy(j) = Int(RAND() * 20 + 1)

z = 0

End If

Next z

Next j

For j = 1 To 21
Sheet1.Cells(j, 1) = Priorty(j)
Next j



End Sub
Private Sub CommandButton1_Click()
Call Priorty

End Sub
 
Kodunuz aşağıdadır.:cool:
Kod:
Sub rastgele_59()
Randomize Timer
Dim col As Collection, i As Long, sat As Long, deg
Range("A1:A21").Clear
Set col = New Collection
For i = 1 To 21
    col.Add i
Next
For i = 1 To 21
    sat = Int(Rnd() * col.Count) + 1
    Cells(i, "A").Value = col(sat)
    col.Remove sat
Next
MsgBox "İşlem tamamlandı." & vbLf & "evrengizlen@hotmail.com", vbOKOnly + vbInformation
    
End Sub
 
Teşekkür ederim ;

ama benim kodda ne gibi bi yanlıslık var bulamadım, şimdi bu proje konusu olduğu için sizin yazdıgınız kod biraz beni aşar =)
Bende Sub or Function not defined hatası veriyor ; bunun sebebi ne olabilir?
sizide yoruyorum kusura bakmayın.
 
Teşekkür ederim ;

ama benim kodda ne gibi bi yanlıslık var bulamadım, şimdi bu proje konusu olduğu için sizin yazdıgınız kod biraz beni aşar =)
Bende Sub or Function not defined hatası veriyor ; bunun sebebi ne olabilir?
sizide yoruyorum kusura bakmayın.
Buyurun.:cool:
Ne gibi hatası varmış siz görün.Ben yaptım.:cool:

Kod:
Sub Pri()
Randomize Timer

Dim j As Integer
Dim z As Integer
Dim Priortiy(21) As Integer
Range("A1:A21").ClearContents
For j = 1 To 21

Priortiy(j) = Int(Rnd() * 21) + 1

For z = 1 To j - 1

If (Priortiy(j) = Priortiy(z)) = True Then

Priortiy(j) = Int(Rnd() * 21) + 1

z = 0

End If

Next z

Next j

For j = 1 To 21
Sheets("Sayfa1").Cells(j, 1) = Priortiy(j)
Next j

End Sub
 
Çok teşekkür ederim.
 
Geri
Üst