UBound-Funktion (Visual Basic)
Aktualisiert: November 2007
Gibt den höchsten verfügbaren Feldindex für die angegebene Dimension eines Arrays zurück.
Public Function UBound( _
ByVal Array As System.Array, _
Optional ByVal Rank As Integer = 1 _
) As Integer
Parameter
Array
Erforderlich. Array eines beliebigen Datentyps. Das Array, in dem der höchste mögliche Feldindex einer Dimension ermittelt werden soll.Rank
Optional. Integer. Die Dimension, für die der höchste mögliche Feldindexwert zurückgegeben wird. Verwenden Sie für die erste Dimension 1, für die zweite 2 usw. Wird Rank ausgelassen, so wird bei 1 begonnen.
Rückgabewert
Integer. Der höchste Wert, den der Feldindex für die angegebene Dimension enthalten kann. Wenn Array nur ein Element enthält, gibt UBound 0 (null) zurück. Enthält Array keine Elemente, z. B. wenn es sich um eine Zeichenfolge mit der Länge 0 (null) handelt, dann gibt UBound -1 zurück.
Ausnahmen
Ausnahmetyp |
Fehlernummer |
Bedingung |
---|---|---|
Array = Nothing |
||
Rank ist kleiner als 1 oder Rank ist größer als der Rang von Array. |
Beachten Sie die Spalte "Fehlernummer", wenn Sie Visual Basic 6.0-Anwendungen aktualisieren, die eine unstrukturierte Fehlerbehandlung verwenden. (Sie können die Fehlernummer mit der Number-Eigenschaft (Err-Objekt) vergleichen.) Wenn möglich, sollten Sie jedoch erwägen, eine solche Fehlersteuerung durch eine Übersicht über die strukturierte Ausnahmebehandlung für Visual Basic zu ersetzen.
Hinweise
Da Arrayfeldindizes bei 0 beginnen, ist die Länge einer Dimension um eins größer als der höchste mögliche Feldindex dieser Dimension.
Bei einem Array mit den folgenden Dimensionen gibt UBound die Werte aus der folgenden Tabelle zurück:
Dim a(100, 5, 4) As Byte
Aufruf von UBound |
Rückgabewert |
---|---|
UBound(a, 1) |
100 |
UBound(a, 2) |
5 |
UBound(a, 3) |
4 |
Sie können mithilfe von UBound die Gesamtanzahl der Elemente in einem Array bestimmen. Beim Rückgabewert müssen Sie jedoch berücksichtigen, dass der Arrayfeldindex bei 0 beginnt. Im folgenden Beispiel wird die Gesamtgröße von Array a aus dem vorherigen Beispiel berechnet:
Dim total As Integer
total = (UBound(A, 1) + 1) * (UBound(A, 2) + 1) * (UBound(A, 3) + 1)
Für total wird der Wert 3030 berechnet, also 101 * 6 * 5.
Beispiel
In diesem Beispiel wird mit der UBound-Funktion der höchste mögliche Arrayfeldindexwert für die angegebene Arraydimension bestimmt.
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.
Anforderungen
Namespace:Microsoft.VisualBasic
Modul: Information
**Assembly:**Visual Basic Runtime Library (in Microsoft.VisualBasic.dll)
Siehe auch
Referenz
LBound-Funktion (Visual Basic)