Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
620to624
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
620to624
620to624
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Aus mehreren Textdatei einzelne Werte lesen

Aus mehreren Textdatei einzelne Werte lesen
09.06.2005 11:06:09
Walther
Mein Problem ist vorgendes,
Ich habe ca.1000 txt Files aus denen ich durch Angabe eines Zeitraums ca.100
auswählen muss und von diesen dann Bestimmte Werte in eine Tabelle eintragen muss.
Am Beispiel:
Meine Datein heissen z.B.:
oberfilz_20040518_001107_k.txt
oberfilz_20040518_011117_k.txt
oberfilz_20040518_021105_k.txt
...
und liegen alle in C:\cmr\VB\Alle Daten\
Die Datein ind so Aufgebaut:
Startzeit: 00:01:23 Endzeit: 00:11:07
Tuesday, May 18, 2004, 00:11:07
* Av_rel_Perm_OF 0.464
* Av_a_u_Feuchte_OF 0.5984 %
* Av_Temperatur_OF 42.914 °C
* Av_Vordruck_Wasser_OF 22.919 bar
* Av_Mw_TransmitP_OF 11.9624 mA
Weg_OF Vordruck_Wasser_OF rel_Perm_OF Temperatur_OF Mw_TransmitP_OF
% bar ? °C mA %
0.00 22.757 0.5355 33.848 12.1289 0.6067
0.17 22.787 0.5240 33.998 12.0410 0.6023
0.33 22.849 0.5027 34.360 11.9922 0.5999
0.50 22.864 0.4992 34.677 11.9922 0.5999
0.67 22.925 0.4808 34.120 11.9922 0.5999
0.83 22.940 0.4794 34.224 11.9727 0.5989
1.00 22.940 0.4860 35.151 11.9727 0.5989
Und ich muss nun von jeder Datei die ersten 4 Werte also
* Av_rel_Perm_OF 0.464
* Av_a_u_Feuchte_OF 0.5984 %
* Av_Temperatur_OF 42.914 °C
* Av_Vordruck_Wasser_OF 22.919 bar
und das jeweilige Datum in eine Zeile schreiben.
ungefähr so:
0.464: 0.5984: 42.914: 22.919: 20040518_001107(Datum auch Formatierung möglich)
0.454: 0.5484: 43.514: 22.459: 20040518_011117
0.473: 0.5984: 42.914: 22.919: 20040518_021105
usw.
Ich würde mich auch sehr über Teillösungen freuen.
Vielen Dank.

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Lösungsansatz
09.06.2005 12:52:12
Harald
Hallo Walther,
StandardModule: Modul1

Sub GrepText()
Dim fs As FileSearch
Dim lRow As Long, lFile As Long
Dim iCounter As Integer
Dim sDir As String, sTxt As String, sBegriff As String
Application.ScreenUpdating = False
sDir = Range("H1").Value 'Pfadangabe
sBegriff = Range("H3").Value 'Suchbegriff
Columns("A").ClearContents
Set fs = Application.FileSearch
With fs
.LookIn = sDir
.Filename = Range("H2").Value 'Dateiname
.Execute
For iCounter = 1 To .FoundFiles.Count
lFile = lFile + 1
If lFile Mod 100 = 0 Then Application.StatusBar = _
"Bearbeite Datei " & lFile & "..."
Open .FoundFiles(iCounter) For Input As #1
Do Until EOF(1)
Line Input #1, sTxt
If InStr(sTxt, sBegriff) Then
lRow = lRow + 1
Cells(lRow, 1).Value = sTxt
End If
Loop
Close
Next iCounter
End With
Application.StatusBar = False
Application.ScreenUpdating = True
End Sub

Dieser Code ist von der Herber Excel-CD (sehr empfehlenswert, da dort u.a. auch noch andere Möglichkeiten des Textimport beleuchtet werden)
Leider hab ich keine Zeit, die Sache nachzubauen. Daher ist der Code unverändert.
Der Code durchsucht alle Textdateien im angegebenen Verzeichnis nach einem Suchbegriff und fügt diese Zeile in ein Arbeitsblatt.
Da für dein Problem bisher keine andere Lösung eingegangen ist, dachte ich dies wäre ein guter Ansatz.
Viel Erfolg
Harald
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige