Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Run-time error '7'
I have gotten a Run-time error '7':
Out of memory in the follwong code: Public m2() As Double Public m1() As Double Public Sub jk() j = 41000 k = 817 ReDim m1(j, k) ReDim m2(j, k) End Sub |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Run-time error '7'
Those are very, very large arrays and they take a lot of memory.
Also, you have not declared the j and k variables and that uses extra memory. If you can use a Long data type, it will probably work for you. In addition, they would be much more efficient if you eliminated the need for the project level scope for the arrays and declared smaller arrays. You can increase the size of the last dimension of an array at any time using ReDim Preserve... Public m2() As Long Public m1() As Long Public Sub jk() Dim j as Long Dim k as Long j = 41000 k = 817 ReDim m1(j, k) ReDim m2(j, k) End Sub -- Jim Cone San Francisco, USA http://www.realezsites.com/bus/primitivesoftware "Soquete" wrote in message I have gotten a Run-time error '7': Out of memory in the follwong code: Public m2() As Double Public m1() As Double Public Sub jk() j = 41000 k = 817 ReDim m1(j, k) ReDim m2(j, k) End Sub |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Run-time error '7'
I still think the OP will run out of memory (unless as you show they change
M1 and M2 to arrays of type Long (4 bytes instead of 8)). The allocation will still be on the order of half a Gig of memory which is just not feasable... Using Long arrays you will be down to 250 meg which you will probably get away with so long as you have a good sense of humor and a lot of patience. -- HTH... Jim Thomlinson "Jim Cone" wrote: Those are very, very large arrays and they take a lot of memory. Also, you have not declared the j and k variables and that uses extra memory. If you can use a Long data type, it will probably work for you. In addition, they would be much more efficient if you eliminated the need for the project level scope for the arrays and declared smaller arrays. You can increase the size of the last dimension of an array at any time using ReDim Preserve... Public m2() As Long Public m1() As Long Public Sub jk() Dim j as Long Dim k as Long j = 41000 k = 817 ReDim m1(j, k) ReDim m2(j, k) End Sub -- Jim Cone San Francisco, USA http://www.realezsites.com/bus/primitivesoftware "Soquete" wrote in message I have gotten a Run-time error '7': Out of memory in the follwong code: Public m2() As Double Public m1() As Double Public Sub jk() j = 41000 k = 817 ReDim m1(j, k) ReDim m2(j, k) End Sub |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Run-time error '7'
Jim,
Using Doubles almost stopped my system, but it struggled thru. Using Longs made a real difference, but Excel still had to think about it.. I had never seen Excel balk when sizing arrays until I ran the op's code.. Jim Cone "Jim Thomlinson" wrote in message I still think the OP will run out of memory (unless as you show they change M1 and M2 to arrays of type Long (4 bytes instead of 8)). The allocation will still be on the order of half a Gig of memory which is just not feasable... Using Long arrays you will be down to 250 meg which you will probably get away with so long as you have a good sense of humor and a lot of patience. -- HTH... Jim Thomlinson "Jim Cone" wrote: Those are very, very large arrays and they take a lot of memory. Also, you have not declared the j and k variables and that uses extra memory. If you can use a Long data type, it will probably work for you. In addition, they would be much more efficient if you eliminated the need for the project level scope for the arrays and declared smaller arrays. You can increase the size of the last dimension of an array at any time using ReDim Preserve... Public m2() As Long Public m1() As Long Public Sub jk() Dim j as Long Dim k as Long j = 41000 k = 817 ReDim m1(j, k) ReDim m2(j, k) End Sub -- Jim Cone San Francisco, USA http://www.realezsites.com/bus/primitivesoftware "Soquete" wrote in message I have gotten a Run-time error '7': Out of memory in the follwong code: Public m2() As Double Public m1() As Double Public Sub jk() j = 41000 k = 817 ReDim m1(j, k) ReDim m2(j, k) End Sub |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
Run-time error '7'
The OP's code caused the hamster in my machine to keel over. It made it
through ok on the Long but with Double being twice the size of a long... Boom! -- HTH... Jim Thomlinson "Jim Cone" wrote: Jim, Using Doubles almost stopped my system, but it struggled thru. Using Longs made a real difference, but Excel still had to think about it.. I had never seen Excel balk when sizing arrays until I ran the op's code.. Jim Cone "Jim Thomlinson" wrote in message I still think the OP will run out of memory (unless as you show they change M1 and M2 to arrays of type Long (4 bytes instead of 8)). The allocation will still be on the order of half a Gig of memory which is just not feasable... Using Long arrays you will be down to 250 meg which you will probably get away with so long as you have a good sense of humor and a lot of patience. -- HTH... Jim Thomlinson "Jim Cone" wrote: Those are very, very large arrays and they take a lot of memory. Also, you have not declared the j and k variables and that uses extra memory. If you can use a Long data type, it will probably work for you. In addition, they would be much more efficient if you eliminated the need for the project level scope for the arrays and declared smaller arrays. You can increase the size of the last dimension of an array at any time using ReDim Preserve... Public m2() As Long Public m1() As Long Public Sub jk() Dim j as Long Dim k as Long j = 41000 k = 817 ReDim m1(j, k) ReDim m2(j, k) End Sub -- Jim Cone San Francisco, USA http://www.realezsites.com/bus/primitivesoftware "Soquete" wrote in message I have gotten a Run-time error '7': Out of memory in the follwong code: Public m2() As Double Public m1() As Double Public Sub jk() j = 41000 k = 817 ReDim m1(j, k) ReDim m2(j, k) End Sub |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Visual Basic Error Run Time Error, Type Mismatch | Excel Discussion (Misc queries) | |||
Conditional Formatting - Run Time Error '13' Type Mismatch Error | Excel Programming | |||
run-time error '1004': Application-defined or object-deifined error | Excel Programming | |||
Befuddled with For Next Loop ------ Run - Time Error '13' Type Mismatch Error | Excel Programming | |||
Code Error - Run Time Error 5 (Disable Cut, Copy & Paste) | Excel Programming |