Information.UBound(Array, Int32) Método

Definición

Devuelve el subíndice más alto que está disponible para la dimensión indicada de una matriz.Returns the highest available subscript for the indicated dimension of an array.

public static int UBound (Array Array, int Rank = 1);
static member UBound : Array * int -> int

Parámetros

Array
Array

Obligatorio.Required. Matriz de cualquier tipo de datos.Array of any data type. Matriz en la que se desea buscar el subíndice más alto posible de una dimensión.The array in which you want to find the highest possible subscript of a dimension.

Rank
Int32

Opcional.Optional. Integer.Integer. Dimensión para la que se va a devolver el subíndice más alto posible.The dimension for which the highest possible subscript is to be returned. Utilice 1 para la primera dimensión, 2 para la segunda, etc.Use 1 for the first dimension, 2 for the second, and so on. Si se omite Rank, se supone que el valor es 1.If Rank is omitted, 1 is assumed.

Devoluciones

Integer.Integer. Valor más alto que el subíndice de la dimensión especificada puede contener.The highest value the subscript for the specified dimension can contain. Si Array tiene solo un elemento, UBound devuelve 0.If Array has only one element, UBound returns 0. Si Array no tiene elementos, por ejemplo si es una cadena de longitud cero, UBound devuelve -1.If Array has no elements, for example if it is a zero-length string, UBound returns -1.

Excepciones

Array es Nothing.Array is Nothing.

Rank es menor que 1 o Rank es mayor que el rango de Array.Rank is less than 1, or Rank is greater than the rank of Array.

Ejemplos

En el ejemplo siguiente se UBound usa la función para determinar el subíndice más alto disponible para la dimensión indicada de una matriz.The following example uses the UBound function to determine the highest available subscript for the indicated dimension of an array.

Dim highest, bigArray(10, 15, 20), littleArray(6) As Integer
highest = UBound(bigArray, 1)
highest = UBound(bigArray, 3)
highest = UBound(littleArray)
' The three calls to UBound return 10, 20, and 6 respectively.

Comentarios

Puesto que los subíndices de matriz empiezan en 0, la longitud de una dimensión es mayor en uno que el subíndice más alto disponible para esa dimensión.Since array subscripts start at 0, the length of a dimension is greater by one than the highest available subscript for that dimension.

En el caso de una matriz con las UBound dimensiones siguientes, devuelve los valores de la tabla siguiente:For an array with the following dimensions, UBound returns the values in the following table:

Dim a(100, 5, 4) As Byte  
Llamada a UBoundCall to UBound Valor devueltoReturn value
UBound(a, 1) 100100
UBound(a, 2) 55
UBound(a, 3) 44

Puede usar UBound para determinar el número total de elementos de una matriz, pero debe ajustar el valor que devuelve para tener en cuenta el hecho de que los subíndices comienzan en 0.You can use UBound to determine the total number of elements in an array, but you must adjust the value it returns to account for the fact that the subscripts start at 0. En el ejemplo siguiente se calcula el tamaño total de la a matriz en el ejemplo anterior:The following example calculates the total size of the array a in the preceding example:

Dim total As Integer  
total = (UBound(A, 1) + 1) * (UBound(A, 2) + 1) * (UBound(A, 3) + 1)  

El valor calculado total para es 3030, que es 101 * 6 * 5.The value calculated for total is 3030, which is 101 * 6 * 5.

Se aplica a

Consulte también: