Visual Basic and Visual FoxPro arrays

VBA

Dim, Redim

VFP

Dimension, Declare, Local Array

Visual Basic Syntax Notes

Visual Basic Arrays can be fixed or dynamic and their size can be changed with the ReDim statment. Unless the Option Base setting has been set to 1, VBA arrays start from zero. This declaration:

Dim myNames(10) As String

will declare an array with 11 elements from myNames(0) to myNames(10). If this use of zero as a base feels unfamiliar then you can either use Option Base 1 to force VBA to start numbering from one or you can explicitly set the range of the array:

Dimmy Names(1 To 10) As String

An array can have up to 60 dimensions but it is difficult to think of a use for such a complex structure. It's also difficult to think of a computer that could process even the smallest 60-dimensional 2x2x2x2x...x2x2x2x2 array - that's around a million Tb.

Visual FoxPro Syntax Notes

Arrays in Fox are restricted to 2 dimensions but apart from that they are very much more flexible than VBA arrays. For a start, the lack of data types in VFP means that different elements of an array can hold different types of information. The Scatter command takes advantage of this by creating an array whose elements hold the data from the fields of the current record.

FoxPro arrays are also unusual in that they can be resized at runtime without loss of data. A 6 x 6 two-dimensional array can be resized as as 12 x 2 or extended into a 3 x 5. Functions such as AElement and ASubscript allow you to refer to the elements of any array as though it were a simple list.

FoxPro makes great use of arrays. The Into Array clause in the VFP dialect of SQL creates an array holding the set of results from the query. Functions such as APrinter() and AFont() return the printers and fonts available respectively. Most of these functions start with "A" so they're easy to find in Help.

Variables  |  Language index  |  Comments

Related Items

VFP and VBA.

The Visual FoxPro and Visual Basic for Applications languages are similar but there are annoying differences between them.

Read More

Text delimiters in VBA and VFP.

Visual Basic for Applications and Visual FoxPro delimiters for strings.

Read More

Text concatenation in VBA and VFP

Visual Basic for Applications and Visual FoxPro operators to concatenate text.

Read More

Text substrings in VBA and VFP

Visual Basic for Applications and Visual FoxPro functions to extract substrings from within a string of text

Read More

Trimming text in VBA and VFP

Visual Basic for Applications and Visual FoxPro functions to trim leading and trailing spaces from string of text

Read More