Ausschnitte aus Textdatei zu Excel-Tabelle zusammenfügen

porenbeton

Lt. Junior Grade
Registriert
Nov. 2014
Beiträge
290
Hallo zusammen,

ich bräuchte mal eure Hilfe. Ich habe einige Textdateien im .out Format, die immer gleich aufgebaut sind. Die Dateien haben einen "Kopf" und einen "Fuß", dazwischen sind die eigentlichen Versuchsergebnisse. Hier mal ein Beispiel mit zwei Ergebnissen:

Code:
...
"Kopfzeilen"
...
================================================================================
T/V                N    NB     P     Q               Time                 Gflops
--------------------------------------------------------------------------------
WR00L2L4       85000   256     2     2              55.01              7.443e+03 
--------------------------------------------------------------------------------
||Ax-b||_oo/(eps*(||A||_oo*||x||_oo+||b||_oo)*N)=        0.0045287 ...... PASSED
================================================================================
T/V                N    NB     P     Q               Time                 Gflops
--------------------------------------------------------------------------------
WR00L2L8       85000   256     2     2              54.62              7.495e+03 
--------------------------------------------------------------------------------
||Ax-b||_oo/(eps*(||A||_oo*||x||_oo+||b||_oo)*N)=        0.0039566 ...... PASSED
================================================================================
...
"Fußzeile"
...

Edit: die Werte für N, NB, P und Q sind in jeder Datei konstant. Diese könnten also manuell eingetragen werden. Es geht eigentlich nur um Time und Gflops. Und die befinden sich ja immer an der gleichen Stelle: alle sechs Zeilen, an Position 53 und 72.

Um die Ergebnisse besser aufbereiten zu können, würde ich sie gerne in eine Excel-Tabelle übernehmen. Bei mehreren 100 bis 1000 Ergebnissen pro Datei ist manuelles kopieren leider keine Option. Am Ende hätte ich gerne solch eine Tabelle:

Code:
  A      B    C   D     E          F
85000   256   2   2   55.01   7.443e+03
85000   256   2   2   54.62   7.495e+03


Edit2:
konnte mein Problem lösen. Diese Batch erzeugt eine neue Textdatei, nur mit den relevanten Daten. Alles zu Excel kopieren, Funktion "Text in Spalten", Leertaste als Trennzeichen, mehrere Trennzeichen als ein Trennzeichen. Fertig.

Code:
    @echo off & setlocal
    for %%i in (test.txt) do (
    set cnt=0
    set out=%%~dpni
    for /F "delims=" %%j in ('type "%%i"') do (
    call :EXT %%j
    )
    )
    goto :EOF
     
    :EXT
    set pass=6
    set /A cnt+=1
    if %cnt% neq %pass% goto :EOF
    set cnt=1
    echo.%*>> "%out%-new.txt"
    goto :EOF
    :: End_Of_Batch

Die Batch kommt von hier:
https://www.computerbase.de/forum/threads/jede-nte-zeile-aus-txtdatei-kopieren-und-in-andere-txtdatei-schreiben.1262694/
 
Zuletzt bearbeitet:
Hol dir eine OriginLab Testversion und benutz da den Importassistenten. Gibt genug Tutorials wie man da sowas macht. OriginLab ist ein Tabellenkalkulationsprogramm ähnlich wie Excel aber mit ein paar mehr Optionen gerade beim Import und bei der Stapelverarbeitung von Dateien. Kann allerdings sein, dass du die .out-Files erst in .txt-Files konvertieren bzw. umbennen musst. Müsstest du mal ausprobieren, obs auch ohne geht

Bzw. guck dir hier die Anleitung an: https://www.originlab.com/doc/Origin-Help/ImpASC-Options#Partial_Import


Und dann bei Partitial Import --> Partial Rows gibst du diese Werte ein:
From Row: 53
To: 72
Skip: 18
Read: 1

Dann importiert er nur Zeile 53 und Zeile 72
Wenn du dann noch auf der ersten Seite des Import Wizards ganz unten bei Import Mode 'Start New Rows' auswählst, läd er alles gleich in eine Tabelle

Habe keine Ahnung, ob und wie das ganze bei Excel geht. Nutze eigentlich nur noch Origin. Im Anschluss an den Import kannst du aber auch alle Daten per Strg + C in eine Excel Tabelle kopieren

Liebe Grüße
 
Zurück
Oben