Supportnet / Forum / Tabellenkalkulation
Datei mit mehr als 65K Zeilen in Exel nutzen
Frage
Hallo,
Habe eine txt-Datei mit mehr als 65K Zeilen. Beim Öffnen mosert Excel, daß nicht alle Daten eingelesen werden konnten. Gibt es ein Tool, mit dem ich die txt-Datei in mehrere Teile aufsplitten kann, die dann in Excel geöffnet werden können?
Antwort 1 von Coolpix
hallo Mike,
grundsätzlich würde ich dir davon abraten bei so großen Datenmengen Excel zu verwenden.
Access kann das besser !
Ich sehe höchstens die Möglichkeit die ersten 65536 Zeilen auf ein Tabellenblatt einzulesen und dann die nächsten auf ein neues Tabellenblatt .
wenn du damit leben könntest kan ich dir den Code dazu posten...
Greetings ;-)
grundsätzlich würde ich dir davon abraten bei so großen Datenmengen Excel zu verwenden.
Access kann das besser !
Ich sehe höchstens die Möglichkeit die ersten 65536 Zeilen auf ein Tabellenblatt einzulesen und dann die nächsten auf ein neues Tabellenblatt .
wenn du damit leben könntest kan ich dir den Code dazu posten...
Greetings ;-)
Antwort 2 von Mike Hinz
Klar, daß würde mir schon reichen.
Habe mir im Moment versucht mir mit split von Unix zu helfen. Die Dos-Version die ich habe kann aber anscheinend nicht mit zahlen größer als ungefähr 40000 umgehen, so daß ich kein "punktgenaues" splitten machen kann.
Wenn du den Code parat hast, dann bitte immer her damit!
Habe mir im Moment versucht mir mit split von Unix zu helfen. Die Dos-Version die ich habe kann aber anscheinend nicht mit zahlen größer als ungefähr 40000 umgehen, so daß ich kein "punktgenaues" splitten machen kann.
Wenn du den Code parat hast, dann bitte immer her damit!
Antwort 3 von Coolpix
Momentchen noch...
bin grade noch am Testen...
Greetings ;-)
bin grade noch am Testen...
Greetings ;-)
Antwort 4 von Coolpix
hallo nochmal:
hier der Code dazu...
... nur Geduld damit das läft eine Zeit lang
Greetings ;-)
hier der Code dazu...
Public Sub Textimport()
Dim Wert As String 'Variable für den Zeileninhalt der Textdatei
Dim Datei As String, Pfad As String
Dim Zaehler1 As Long, Zaehler2 As Long
Pfad = "C:\Temp\" 'anpassen
Datei = Pfad & "Test.txt" 'anpassen
Close #1
Open Datei For Input As #1
Do While Not EOF(1)
For Zaehler2 = 1 To 3 'Anzahl der Blätter die man füllen will
For Zaehler1 = 1 To 65500 'Anzahl der einzulesenden Zeilen pro Blatt
Line Input #1, Wert 'Zeile in Variable schreiben
'Wert der Variablen in Zelle schreiben
Sheets(Zaehler2).Range("A" & Zaehler1).Value = Wert
Next Zaehler1 ' nächste Excel-Zeile
Next Zaehler2 ' nächstes Tabellenblatt
Loop
Close #1
End Sub
... nur Geduld damit das läft eine Zeit lang
Greetings ;-)
Antwort 5 von nighty
hi alle :)
das etwas bessere excel :)
quattro pro :)))
gruss nighty
sheets = 18 278
spalten = 18 278
zeilen = 1 000 000
das etwas bessere excel :)
quattro pro :)))
gruss nighty
sheets = 18 278
spalten = 18 278
zeilen = 1 000 000
Antwort 6 von Mike Hinz
So wie ich den Code entziffere schreibt der jeweils eine komplette Zeile in eine Zelle, richtig?
Im Moment importiere ich die Dateien aber per Hand mit dem Assistenten von Excel, der die Datei dann auch automatisch spaltenmäßig einteilen kann. Ist das mit deiner Lösung auch machbar?
Im Moment importiere ich die Dateien aber per Hand mit dem Assistenten von Excel, der die Datei dann auch automatisch spaltenmäßig einteilen kann. Ist das mit deiner Lösung auch machbar?
Antwort 7 von Coolpix
hallo Mike,
entweder du machst es anschließend über das Menü Daten -> Text in Spalten oder ...
wenn die Daten in jeder Zeile gleich aufgebaut sind per VBA...
dazu müßte ich allerdings 'nen Auszug aus der Textdatei haben( so 10 Zeilen genügen ).
siehe Email !
allerdings komme ich erst heute Abend dazu...
Greetings ;-)
entweder du machst es anschließend über das Menü Daten -> Text in Spalten oder ...
wenn die Daten in jeder Zeile gleich aufgebaut sind per VBA...
dazu müßte ich allerdings 'nen Auszug aus der Textdatei haben( so 10 Zeilen genügen ).
siehe Email !
allerdings komme ich erst heute Abend dazu...
Greetings ;-)
Antwort 8 von Mike Hinz
Ich glaube wenn ich das ganze über VB machen soll, lass ich den Spass mal. Mir reicht schon das Makro was ich für die Auswertung schreiben musste.
Trotzdem Danke für die Hilfe!
Trotzdem Danke für die Hilfe!

