From Xojo Documentation


Returns the row index of the last row of the array. The optional parameter allows you to get the last row index of a specific dimension if the array is multi-dimensional.


result = array.LastRowIndex(index)

Part Type Description
result Integer The index of the last element in the array specified.

If the passed array has no elements, result is set to -1.

array Array of any data type The array whose last element number you want.
dimension Integer Relevant only for multi-dimensional arrays. Used to specify the dimension for which you want the last row.

The first dimension is numbered 1. If passed -1, it will return the number of dimensions in the array. If passed a non-existent dimension, it will cause an OutOfBoundsException error.


All arrays are indexed starting at position 0. Arrays can have a maximum index value of 2,147,483,646.

For multi-dimensional arrays, LastRowIndex returns the index of the last row of the dimension you specify, or, if you do not specify a dimension, it returns the value for the first dimension. The first dimension is numbered 1.

Sample Code

This code replaces each occurrence of X in an array with Y.

For i As Integer = Names.FirstRowIndex To names.LastRowIndex
If Names(i) = "X" Then
Names(i) = "Y"
End If

The following code returns -1 because the newly-declared array has no elements:

Var i() As Integer
Var j As Integer
j = i.LastRowIndex

The following code of a 2-dimensional array returns 5 in the variable i and 3 in the variable j (remember that the first dimension is numbered 1).

Var i, j As Integer
Var aNames (5, 3) As String
i = aNames.LastRowIndex
j = aNames.LastRowIndex(2)

See Also

Var statement; Arrays concept; ParamArray keyword