Textdatei variabel auslesen



Excel-Version: 10.0 (Office XP)
nach unten

Betrifft: Textdatei variabel auslesen
von: Hartmut
Geschrieben am: 09.06.2002 - 17:46:49

Hallo Zusammen,

bin inzwischen an einem Punkt, wo ich Eure Unterstützung brauche. Nachdem ich mit externer Unterstützung bereits folgendes Makro zum Laufen gebracht habe komme ich nun nicht mehr weiter. Das Makro liest aus einer Textdatei, die sich aus mehreren Emails (per Outlook über "speichern unter" erzeugt) zusammensetzt verschiedene Zeileninhalte satzweise in die Spalten einer Exceldatei aus. Leider ist es so, dass in den einzelnen Emails nicht immer alle Infos an der gleichen Stelle stehen bzw. teilweise weitere relevante Zeilen (wie z.B. Telefonnummer) hinzugefügt sind, so dass ich durch den Zähler (i), der stur Zeile für Zeile durchliest Probleme bekomme. Wie kann ich das Makro so flexibel gestalten, dass ich die Datensätze dennoch in die Spalten in mein Excelsheet bekomme.

Danke und Gruss
Hartmut


Makro:

Sub Auslesen()
Workbooks("Input.txt").Activate
lngmax = Cells(Rows.Count, 1).End(xlUp).Row
k = 1
For i = 1 To lngmax
If Left$(Cells(i, 1), 12) = "Artikelbesch" Then
ArtBeschr = Cells(i + 1, 1)
ArtNr = Right$(Cells(i + 2, 1), Len(Cells(i + 2, 1)) - 15)
VerkPreis = Right$(Cells(i + 3, 1), Len(Cells(i + 3, 1)) - 15)
EndeDatum = Right$(Cells(i + 4, 1), Len(Cells(i + 4, 1)) - 19)
ZahlGebote = Right$(Cells(i + 5, 1), Len(Cells(i + 5, 1)) - 23)
MitgliedsnameVerk = Right$(Cells(i + 6, 1), Len(Cells(i + 6, 1)) - 31)
EmailVerk = Right$(Cells(i + 7, 1), Len(Cells(i + 7, 1)) - 32)
NameVerk = Right$(Cells(i + 8, 1), Len(Cells(i + 8, 1)) - 6)
StrasseVerk = Right$(Cells(i + 9, 1), Len(Cells(i + 9, 1)) - 8)
OrtVerk = Right$(Cells(i + 10, 1), Len(Cells(i + 10, 1)) - 5)
MitgliedsnameHoechst = Right$(Cells(i + 11, 1), Len(Cells(i + 11, 1)) - 34)
EmailHoechst = Right$(Cells(i + 12, 1), Len(Cells(i + 12, 1)) - 35)
NameHoechst = Right$(Cells(i + 13, 1), Len(Cells(i + 13, 1)) - 6)
StrasseHoechst = Right$(Cells(i + 14, 1), Len(Cells(i + 14, 1)) - 8)
OrtHoechst = Right$(Cells(i + 15, 1), Len(Cells(i + 15, 1)) - 5)
Workbooks("Auswertung.xls").Activate
Cells(k, 1) = Trim(ArtBeschr)
Cells(k, 2) = Trim(ArtNr)
Cells(k, 3) = Trim(VerkPreis)
Cells(k, 4) = Trim(EndeDatum)
Cells(k, 5) = Trim(ZahlGebote)
Cells(k, 6) = Trim(MitgliedsnameVerk)
Cells(k, 7) = Trim(EmailVerk)
Cells(k, 8) = Trim(NameVerk)
Cells(k, 9) = Trim(StrasseVerk)
Cells(k, 10) = Trim(OrtVerk)
Cells(k, 11) = Trim(MitgliedsnameHoechst)
Cells(k, 12) = Trim(EmailHoechst)
Cells(k, 13) = Trim(NameHoechst)
Cells(k, 14) = Trim(StrasseHoechst)
Cells(k, 15) = Trim(OrtHoechst)
k = k + 1
Workbooks("Input.txt").Activate
End If
Next i

Workbooks("Auswertung.xls").Activate
End Sub

nach oben   nach unten

Re: Textdatei variabel auslesen
von: Hans W. Herber
Geschrieben am: 10.06.2002 - 07:25:30

Hallo Hartmut,

der Königsweg wäre, das für den Email-Aufbau verantwortliche Script - CGI oder was auch immer - zu veranlassen, vernünftig auslesbare Daten zu liefern.

Da man darauf aber nicht immer Einfluß hat, nachfolgend eine Routine, die davon ausgeht, dass die Email-Zeilen so aussehen:
Telefon: 02683-949014

hans

nach oben   nach unten

Re: Textdatei variabel auslesen
von: Hartmut
Geschrieben am: 10.06.2002 - 09:51:01

Vielen Dank Hans,
für die schnelle Antwort ich versuche mal das Makro entsprechend umzubauen.
Gruss
Hartmut

 nach oben

Beiträge aus den Excel-Beispielen zum Thema "Textdatei variabel auslesen"