Was viele nicht wissen bzw. vielleicht nur nicht wissen wie, ist: Wie lässt sich ein Array als Ergebnis eines Funktionsaufruf zurückgeben? Normalerweise ist der Rückgabewert einer Funktion ja meist vom Datentyp String, Long, Integer oder Boolean - wie auch immer, eben nur ein einziger Wert und keine Auflistung von Werten - ein Array eben. Wenn man nun aber den Rückgabewert der Funktion als Variant deklariert, dann kann das ja alles sein: String, Long, Integer, Boolean oder auch Array! Also geht's doch - und das sogar ganz einfach! ' Beispiel: Alle Dateien eines Ordners ' lesen und als Array zurückgeben Public Function ReadFilesFromDir(ByVal sPath As String) _ As Variant Dim sFilename As String Dim nCount As Long ReDim sFiles(0) As String If Right$(sPath, 1) <> "\" Then _ sPath = sPath & "\" nCount = 0 sFilename = Dir(sPath & "*.*", vbNormal) While sFilename <> "" If sFilename <> "." And sFilename <> ".." Then ReDim Preserve sFiles(nCount) sFiles(nCount) = sFilename nCount = nCount + 1 End If sFilename = Dir Wend ReadFilesFromDir = sFiles End Function Der Funktionsaufruf selbst sieht dann so aus: Dim sPath As String Dim I As Integer Dim sFiles As Variant sPath = "C:\Dokumente" sFiles = ReadFilesFromDir(sPath) ' Anzeige der gefundenen Dateien ' in einer ListBox If sFiles(0) <> "" Then For I = 0 To UBound(sFiles) List1.AddItem sFiles(I) Next I End If Solch eine Funktion lässt sich natürlich auch in einer Klasse verwenden, die dann z.B. als ActiveX-DLL in das Projekt eingebunden wird. Dies aber nur am Rande... Dieser Tipp wurde bereits 38.043 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
Neu! sevCoolbar 3.0 ![]() Professionelle Toolbars im modernen Design! Mit sevCoolbar erstellen Sie in wenigen Minuten ansprechende und moderne Toolbars und passen diese optimal an das Layout Ihrer Anwendung an (inkl. große Symbolbibliothek) - für VB und MS-Access Tipp des Monats ![]() Dieter Otter Beliebige Zeichen am Anfang und Ende eines Strings entfernen Mit der Trim-Funktion lassen sich nicht nur Leerzeichen, sondern bei Bedarf auch beliebige Zeichen entfernen. Access-Tools Vol.1 ![]() Über 400 MByte Inhalt Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |