Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Daten Zeilenweise aus einem String extrahieren?

Forumthread: Daten Zeilenweise aus einem String extrahieren?

Daten Zeilenweise aus einem String extrahieren?
24.01.2004 10:03:41
Vera
Hallo liebe Exceler, hallo liebe Excelerinnen,
ich habe es bisher geschaft aus der Zwischenablage einen
ca. 7000 Zeichen großen Text in einen String Merker$ einzulesen.
Jetzt muß ich aus diesem String einige Informationen extrahieren,
die (ev. jedes Mal) in unterschiedlichen Zeilen stehen können.
Wie kann ich den String Merker$ effektiv in einzelne Zeilen zerlegen?
(ähnlich Line input)
Gibt es dazu eine Funktion?
Liebe Grüße
Vera
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten Zeilenweise aus einem String extrahieren?
24.01.2004 11:03:33
Nepumuk
Hallo Vera,
wenn du den Umweg über eine Textdatei nehmen willst dann ginge das. Wäre aber Unsinn. Gibt es definierte Trennzeichen in dem Text (z.B. Chr(10)&Chr(13) ), oder anders gefragt, wo kommt der Text denn her?
Gruß
Nepumuk
AW: Daten Zeilenweise aus einem String extrahieren?
24.01.2004 14:30:32
Vera
Der von der Zwischenablage eingelesene Text ist die Auktionsmeldung von eBay.
Die Zeilen sind mit chr(13)+chr(10) abgeschlossen.
Klar, dass ich Zeichen für Zeichen einlesen und nach einem chr(10) suchen kann.
Aber ich suche eine noch schnellere Methode ..
Liebe Grüße
Vera
Anzeige
AW: Daten Zeilenweise aus einem String extrahieren?
24.01.2004 16:36:33
Nepumuk
Hallo Vera,
verwende die Instr - Methode.
Beispiel:

Option Explicit
Public Sub Vera()
Dim strText As String, strFeld() As String, intIndex As Integer, lngPos As Long, lnglaenge As Long
'    Teststring füllen
For intIndex = 1 To 100
strText = strText & CStr(intIndex) & "ajksdfhakösjfhasfjh" & vbCrLf
Next
'    Teststring zeilenweise in ein Array
intIndex = 0
lngPos = 1
lnglaenge = 2
Do
intIndex = intIndex + 1
ReDim Preserve strFeld(1 To intIndex)
strFeld(intIndex) = Mid(strText, lngPos, InStr(lngPos, strText, Chr(10)) - lnglaenge)
lngPos = InStr(lngPos, strText, Chr(10)) + 1
lnglaenge = lnglaenge + Len(strFeld(intIndex)) + 2
Loop While lngPos < Len(strText)
End Sub


Code eingefügt mit: Excel Code Jeanie
In dem Array kannst du nun die Zeilen einzeln durchsuchen.
Gruß
Nepumuk
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige