Re: String extrahieren
- From: "Wolfgang Habernoll" <wolfgang.habernoll@xxxxxxxxxxx>
- Date: Thu, 16 Aug 2007 12:00:27 +0200
Hallo
<kortmann81@xxxxxxxxxxxxxx> schrieb im Newsbeitrag
news:1187253316.867725.107740@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
On 16 Aug., 09:20, kortman...@xxxxxxxxxxxxxx wrote:
Hallo erstmal vielen Dank für die schnellen Antworten. Es handelt sich
hier um ein VBA - Problem. Ich lese eine txt- Datei in einen String
ein. Meine Beispieldatei hat 1600 Zeichen und ist somit noch eine sehr
kleine, da sie nur einen Datensatz enthält. Die Datei ist nach
folgendem Muster aufgebaut.
' ' --> immer ein bestimmtes Segment
innerhalb des Segmentes gibt es Gruppen die durch + Inhalt +
gekennzeichnet sind
eine Gruppe ( Bsp: + Gruppe1+) kann mehrere Inhalte haben die durch :
getrennt sind
Beispiel:
'UNB+UNOC:3+9900xxxxxxxxx:14+990xxxxxxxxxx:14+070815:1027+16020321'
'Segment UNB(Anfang)+Gruppe UNOC+Gruppe Empfänger+Gruppe Absender
+Gruppe Datum + Referenz ' (Ende Segment UNB)
solche Segment würde ich gerne auf einfache Art und Weise
auseinandernehmen. Da in meiner Besipieldatei 79 Segmente enthalten
sind, ist dieses sehr aufwändig zu programmieren. Dehalb wollte ich im
Vorfeld, zb. alle Segment extrahieren und in Variablen schreiben, um
einfach den Überblick nicht zu verlieren und nicht zu statisch zu
werden.
Das Beispiel mit den Regexpressions verstehen ich leider nicht ganz.
Ich denke die Lösung ist nicht für mich geeignet.
Wie bekomme ich das nur hin? Wenn ich erstmal alle Segmente habe,
würde mir das schon weiterhelfen. Die Bearbeitung sollte sukzessive
passieren, d.h. erst das erste Segment und dann vielleicht aus dem
string entfernen, dann das nächste Segment.
Was ich noch dazu sagen muss, die ' trennen immer die Gruppen. D.h.
'gruppe1'gruppe2'gruppex'
wenn ich den Datenaufbau richtig verstehe könnte da doch schon einfach SPLIT
helfen. versuche mal so, du kannst auch gleich mit + auf die Gruppen
trennen.
!! Spalte A in Tabelle1 wird überschrieben, passe es an.
Sub TextTrennen()
Dim strDate As String
Dim arrTxt
Dim lngI As Long
''Testdaten
strDate = "
'UNB+UNOC:3+9900xxx:14+990xxx:14+070815:1027+16020321'UNB+UNOC:3+9900xxx:
14+990xxx:14+070815:1027+16020321'UNB+UNOC:3+9900xxx:14+990xxx:14+070815:1027+16020
321'UNB+UNOC:3+9900xxx:14+990xxx:14+070815:1027+16020321'"
arrTxt = Split(strDate, "'") ''Segmente trennen
'arrTxt = Split(strDate, "+") '' oder Gruppe trennen
For lngI = LBound(arrTxt) To UBound(arrTxt)
Worksheets("Tabelle1").Cells(lngI + 1, 1) = arrTxt(lngI)
Next lngI
End Sub
.
- Follow-Ups:
- Re: String extrahieren
- From: kortmann81
- Re: String extrahieren
- References:
- String extrahieren
- From: contact
- Re: String extrahieren
- From: Dr. Eckehard Pfeifer
- Re: String extrahieren
- From: Alexander Wolff
- Re: String extrahieren
- From: kortmann81
- Re: String extrahieren
- From: kortmann81
- String extrahieren
- Prev by Date: Re: Excel Query Abfrage mit Datumsliste
- Next by Date: Re: Excel langsam
- Previous by thread: Re: String extrahieren
- Next by thread: Re: String extrahieren
- Index(es):
Relevant Pages
|