Excel模拟根据行中的值创建列

时间:2017-04-20 14:23:20

标签: excel simulation

我想根据行中的值生成随机值 我试过了:=if( row:row>50;Rand ()) 但这只给我一列Rand()值。
最后我产生了我想要的数值但不是我想要的。

示例:

3 rd rd rd
2 rd rd
1 rd

我有4 000次模拟

1 个答案:

答案 0 :(得分:0)

我会使用宏。

假设您的值从单元格A1开始,选择单元格B1并运行下面的宏,您将在不同的单元格中获取随机数:

Sub CreateRandomNumbers()
Dim i As Integer: Dim q As Integer
Dim startingRow As Integer: Dim startingColumn As Integer
Do While ActiveCell.Offset(0, -1).Value <> ""
    'Store number of random numbers required in "q"
    q = ActiveCell.Offset(0, -1).Value
    'Store starting row and column
        startingRow = ActiveCell.Row
        startingColumn = ActiveCell.Column
    'Exit sub if q = 0
    If q = 0 Then
        MsgBox "No random number required."
        Exit Sub
    End If
    'Calculate random numbers
    For i = 1 To q: ActiveCell.Value = Rnd(): ActiveCell.Offset(0, 1).Select: Next i
    'Go back to starting cell
    Cells(startingRow, startingColumn).Select
    'Go to next row in the same columns
    ActiveCell.Offset(1, 0).Select
Loop
End Sub

看起来像这样:

enter image description here

我希望它有所帮助。