Array

P

Pradip Jain

I am generating random numbers through the following code:

Application.Run "ATPVBAEN.XLA!Random", ActiveSheet.Range(RanRowStart), 1,
NumDays, Distribution, , Param1, Param2

In this case NumDays number of random numbers are generated and pasted to
cell starting from RanRowStart. Suppose if NumDays is 15 and RanRowStart is
cell o25, then excel is writing the 15 random numbers generated to cell o25
and downwards.

I want to create an array and transfer the random numbers there.
i have used following code:
Dim ArrayRnd () as Double
Re Dim ArrayRnd as (NumDays,1)

Application.Run "ATPVBAEN.XLA!Random", ArrRand(1:NumDays), 1, n,
Distribution, , Param1, Param2

I want to give the array the random number generated. The code above is not
working. request help
regards
pradip
 
J

Jim Rech

I would think that the Random function is designed to expect a range
argument and it might not know what to do if it gets an array instead. Can
you not populate the array from the sheet dump?

--
Jim
|I am generating random numbers through the following code:
|
| Application.Run "ATPVBAEN.XLA!Random", ActiveSheet.Range(RanRowStart), 1,
| NumDays, Distribution, , Param1, Param2
|
| In this case NumDays number of random numbers are generated and pasted to
| cell starting from RanRowStart. Suppose if NumDays is 15 and RanRowStart
is
| cell o25, then excel is writing the 15 random numbers generated to cell
o25
| and downwards.
|
| I want to create an array and transfer the random numbers there.
| i have used following code:
| Dim ArrayRnd () as Double
| Re Dim ArrayRnd as (NumDays,1)
|
| Application.Run "ATPVBAEN.XLA!Random", ArrRand(1:NumDays), 1, n,
| Distribution, , Param1, Param2
|
| I want to give the array the random number generated. The code above is
not
| working. request help
| regards
| pradip
 
L

LabElf

It looks like you have inserted a space into your "ReDim" command, making it
"Re Dim". Try removing the space and see if it works then. Also, the Random
function will need some way to know the destination is now an array, instead
of a range. If there is no option to do this, you will have to write code to
copy the values from the range into your array.
 
P

Pradip Jain

If the random numbers are pasted to the excel sheet and then the array is
populated from the sheet, the speed is reduced considerably. i need to do a
large number of simulations to get a result, hence need to do all
calculations in memory space, that is array. writing to excel and reading
from it would slow the process considerably.
Regards
Pradip
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top