Sylphydray Opublikowano 13 Kwietnia 2009 Zgłoś Opublikowano 13 Kwietnia 2009 (edytowane) Potrzebuję wybrać losowo daną ilość wierszy w arkuszu - tzn. albo je zaznaczyc, albo gdzies przekopiowac, albo oznaczyc. Ręcznie tego nie zrobię bo wierszy jest ponad 3000 a potrzebuje 150 Temat zamknięty. Skorzystałem z makra znalezionego gdzies na googlu Sub RandomRows() Dim d As Object, r As Range, vKeys, x& 'get a set of 70 unique numbers Set d = CreateObject("Scripting.Dictionary") While d.Count < Ilosc.do.zaznaczenia 'Define the min,max of your numbers x = RndBetween(Minimum.obszaru.komorek.do.poszukiwania, Maksimum.obszaru.komorek.do.poszukiwania) If Not d.Exists(x) Then d.Add x, Empty Wend 'Create a multiarea range vKeys = d.keys Set r = Rows(vKeys(0)) For x = 1 To UBound(vKeys) Set r = Union(r, Rows(vKeys(x))) Next 'Select it r.Select End Sub Function RndBetween(low&, high&) As Long RndBetween = CLng(Rnd * (high - low)) + low End Function Edytowane 13 Kwietnia 2009 przez ULLISSES Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...