Para as freqüências que você tem, o Excel não possui linhas suficientes para armazenar os dados brutos. Reduzi as frequências por um fator de 100 (exceto a última) para que elas se encaixassem em uma planilha do Excel. Se você executar esse código, deverá receber dados brutos que, quando usados com uma fórmula como
{=FREQUENCY($A$2:$A$13095,{1,3,5,7,10})}
dá a você (minhas freqüências reduzidas) 12345, 343, 330, 69, 7. Ele produz números aleatórios dentro de seus intervalos.
Sub MakeRawData()
Dim i As Long
Dim dRaw As Double
For i = 1 To 12345
dRaw = Rnd
Sheet1.Cells(Sheet1.Rows.Count, 1).End(xlUp).Offset(1, 0).Value = dRaw
Next i
For i = 1 To 343
dRaw = (2 - 1 + 1) * Rnd + 1
Sheet1.Cells(Sheet1.Rows.Count, 1).End(xlUp).Offset(1, 0).Value = dRaw
Next i
For i = 1 To 330
dRaw = (4 - 3 + 1) * Rnd + 3
Sheet1.Cells(Sheet1.Rows.Count, 1).End(xlUp).Offset(1, 0).Value = dRaw
Next i
For i = 1 To 69
dRaw = (6 - 5 + 1) * Rnd + 5
Sheet1.Cells(Sheet1.Rows.Count, 1).End(xlUp).Offset(1, 0).Value = dRaw
Next i
For i = 1 To 7
dRaw = (9 - 7 + 1) * Rnd + 7
Sheet1.Cells(Sheet1.Rows.Count, 1).End(xlUp).Offset(1, 0).Value = dRaw
Next i
End Sub
Não é muito eficiente e pode levar vários minutos para ser executado, mas se você não precisa fazer isso com frequência, isso não deve ser um grande problema.