Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
748to752
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
748to752
748to752
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

textdatei einlesen und auswerten

textdatei einlesen und auswerten
31.03.2006 16:01:34
guthoff
Tach Leute, wer kennt sich aus:
Hier meine etwas komplizierte Aufgabenstellung:
Eine Textdatei sieht wie folgt aus:
.
.
.
850 5440,3360,0,255,-303
010 E 1.2
093 1
028 ,,,,0
851
852 1,7,0,4,0
-290 9
.
.
.
Die Textdatei soll auswählbar sein. Wenn diese beiden Zeilen
010 E 1.2
093 1
direkt nacheinander auftauchen, soll eine Zählervariable inkrementiert werden.
Wenn Dateiende soll der Variable-Wert in eine Zelle geschrieben werden.
Ich wäre für Eure Lösungsansätze sehr Dankbar...
FG

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

Betreff
Datum
Anwender
Anzeige
AW: textdatei einlesen und auswerten
31.03.2006 16:22:17
IngGi
Hallo ,
mein Vorschlag:

Sub Textstellen_zaehlen()
Dim strZeile As String
Dim lngCount As Long
Dim blnFlag As Boolean
Dim strDatei As String
Dim ff As Byte
strDatei = Application.GetOpenFilename
ff = FreeFile
Open strDatei For Input As #ff
Do While Not EOF(ff)
Line Input #1, strZeile
If blnFlag = True Then
If strZeile = "093 1" Then
lngCount = lngCount + 1
blnFlag = False
Else
blnFlag = False
End If
ElseIf strZeile = "010 E 1.2" Then
blnFlag = True
End If
Loop
Close #1
Range("A1") = lngCount
End Sub
Gruß Ingolf
AW: textdatei einlesen und auswerten
31.03.2006 19:24:43
Frankie
Danke erst mal...
Der Ansatz ist schon gut, aber es wird nicht gezählt. Das Ergebnis ist null egal was in der datei drinnen steht?
Ich habe eine TXT.Datei angelegt und :
.
.
850 5440,3360,0,255,-303
010 E 1.2
093 1
028 ,,,,0
851
852 1,7,0,4,0
-290 9
.
.
.
reingeschrieben. Das Ergebnis ist mit dem o.g. Makro trotzdem gleich null,
wo liegt der Fehler?
FG
Anzeige
AW: textdatei einlesen und auswerten
31.03.2006 22:31:11
IngGi
Hallo Frankie,
also bei mir läuft das Makro fehlerfrei - mit deiner Beispieldatei. Als Ergebnis bekomme ich 1 in Zelle A1. Hast du vielleicht irgendwelche Anpassungen vorgenommen?
Gruss Ingolf
AW: textdatei einlesen und auswerten
01.04.2006 02:15:36
Frankie
OK,Du hast recht. Es läuft. Aber wenn ich es wie folgt anpasse funktioniert es nicht wie ich es möchte....
Sub Textstellen_zaehlen()
Dim strZeile As String
Dim lngCount As Long
Dim blnFlag As Boolean
Dim strDatei As String
Dim ff As Byte
strDatei = Application.GetOpenFilename
ff = FreeFile
Open strDatei For Input As #ff
Do While Not EOF(ff)
Line Input #1, strZeile
If blnFlag = True Then
If strZeile = "093 1" Then
lngCount = lngCount + 1
blnFlag = False
Else
blnFlag = False
End If
ElseIf strZeile = "010 E" Then
blnFlag = True
End If
Loop
Close #1
Range("A1") = lngCount
Muss man festlegen das man nur die ersten 4 zeichen durchsuchen möchte?
Anzeige
AW: textdatei einlesen und auswerten
01.04.2006 23:00:24
IngGi
Hallo Frankie,
du musst die Variable strZeile ebenfalls auf die ersten 5 (nicht 4?) Zeichen kürzen, dann geht's wieder. Ich hab ausserdem noch 2 Leichtsinnsfehler von mir korrigiert, die ich erst gerade eben bemerkt habe. Kopier dir also bitte nicht nur die neue Programmzeile heraus, sondern das gesamte Makro. Die Fehler wirken sich zwar nur aus, wenn du mehrere Textdateien gleichzeitig mit Open...For geöffnet hast, aber - Gefahr erkannt, Gefahr gebannt.

Sub Textstellen_zaehlen()
Dim strZeile As String
Dim lngCount As Long
Dim blnFlag As Boolean
Dim strDatei As String
Dim ff As Byte
strDatei = Application.GetOpenFilename
ff = FreeFile
Open strDatei For Input As #ff
Do While Not EOF(ff)
Line Input #ff, strZeile
strZeile = Left(strZeile, 5)
If blnFlag = True Then
If strZeile = "093 1" Then
lngCount = lngCount + 1
blnFlag = False
Else
blnFlag = False
End If
ElseIf strZeile = "010 E" Then
blnFlag = True
End If
Loop
Close #ff
Range("A1") = lngCount
End Sub
Gruss Ingolf
Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige