| Jak wylosować bez powtórzeń kilka liczb ze zbioru? |
|
Problem: Potrzebuję wylosować 5 liczb bez powtórzeń z zakresu 1-10. Rozwiązanie: Możesz skorzystać np. z takiego makra: Option Explicit Sub LosowaniePieciuLiczb() Dim iLicznik As Integer Dim x As Integer Dim colUnikaty As New Collection Randomize 'Obsluga bledow - tylko unikaty sa dodawane do kolekcji On Error Resume Next Do Until colUnikaty.Count = 5 iLicznik = Int(Rnd * 10) + 1 colUnikaty.Add Item:=iLicznik, Key:=CStr(iLicznik) Loop On Error GoTo 0 'Wstawienie danych do arkusza With Arkusz1 For x = 1 To 5 .Range("B" & x + 2) = colUnikaty.Item(x) Next x End With End Sub |
|
| Zmieniony ( Środa, 30. Czerwiec 2010 21:06 ) |