1.8k Aufrufe
Gefragt in Tabellenkalkulation von
Guten Tag,

ich habe eine Unmenge von Messdaten die im .txt-Format vorliegen und folgendermaßen aufgebaut sind:

Time,Ampl
-2.001929e-007,0.00881118
-1.991929e-007,0.0056113
-1.981929e-007,-0.00078845
-1.971929e-007,0.00881118
...

Zur vernünftigen Darstellung möchte ich die Datensätze in Excel2007 importieren. Ein Makro, was dieses tut, habe ich schon erstellt.
Hier das Makro:
----------------------------------------------------
Sub LII_Datenimport()

ChDir "D:\Eigene Dateien\TiRe-LII\Flammenreaktor\TiRe-LII-Experimente\Fe2O3"
' Auswahlmaske vorbelegen
FileFilter = "Textdateien (*.txt), *.txt, Alle Dateien (*.*), *.*"
' Standarddialog Öffnen aufrufen
fname = Application.GetOpenFilename(FileFilter, 1, "Zu importierende txt-Datei...")
If fname = False Then Exit Sub

' Hier was wie WorkBooks.Open oder WorkBooks.OpenText anfügen, z.B.:
Workbooks.OpenText Filename:=fname, Origin:=xlMSDOS, StartRow:=6, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=False, _
Comma:=True, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 1), Array(4, 1)), DecimalSeparator:=".", ThousandsSeparator _
:=" ", TrailingMinusNumbers:=True

End Sub
----------------------------------------------------
Allerdings muss man es für jede txt-Datein neu ausführen...Pro Messkampagne kommen schnell hundert
Messdateien zusammen, so dass das ziemlich mühselig ist!
Am leibsten wäre es mir, wenn ich nur den Ordner auswählen müsste, in dem sich die txt-files befinden, und es wird in einem excel-sheet in Spalte A die Zeitspalte (time) und ,daneben (Spalte B, C, D, ...) die Ampl-Spalte der txt-files eingelesen, da die time-Spalte meist für alle Dateien identisch ist! Wenn dann noch in Zeile 1 des neu angelegten Excel-Sheets über der Ampl-Spalte der jeweilige Dateiname des txt-files stehen würde, wäre es perfekt!!!
Ist es möglich das Speichern des neuen Excel-Sheets über den "Speichern unter"-Dialog zu vollziehen?

Über Eure Tips wäre ich mehr als dankbar!!!

Grüße,

Ben

4 Antworten

0 Punkte
Beantwortet von
Hi,

Mein Ansatz ist mal in dieser Beispielmappe zu finden (für andere Interessierte als xls-File gespeichert).

Button in Tabelle1 startet den Ablauf. Alle txt-Files im gewählten Verzeichnis werden durchlaufen. Ergebnis wird in einer neu erstellten Mappe ausgegeben.

bye
malSchauen
0 Punkte
Beantwortet von
Hi,

dein Makro funktioniert...allerdings nur für die ersten beiden Dateien. Danach werden nur noch die Dateinamen in Zeile 1 geschrieben.
Zudem ist es beim ersten Ausprobieren (Einlesen con 100 txt-files) abgeschmiert. Das Einlesen von 4 Dateien führte zu dem o.g. Ergebnis.
Eine kleine Änderung: ist es möglich nur einen Teil des Dateinamens (die ersten 9 Zeichen) in Zeile 1 zu importieren, anstatt des kompletten Dateinamens? Die txt-files sind alle derart benannt (M001_PMT1_...)., demnach sollte dann in Zeile 1 stehen:
time | M001_PMT1 | M001_PMT2 | M002_PMT2 | M002_PMT2 usw.

Gruß,

Ben
0 Punkte
Beantwortet von
Ach so, hier vielleicht nochmal das Benennungsschema der txt-files:

M001_PMT1_35mbar_200mm_2,0sccm_532_50mJ_360mV.txt
M001_PMT2_35mbar_200mm_2,0sccm_532_50mJ_360mV.txt
M002_PMT1_35mbar_200mm_2,0sccm_532_50mJ_360mV.txt
M002_PMT2_35mbar_200mm_2,0sccm_532_50mJ_360mV.txt
usw. ...

Ich kann dir auch mal ein paar Testdateien zuschicken!

Vielen Dank schonmal!

Gruß,

Ben
0 Punkte
Beantwortet von
Hi,

Ok, wenn die Daten es zulassen, dann pack doch einmal 10 bis 50 (ich kenne ja die Grösse der einzelnen Files nicht) in ein Zip-/ Rar-Archiv, und lade dieses z.B. bei www.file-upload.net/ hoch. Den Download-Link den Du dann dort erhälst, gibst Du dann hier zum Besten. Dabei sollten dann unbedingt auch Files sein, wo nur der Dateiname aber keine Daten in der Auswertung auftauchten.

Dann schaue ich mir das gerne mal mit echten Daten an.

bye
malSchauen
...