Microsoft KB Archive/183847

= XL98: "Out of Memory" Error Running Sub Procedure =

Article ID: 183847

Article Last Modified on 9/12/2006

-

APPLIES TO


 * Microsoft Excel 98 for Macintosh

-



This article was previously published under Q183847



For a Microsoft Excel 2002 version of this article, see 291067.

For a Microsoft Excel 2000 version of this article, see 213682.

For a Microsoft Excel 97 version of this article, see 173182.



SYMPTOMS
If you run a Visual Basic for Applications procedure that uses the Cells property, you may receive the following error message:

Run-time error '7': Out of memory

You may receive this error message even though the procedure ran successfully in earlier versions of Microsoft Excel.



CAUSE
This behavior may occur if you incorrectly use the Cells property. For example, the following Sub procedure runs without error in earlier versions of Microsoft Excel but generates a run-time error in Microsoft Excel 98 Macintosh Edition: Sub Cells_Test1

For i = 1 To 5 For j = 1 To 6 ActiveSheet.Cells.Value(i, 7) = _ ActiveSheet.Cells.Value(i, 7) + ActiveSheet.Cells.Value(i, j)        Next Next

End Sub



RESOLUTION
Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements. To resolve this problem, place the arguments for the Cells property immediately after the Cells keyword. For example, modify the sample procedure as follows: Sub Cells_Test2

For i = 1 To 5 For j = 1 To 6 ActiveSheet.Cells(i, 7).Value = _ ActiveSheet.Cells(i, 7).Value + ActiveSheet.Cells(i, j).Value Next Next

End Sub



STATUS
This behavior is by design of Microsoft Excel 98.

