Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1428to1432
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

große Datenmengen einlesen

große Datenmengen einlesen
11.06.2015 14:58:16
Enrico
Hallo zusammen
ich lese über ein Makro Daten aus einer dat-Datei ein.
'1 xlGeneralFormat.General
'2 xlTextFormat.Text
'3 xlMDYFormat.MDY Date
'4 xlDMYFormat.DMY Date
'5 xlYMDFormat.YMD Date
'6 xlMYDFormat.MYD Date
'7 xlDYMFormat.DYM Date
'8 xlYDMFormat.YDM Date
'10 xlEMDFormat. EMD Date
'9 xlSkipColumn.Skip Column
ReDim ColumnArray(0 To 14, 1 To 2)
ColumnsDesired = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
DataTypeArray = Array(1, 2, 1, 1, 3, 2, 2, 2, 2, 9, 2, 2, 9, 2, 2)
For x = LBound(ColumnsDesired) To UBound(ColumnsDesired)
ColumnArray(x, 1) = ColumnsDesired(x)
ColumnArray(x, 2) = DataTypeArray(x)
Next x
Workbooks.OpenText FileName:=myfilename, _
DataType:=xlDelimited, Other:=True, OtherChar:="|", FieldInfo:=ColumnArray, _
DecimalSeparator:=".", ThousandsSeparator:=" ", _
TrailingMinusNumbers:=False
Jetzt muss ich die Spaltenanzahl deutlich erhöhen.
Ist es richtig das da bei ca. 600 Spalten Schluss ist ?
Falls ja .... hat jemand eine andere Idee, wie ich schnell 1000 Zeilen und Spalten einlesen und das Format der Spalten bestimmen kann?
Danke

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: große Datenmengen einlesen
11.06.2015 16:19:40
Daniel
Hi
das problem dürfte entstehen, wenn du versuchst dein Array mit den informationen für alle 600 Spalten in einer einzigen Programmzeile zu erzeugen.
Das wird dann für den Edtior zu viel weil die Anzahl der Zeichen pro Programmzeile ist begrenzt.
Das TexInSpalten kann die Spaltenanzahl problemlos verarbeiten, du musst halt das Array für die FieldInfo dann so erstellen, dass es in den VBA-Edtior rein passt, beispielsweise mit einer Schleife, oder wenns keine Regel gibt, dann direkt auch einzeln:
ColumnArray(1) = Array(1, 1)
ColumnArray(2) = Array(2, 2)
ColumnArray(3) = Array(3, 1)
usw.
gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige