Hallo
Ich rätsle bereits seit einiger Zeit an diesem Missglückten Versuch eines dynamischen Arrays in VB. Er bringt beim ersten Erreichen der Zeile mit dem redim Befehl eine Fehlermeldung (Index sei ausserhalb des gültigen Bereichs). Nehme ich das Preserve weg, geht es... allerdings sind dann die ganzen Werte weg.
Vielleicht noch schnell der Hintergrund. Diese Funktion soll alle Tabellen aus einer Datenbank, welche mit "tblPersImport" anfangen in einer Combobox auflisten. Ich fülle das ganze aber erst in ein Array, um die Tabellen nach Monat und Jahr zu sortieren. (Als Beispiel für einen Tabellennamen .TableDefs(i).Name ist "tblPersImport_12_2004").
Danke für eure Hilfe
Ich rätsle bereits seit einiger Zeit an diesem Missglückten Versuch eines dynamischen Arrays in VB. Er bringt beim ersten Erreichen der Zeile mit dem redim Befehl eine Fehlermeldung (Index sei ausserhalb des gültigen Bereichs). Nehme ich das Preserve weg, geht es... allerdings sind dann die ganzen Werte weg.
Code:
zaehler = 0
Dim demTables() As String
ReDim demTables(1, 2)
With DB
For i = 0 To .TableDefs.Count - 1
If Left(.TableDefs(i).Name, 13) = "tblPersImport" Then
If Len(DB.TableDefs(i).Name) = 20 Then 'x_2003
demTables(zaehler, 0) = Right(.TableDefs(i).Name, 4) ' jahr
demTables(zaehler, 1) = Left(Right(.TableDefs(i).Name, 6), 1) ' monat
Else 'xx_2003
demTables(zaehler, 0) = Right(.TableDefs(i).Name, 4) 'jahr
demTables(zaehler, 1) = Left(Right(.TableDefs(i).Name, 7), 2) 'monat
End If
zaehler = zaehler + 1
ReDim Preserve demTables(0 To zaehler, 0 To 1)
End If
Next i
Vielleicht noch schnell der Hintergrund. Diese Funktion soll alle Tabellen aus einer Datenbank, welche mit "tblPersImport" anfangen in einer Combobox auflisten. Ich fülle das ganze aber erst in ein Array, um die Tabellen nach Monat und Jahr zu sortieren. (Als Beispiel für einen Tabellennamen .TableDefs(i).Name ist "tblPersImport_12_2004").
Danke für eure Hilfe