View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.misc
Gary''s Student Gary''s Student is offline
external usenet poster
 
Posts: 11,058
Default How to Set Range to 50 Random nonsequencial rows?

Your first routine pick a set of rows at random and stores them in a array.
You need to make a range out of this set:


Sub routine()
Dim lRndRows(51)
OS = "OS"
LastRow = Sheets(OS).Cells(Rows.Count, "a").End(xlUp).Row
LastCol = Sheets(OS).Range("A2").End(xlToRight).Column
N = LastRow
For lj = 1 To 50
ll = Int(N * Rnd) + 1
lRndRows(lj) = ll
Next lj
Dim rng As Range
Set rng = Range("A" & lRndRows(1)).EntireRow
For i = 2 To 50
Set rng = Union(rng, Range("A" & lRndRows(i)).EntireRow)
Next
MsgBox (rng.Address)
rng.Select
End Sub

--
Gary''s Student
gsnu200710


" wrote:

I have a spreadsheet with 4000 rows. I choose 50 of those rows using the excel
random number generator as in:

LastRow = Sheets(OS).Cells(Rows.Count, "a").End(xlUp).Row
LastCol = Sheets(OS).Range("A2").End(xlToRight).Column
N= LastRow
For lj = 1 To 50
ll = Int(N * Rnd) + 1
lRndRows(lj) = ll
Next lj

How would I set the range as in:

Dim rng As Range
Dim myCell As Range
Dim curwk As Worksheet
OS = ActiveSheet.Name
Set curwk = Sheets(OS)
With Curwk
Set rng=?????
end with

to those 50 rows?

Thanks for any help

Dennis