Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Import aus TXT-Datei

Forumthread: Import aus TXT-Datei

Import aus TXT-Datei
23.06.2004 12:05:38
Holger
Hallo Forum,
habe folgenden Code der mir aus einer Textdatei mit dem Feldseperator "Komma"
die Daten in bestimmte Zellen schreibt.
1.Ist es möglich die Anzahl der Daten(hier 4 Werte) variabel zu gestalten,
so das das Makro nach alle Daten suchet, bis zum Ende. Die Anzahl der Daten ist unterschiedlich.
2.kann der Seperator in ein Hochkomma umgewandelt werden ?
Danke für die Hilfe !

Sub TextImport()
Dim arr(1 To 4) As String
Dim iFile As Integer, icounter As Integer
Dim sFile As String
sFile = "C:\test.txt"
iFile = FreeFile
Open sFile For Input As iFile
Do Until EOF(iFile)
Input #iFile, arr(1), arr(2), arr(3), arr(4)
Loop
Close
For icounter = 1 To 4
Cells(icounter, 1).Value = arr(icounter)
Next icounter
End Sub

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Import aus TXT-Datei
Uduuh
Hallo,
warum benutzt du nicht die OpenText-Methode?
Gruß aus'm Pott
Udo
AW: Import aus TXT-Datei
GerdZ
Hallo Holger,
folgender Code funktioniert bei mir in Excel 2000 problemlos:
Sub TextImport()
Dim sBuffer As String, aBuffer() As String
Dim iFile As Integer, iCounter As Integer
Dim sFile As String
sFile = "C:\test.txt"
iFile = FreeFile
Open sFile For Binary As iFile
sBuffer = Input(LOF(iFile), iFile)
Close iFile
aBuffer = Split(sBuffer, vbCrLf)
'    For iCounter = LBound(aBuffer) To UBound(aBuffer)
'    Cells(iCounter + 1, 1).Value = aBuffer(iCounter)
'    Next iCounter
Range("A1:A" & CStr(UBound(aBuffer) - LBound(aBuffer) + 1)).Value = WorksheetFunction.Transpose(aBuffer)
End Sub

Hierbei wird die Textdatei komplett in sBuffer gelesen und dann mit der Split-Funktion anhand der Zeilenschaltungen in ein Array aufgeteilt.
Gruß
Gerd
Anzeige
AW: Import aus TXT-Datei
24.06.2004 08:03:42
Holger
Hallo Gerd,
danke für die Lösung es ist fast so wie ich es brauche, aber kannst du mir
vielleicht weiterhelfen, denn jeder Zeichensatz soll fortlaufend in eine Zelle (A1-A..)
geschrieben werden.
Danke !
Holger
AW: Import aus TXT-Datei
GerdZ
Hallo Holger,
was meinst Du mit "jeder Zeichensatz"?
Der Code schreibt jede Zeile aus der txt-Datei in die Zellen der Spalte A, angefangen bei A1.
Gruß
Gerd
Anzeige
AW: Import aus TXT-Datei
25.06.2004 08:54:40
Holger
Hallo Gerd,
meine TXT ist wie folgt aufgebaut:
'QTY+46:0.570'QTY+46:0.660'QTY+46:0.600'QTY+46:0.570'QTY+46:0.600'QTY+.....
'QTY+46:0.570'QTY+46:0.660'QTY+46:0.600'QTY+46:0.570'QTY+46:0.600'QTY+.....
In einer Zeile stehen zu viele Daten, die kann Excel nicht übernehmen.
Ein Zeichensatz besteht aus "QTY+46:0.660" der Feldtrenner ist ein Hochkomma.
Ich möchte das jeder Zeichenzatz der TXT-Datei in eine Zelle absteigend
(A1-A...)geschrieben wird.
Hoffe du kanst mir helfen !!
Gruß
Holger
Anzeige
AW: Import aus TXT-Datei
GerdZ
Hallo Holger,
vielleicht reicht das Ändern der Zeile
aBuffer = Split(sBuffer, vbCrLf)
in
aBuffer = Split(sBuffer, "'")
Gruß Gerd
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige