Veröffentlicht 31. Juli 200619 j Mahlzeit! Folgenden Ausgangslage: ich habe eine Funktion die mir ein Array liefert. Dieses soll aber nur durchlaufen werden, wenn es nicht leer ist. Wie kann ich das prüfen?? 'Funktion Public Function GetArray(index As String) As String() [INDENT]Dim rs As Recordset Dim sql As String Dim array() As String sql = "select ... " Set rs = databaseVerschleiss.OpenRecordset(sql) If Not rs.EOF Then [INDENT]ReDim arEinzelteile(rs.RecordCount - 1) GetArray = array[/INDENT] End If[/INDENT] End Function ' Funktionsaufruf array = GetArray(index) For Each value In array [INDENT]... <tu etwas> ...[/INDENT] Next
31. Juli 200619 j naja einfach die zeilen des arrays zaehlen... falls diese nicht mind. 1 beträgt --> ende
31. Juli 200619 j Hi, irgendwie erkenne ich den Sinn des Parameters für die Funktion nicht, aber das ist ja erstma Wurscht. Zudem ist nicht ersichtlich woher "arrEinzelTeile" kommt und was Du mit der Funktion erreichen willst. Kann sein, dass Du mit UBound weiterkommst: 'Funktion Public Function GetArray(index As String) As String() Dim rs As Recordset Dim sql As String Dim array() As String sql = "select ... " Set rs = databaseVerschleiss.OpenRecordset(sql) If (Not (Rs Is Nothing)) Then With Rs If (Not (.EOF)) Then If (.RecordCount <> 0) Then ReDim arEinzelteile(.RecordCount - 1) GetArray = array End If End If End With End If End Function '---- Funktionsaufruf array = GetArray(index) If (UBound(array) >0) Then For Each value In array .. <tu etwas> ... Next End If Ansonsten mal hier schauen: FAQ 0067: Wie ermittle ich die Grenzen eines Feldes? http://www.activevb.de/rubriken/faq/faq0067.html
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.