ABOUT Visual Basic Programmieren Programmierung Download Downloads Tips & Tricks Tipps & Tricks Know-How Praxis VB VBA Visual Basic for Applications VBS VBScript Scripting Windows ActiveX COM OLE API ComputerPC Microsoft Office Microsoft Office 97 Office 2000 Access Word Winword Excel Outlook Addins ASP Active Server Pages COMAddIns ActiveX-Controls OCX UserControl UserDocument Komponenten DLL EXE
Diese Seite wurde zuletzt aktualisiert am 02.03.2000

Diese Seite wurde zuletzt aktualisiert am 02.03.2000
Aktuell im ABOUT Visual Basic-MagazinGrundlagenwissen und TechnologienKnow How, Tipps und Tricks rund um Visual BasicActiveX-Komponenten, Controls, Klassen und mehr...AddIns für die Visual Basic-IDE und die VBA-IDEVBA-Programmierung in MS-Office und anderen AnwendungenScripting-Praxis für den Windows Scripting Host und das Scripting-ControlTools, Komponenten und Dienstleistungen des MarktesRessourcen für Programmierer (Bücher, Job-Börse)Dies&Das...

Themen und Stichwörter im ABOUT Visual Basic-Magazin
Code, Beispiele, Komponenten, Tools im Überblick, Shareware, Freeware
Ihre Service-Seite, Termine, Job-Börse
Melden Sie sich an, um in den vollen Genuss des ABOUT Visual Basic-Magazins zu kommen!
Informationen zum ABOUT Visual Basic-Magazin, Kontakt und Impressum

Zurück...

Dimensioniert oder nicht?

Zurück...


Anzeige

(-hg) mailto:hg_isdim@aboutvb.de

Die Untergrenze und die Obergrenze eines Arrays können Sie mit Hilfe der Visual Basic-eigenen Funktionen MSDN Library - VB LBoundLBound und MSDN Library - VB UBoundUBound ermitteln - sofern das Array bereits dimensioniert ist. Ist ein dynamisches Array (noch) nicht dimensioniert, wird ein Laufzeitfehler erzeugt. Zur Information darüber, ob ein Array bereits dimensioniert ist, bietet VB allerdings keine gesonderte Funktion an. Sie können jedoch den beim Zugriff auf ein nicht dimensioniertes Array per LBound oder UBound ausgelösten Laufzeitfehler abfangen und so die gesuchte Information erhalten.

In der Hilfsfunktion IsDim wird nach Einschalten einer Fehlerbehandlung durch "On Error Resume Next" versuchsweise auf die Untergrenze des Arrays zugegriffen. Ist das der Funktion übergebene Array nicht dimensioniert, wird die Fehlernummer (MSDN Library - VB Err.NumberErr.Number) des MSDN Library - VB Err-ObjektErr-Objekts in den Bool'schen Wert True konvertiert. Da der Bool'sche Rückgabewert der Funktion jedoch nur dann True zurückgeben soll, wenn das Array dimensioniert ist, negieren wir den Wert mit "Not" und gebe in diesem Fall False zurück. Ist das Array hingegen bereits dimensioniert, wird beim Zugriff auf die Untergrenze des Arrays kein Fehler ausgelöst. Der Wert der Fehlernummer ist 0 - nach der Bool'schen Konvertierung False. Die Negation zum Rückgabewert lautet somit True.

Public Function IsDim(Arr As Variant) As Boolean
  Dim nLBound As Long
  
  On Error Resume Next
  nLBound = LBound(Arr)
  IsDim = Not CBool(Err.Number)
End Function


Modul modIsDim (modIsDim.bas - ca. 0,4 KB)


Artikel
Zum Download-Bereich dieses Artikel
Mail an den Autor dieses Artikel

KnowHow
Zur KnowHow-Übersicht

KnowHow-Themen
Themen - Allgemeines
Themen - Entwicklungsumgebung (VB-IDE)
Themen - Forms
Themen - Steuerelemente (Controls)
Themen - Grafik
Themen - Dateien
Themen - UserControls
Themen - Einsteiger-Tipps
Themen - Wussten Sie...?

Übersicht nach Titeln in alphabetischer Reihenfolge
Übersicht nach Erscheinungsdatum

Schnellsuche



Zum Seitenanfang

Copyright © 1999 - 2017 Harald M. Genauck, ip-pro gmbh  /  Impressum

Zum Seitenanfang

Zurück...

Zurück...

Download Internet Explorer