Bestimmen der Obergrenzen eines Arrays (Microsoft Word)
Wenn Sie Makros programmieren, wissen Sie bereits, dass Sie Arrays von Variablen definieren können, die zum Speichern ähnlicher Daten verwendet werden. Das Array sClassNames () kann beispielsweise verwendet werden, um die Namen von Personen in Ihrer Schulklasse zu speichern. Beachten Sie Folgendes, das das Array definiert:
Dim sClassNames(29) As String
Dieser spezielle Code gibt an, dass das Array 30 Zeichenfolgenwerte unter Verwendung der Indizes 0 bis 29 enthalten kann.
Irgendwann haben Sie möglicherweise eine Unterroutine oder Funktion, die wissen muss, wie viele Elemente für ein Array definiert wurden. Eine integrierte VBA-Funktion, die sich als nützlich erweist, um dies festzustellen, ist UBound. Diese Funktion gibt einen Wert zurück, der die Obergrenze (den größten Index) angibt, die mit dem Array verwendet werden kann. Betrachten Sie beispielsweise die folgende Verwendung:
iClassSize = UBound(sClassnames)
Wenn Sie diesen Code ausführen, wird iClassSize auf den Wert 29 gesetzt. Warum? Weil 29 der größte Index ist, der in sClassNames ()
verwendet werden kann Array – Es stellt die Obergrenze für das Array dar.
Wenn Ihre Arrays mehr als eine Dimension haben, können Sie der UBound-Funktion ein weiteres Argument hinzufügen, um anzugeben, für welche Dimension Sie die Obergrenze festlegen möchten:
iHighSide = UBound(cPayGrade, 2)
In diesem Beispiel wird iHighSide gleich der Obergrenze für die zweite Dimension des cPayGrade () -Arrays gesetzt.
_Hinweis: _
Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der WordTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.
WordTips ist Ihre Quelle für kostengünstige Microsoft Word-Schulungen.
(Microsoft Word ist die weltweit beliebteste Textverarbeitungssoftware.) Dieser Tipp (1436) gilt für Microsoft Word 97, 2000, 2002 und 2003. Sie finden eine Version dieses Tipps für die Multifunktionsleistenschnittstelle von Word (Word 2007) und später) hier: