Name
ReDim Statement
Syntax
ReDim [Preserve]varname(subscripts)
_ [,varname(subscripts)
...
-
Preserve
Use: Optional
Type: Keyword
Preserves the data within an array when changing the only or last dimension
-
varname
Use: Required
Type: String literal
Name of the variable
-
subscripts
Use: Required
Type: Numeric
Number of elements and dimensions of the array, using the syntax:
upper [, upper] ...
The number of upper bounds specified is the number of dimensions. Each upper bound specifies the size of the corresponding coordinate.
Description
Used within a procedure to resize and reallocate storage space for an array
Rules at a Glance
Arrays can be sized or resized using the
ReDim
statement. There is no limit to the number of times you can redimension a dynamic array.The dimension cannot be changed, nor can the data type of the array be changed.
If you do not use the
Preserve
keyword in redimensioning the array, you can resize any of the coordinates of the array.Use of the
Preserve
keyword allows you to retain the current values within the array, but it also allows you to resize only the last coordinate of an array.You can redimension an array in a called procedure if you pass the array to the procedure by reference. For example:
Public Sub Main Dim lArr( ) AS Object = {1,2,3,4,5,6,7,8,9,10} Dim lNum As Long ResizeArray(lArr) for each lNum in lARr Console.WriteLine(lNum) Next End Sub Public Sub ResizeArray(ByRef arr( ) As Object) ReDim Preserve arr(15) arr(10) = 20 arr(11) = 50 arr(12) = 80 arr(13) ...
Get VB .NET Language in a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.