>> da gibt's auch bei Arrays Grenzen u.U. abhängig vom Arbeitsspeicher, Du wirst wahrscheinlich Deine .txt-Datei zeilenweise und dann mehrfach in das Array einlesen müssen...
Selbst auf einem 32bit System kratzt das unter den genannten Angaben nicht mal ansatzweise am Limit (und richtig, es ist abhängig vom verfügbaren Arbeitsspeicher: auf 32bit maximal 4 GB ... abzüglich des Speicherbedarfs des Betriebssystems sagen wir mal 3 GB theoretisch verfügbar).
Angenommen man verwendet den Datentyp Double, dann hat man 8 Byte pro Zahl, 4 Zahlen sind es laut der Angabe pro Zeile.
Das macht also...
... bei 2400 Zeilen: 4 * 2400 * 8 Byte = 76800 Byte
... bei 12500 Zeilen: 4 * 12500 * 8 Byte = 400000 Byte
Wir reden hier demnach nicht mal über MB-Größen.
Mal davon abgesehen, an Tobi:
Excel bietet eine Methode zum importieren von CSV Daten (was bei dir der Fall ist).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | Option Explicit
Sub Bsp()
Dim strFilename As String
strFilename = Application.GetOpenFilename
With Worksheets( "Tabelle1" )
With .QueryTables.Add(Connection:= "TEXT;" & strFilename, Destination:=.Range( "A1" ))
.RefreshStyle = XlCellInsertionMode.xlOverwriteCells
.TextFileParseType = xlDelimited
.TextFileCommaDelimiter = True
.TextFileDecimalSeparator = "."
.TextFileThousandsSeparator = ","
.TextFileTrailingMinusNumbers = True
Call .Refresh(BackgroundQuery:= False )
Call .Delete
End With
End With
End Sub
|
Probier es mal aus und melde dich ob/wie es läuft.
Gruß
|