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

Import Strukturierter Text

Forumthread: Import Strukturierter Text

Import Strukturierter Text
10.04.2006 10:31:16
Rüdiger
Wie kann ich eine strukturierte Textdatei in Excel importieren:
Beispiel-Datei:
Name: Mueller
Vorname: Frank
Wohnort: München
[Seitenwechsel]
Name: Maier
Vorname: Oliver
Wohnort: Stuttgart
u.s.w
Die Bezeichner (Name, Vorname,..) sollen dabei als Spaltenüberschrift in Excel erscheinen und darunter für jeden Datensatz eine Zeile.
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Import Strukturierter Text
10.04.2006 10:35:28
ede
hallo rüdiger,
kannst du mal eine kleines beispiel deiner text-datei abstellen!
gruss
AW: Import Strukturierter Text
10.04.2006 11:03:23
ede
hallo nochmal,
dann teste mal den nachstehenden code!
rückantwort wäre super!
gruss

Sub Text_Import()
Dim spalte As Integer
Dim zeile As Integer
Dim startpos As Integer
'StartVerzeichnis - bitte anpassen
ChDrive "c:\"
ChDir "\temp"
'Dialogfenster Öffnen
sFile = Application.GetOpenFilename _
("alle Dateien (*.txt), *.txt")
If sFile <> False Then
Close
Open sFile For Input As #1
zeile = 2
Cells(1, 1).Value = "Name"
Cells(1, 2).Value = "Vorname"
Cells(1, 3).Value = "Wohnort"
Do While Not EOF(1)
Line Input #1, strtxt
spalte = 0
If UCase(Left(strtxt, 4)) = UCase("Name") Then
spalte = 1
startpos = 8
End If
If UCase(Left(strtxt, 7)) = UCase("Vorname") Then
spalte = 2
startpos = 10
End If
If UCase(Left(strtxt, 7)) = UCase("Wohnort") Then
spalte = 3
startpos = 10
End If
If spalte > 0 Then Cells(zeile, spalte).Value = Mid(strtxt, startpos)
If strtxt = "" Then zeile = zeile + 1
Loop
Close
End If
End Sub

Anzeige
AW: Import Strukturierter Text
10.04.2006 13:11:04
Rüdiger
Hallo,
hat prima geklappt. Vielen Dank.
Ich hab deinen Code noch etwas überarbeitet,
so dass er die Labels nicht vorher kennen muss:

Sub Text_Import()
Dim spalte As Integer
Dim zeile As Integer
Dim startpos As Integer
Dim Labels(255) As String
Dim LabelMax As Integer
Dim pos As Integer
Dim Label As String
Dim Wert As String
Dim sFile
Dim strtxt As String
Dim found As Boolean
Dim i As Integer
'StartVerzeichnis - bitte anpassen
'ChDrive "c:\"
'ChDir "\temp"
'Dialogfenster Öffnen
sFile = Application.GetOpenFilename _
("alle Dateien (*.txt), *.txt")
If sFile <> False Then
Close
Open sFile For Input As #1
zeile = 2
LabelMax = 0
Do While Not EOF(1)
Line Input #1, strtxt
pos = InStr(1, strtxt, ":")
If pos > 0 Then
Label = Left(strtxt, pos - 1)
Wert = Right(strtxt, Len(strtxt) - pos)
found = False
For i = 1 To LabelMax
If Label = Labels(i) Then
found = True
Exit For
End If
Next
If found Then
Cells(zeile, i) = Trim(Wert)
Else
LabelMax = LabelMax + 1
Labels(LabelMax) = Label
Cells(1, LabelMax) = Label
Cells(zeile, LabelMax) = Trim(Wert)
End If
End If
If strtxt = "" Then zeile = zeile + 1
Loop
Close
End If
End Sub

Anzeige
AW: Import Strukturierter Text
10.04.2006 13:15:17
ede
sieht ganz gut aus. viel erfolg weiterhin!
gruss
;

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