Freigeben über


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

ArgumentNullException

9

Array = Nothing

RankException

9

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)

Dim-Anweisung (Visual Basic)

ReDim-Anweisung (Visual Basic)

ArgumentException

RankException