Sub fillcolumnwithuniquerandomnumbers()
Sheets("Sortsheet").Select
Dim cell As Range
Dim rng As Range
Dim High As Long, Sample As Long
'High = Application.InputBox("Enter population total", Type:=1)
'Sample = Application.InputBox("Enter the Sample Size", Type:=1)
High = 500
Low = 1
'Set rng = Application.Range(ActiveCell, ActiveCell.Offset(Sample, 0))
Set rng = Range("A2:A500")
For Each cell In rng.Cells
If WorksheetFunction.CountA(rng) = (High - Low + 1) Then Exit For
Do
rndNumber = Int((High - Low + 1) * Rnd() + Low)
Loop Until rng.Cells.Find(rndNumber, LookIn:=xlValues, lookat:=xlWhole) Is Nothing
cell.Value = rndNumber
Next
rng.Select
Selection.NumberFormat = "@" 'changing the format to text so that cells can contain leading zeros
For Each cell In rng.Cells
cell.Value = "000" & cell.Value
Next
End Sub
Sheets("Sortsheet").Select
Dim cell As Range
Dim rng As Range
Dim High As Long, Sample As Long
'High = Application.InputBox("Enter population total", Type:=1)
'Sample = Application.InputBox("Enter the Sample Size", Type:=1)
High = 500
Low = 1
'Set rng = Application.Range(ActiveCell, ActiveCell.Offset(Sample, 0))
Set rng = Range("A2:A500")
For Each cell In rng.Cells
If WorksheetFunction.CountA(rng) = (High - Low + 1) Then Exit For
Do
rndNumber = Int((High - Low + 1) * Rnd() + Low)
Loop Until rng.Cells.Find(rndNumber, LookIn:=xlValues, lookat:=xlWhole) Is Nothing
cell.Value = rndNumber
Next
rng.Select
Selection.NumberFormat = "@" 'changing the format to text so that cells can contain leading zeros
For Each cell In rng.Cells
cell.Value = "000" & cell.Value
Next
End Sub
No comments:
Post a Comment