View Full Version : [SOLVED:] How to Clear an Array
Cyberdude
08-19-2005, 10:50 AM
Is there a simple way in VBA to clear an array of all values?
Tommy
08-19-2005, 10:53 AM
Redim with no preserve keyword?
Bob Phillips
08-19-2005, 10:56 AM
Erase myArray
It not only removes values, if it is a dynamic array, it releases it which means that it has no bounds.
Cyberdude
08-19-2005, 11:16 AM
Erase myArray
It not only removes values, if it is a dynamic array, it releases it which means that it has no bounds.
Does that mean I would have to ReDim it? What are the consequences of the erase? Can I still use it?
Reset. I looked it up in Help. Thanx.
Does that mean I would have to ReDim it? What are the consequences of the erase? Can I still use it?
Reset. I looked it up in Help. Thanx.
The impact depends on what type of array is being erased. VBA help does a pretty good job explaining what happens with its example. You can still use "fixed" arrays as before. You will need to redim dynamic arrays to reallocate space.
[from VBA Help]
Erase Statement Example
This example uses the Erase statement to reinitialize the elements of fixed-size arrays and deallocate dynamic-array storage space.
' Declare array variables.
Dim NumArray(10) As Integer ' Integer array.
Dim StrVarArray(10) As String ' Variable-string array.
Dim StrFixArray(10) As String * 10 ' Fixed-string array.
Dim VarArray(10) As Variant ' Variant array.
Dim DynamicArray() As Integer ' Dynamic array.
ReDim DynamicArray(10) ' Allocate storage space.
Erase NumArray ' Each element set to 0.
Erase StrVarArray ' Each element set to zero-length
' string ("").
Erase StrFixArray ' Each element set to 0.
Erase VarArray ' Each element set to Empty.
Erase DynamicArray ' Free memory used by array.
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.