Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
688to692
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
688to692
688to692
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Textdatei automatisch importieren

Textdatei automatisch importieren
02.11.2005 14:22:19
Thias
Hallo,
als User-Looser stehe ich vor dem Problem, Daten aus einer Textdatei importieren zu wollen (müssen).
Die Daten der Textdatei haben den Aufbau:
1.222;3.345 1.123;1.123
1.222;2.234 1.432;3.234
x.xxx;x.xxx x.xxx;x.xxx
Oder vielleicht besser in Worten:
Zahl1;Zahl5 -Tabulator- Zahl9;Zahl13
Zahl2;Zahl6 -Tabulator- Zahl10;Zahl14
Zahl3;Zahl7 -Tabulator- Zahl11;Zahl15
Zahl4;Zahl8 -Tabulator- Zahl12;Zahl16
Die zu trennenden Daten stehen also erstens: mit Semikolon getrennt und zweitens: mit einem Tabulator getrennt (ist hier nicht gut sichtbar, weil ein Tabulator anscheinend nicht angezeigt wird).
In Excel möchte ich diese Zahlen nun gerne in 4 Spalten importiert haben.
Dazu habe ich hier schon als ersten Ansatz ein Makro gefunden, mit dem ich die durch das Semikolon getrennten Zahlen einlesen kann. Dieses sieht wie folgt aus:

Sub TextImport()
Dim iRow As Integer, iCol As Integer
Dim sFile As String, sText As String
sFile = Range("G1").Value
If Dir(sFile) = "" Then
Beep
MsgBox "Datei wurde nicht gefunden!"
Exit Sub
End If
iRow = 1
iCol = 1
Close
Open sFile For Input As #1
Do Until EOF(1)
Line Input #1, sText
Do While InStr(sText, ";")
Cells(iRow, iCol).Value = Left(sText, InStr(sText, ";") - 1)
sText = Right(sText, Len(sText) - InStr(sText, ";"))
iCol = iCol + 1
Loop
Cells(iRow, iCol).Value = sText
iRow = iRow + 1
iCol = 1
Loop
Close
End Sub

Nun würde ich dieses Makro noch gerne erweitern, damit auch die durch den Tabulator getrennten Zahlen nicht in eine Zelle importiert werden, sondern in eigene Zellen (also eine eigene Spalte). Wenn man den umständlichen Weg über -> Daten -> externe Daten importieren -> Daten importieren geht, dann kann man in den folgenden Schritten den Tabulator als Trennzeichen auswählen. Allerdings möchte ich das nun gerne automatisiert haben, so dass ich letztendlich das Makro nur einem Button zuweisen muss, und der Importvorgang dann automatisch abläuft.
Kann mir dabei jemand evtl. weiterhelfen?

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Textdatei automatisch importieren
02.11.2005 14:38:25
Luschi
Hallo Thias,
mit der Replace-Funktion kann man alle Tabulatoren in einer Zeichenkette gegen
je ein Semikolon austauschen. Der Tabulator entspricht der Funktion Chr(9)
Line Input #1, sText
sText = Replace(sText, Chr(9), ";", 1, -1)
Gruß von Luschi
aus klein-Paris
AW: Textdatei automatisch importieren
03.11.2005 08:02:37
Thias
Hallo Luschi,
vielen Dank für die Hilfe! Funktioniert super und genau so, wie ich es mir vorgestellt hatte! Daher werde ich sicherlich noch viele weitere Fragen hier stellen, wenn ich nicht weiterkomme! ;-)
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige