Language/EXCEL VBA

3가지 웨이트를 랜덤하게 추출(분포는 Uniform 사용)

remings 2008. 7. 14. 21:18

Public Sub ThreeWeight()

Dim i As Double, j As Integer
Dim s As Worksheet
Dim N As Double
Dim sum As Double
Dim cel As Double
Dim a(2) As Double

Set s = Sheet1
N = 60000

For i = 1 To N

    For j = 1 To 3
   
    s.Cells(i, j) = Rnd()
   
    Next j

Next i

For i = 1 To N

    For j = 1 To 3
           
        a(j - 1) = s.Cells(i, j)
    Next j
   
    '3가지 rand()의 합계구함
    sum = a(0) + a(1) + a(2)
   
    For j = 1 To 3
   
        s.Cells(i, j + 4) = a(j - 1) / sum
       
    Next j

Next i

End Sub