Microsoft Excel

Herbers Excel/VBA-Archiv

Mehrere txt Dateien einlesen in ein Programm


Betrifft: Mehrere txt Dateien einlesen in ein Programm von: Carina
Geschrieben am: 11.09.2019 15:00:59

Hallo,

ich schon wieder, ich hab grad keine Ahnung ob es auch hierher passt aber vllt weis ja wer eine Antwort und ich würde das Problem gerne mit einem VBA beheben.

Also ich habe ein Program (in Fortran geschrieben) in welches ich hintereinander ca. 200 Dateien einlesen muss. Also es funktioniert im grunde so alle Dateien plus dieses "Program" müssen in einem Ordner liegen. Im ersten Schritt öffnet man das Program, dann muss man enter drücken danach fragt es nach dem ersten text file dann nach dem zweiten und am schluss bekommt man eine datei im selben ordner die gravel_result heißt. Da ich nicht 200 mal das ganze machen möcht und am Schluss auch noch die Datein umbennen wollt ich fragen ob ich diesem Forum richtig bin oder nicht und ob es dafür ein VBA gibt?

Versteht ihr was ich mein?

Besten Dank bereits und sry für die dumme Frage.

Lg,
Carina

PS: Falls ja würde ich euch meine Daten hochladen.

  

Betrifft: AW: Mehrere txt Dateien einlesen in ein Programm von: 1712480.html
Geschrieben am: 11.09.2019 15:16:18

Moin Carina,
es könnte sein, dass du mit Power Query besser zum Ziel kommst. Aber das lässt sich besser beantworten, wenn 2-3 Muster-*.txt vorliegen (eventuell als *.zip packen und dann hochladen).

Gruß
Günther

  

Betrifft: AW: Mehrere txt Dateien einlesen in ein Programm von: 1712492.html
Geschrieben am: 11.09.2019 16:05:26

Hallo,

Also ich habe hier mal versucht ein paar Daten vorzubereiten und hochzuladen.

Nach öffnen des Programms gehört beim Buchstaben a hinein.
1.Schritt schear_velocity
2.Schritt Datei mit Nummer
3.Schritt gibt gravel_result aus (am besten mit Steinnummer im Dateinamen)

Gravel-Program
https://www.herber.de/bbs/user/131988.zip

Datei (immer ein Paket)
https://www.herber.de/bbs/user/131989.zip
https://www.herber.de/bbs/user/131990.zip
https://www.herber.de/bbs/user/131991.zip

Im Grund müsste ich die Abfolge wie oben beschrieben drei mal ausführen ich hätte aber gerne ein vba wo ich alle gravel_result pro Stein einzeln bekomm.

Ich hoffe ihr könnt damit was anfangen sonst einfach noch mal nachfragen.

Besten Dank.

Lg,
Carina

  

Betrifft: AW: Mehrere txt Dateien einlesen in ein Programm von: 1712502.html
Geschrieben am: 11.09.2019 16:26:30

Also Carina,
was das Einlesen der Daten anbetrifft: An sich mit Power Query kein Thema, aber deine Beschreibung ist so spezifisch (nur für Insider verständlich), dass ich mir das nicht im Rahmen der Foren-Hilfe antun muss.

Gruß
Günther

  

Betrifft: AW: Mehrere txt Dateien einlesen in ein Programm von: 1712580.html
Geschrieben am: 12.09.2019 08:03:06

Hallo Günter,

ich habe leider von Power Query noch weniger Plan wie von VBA, aber trotzdem Danke.

Ich glaub, wenn man eine Ahnung hat dann sollte das Ganze nicht so schwer sein.
Es gibt doch bestimmt Menschen die schon mal ein Programm (in diesem Fall Gravel) mit mehreren Dateien hintereinander gefüllt haben.

Hast du ca. verstanden was ich benötigen würde?

Liebe Grüße und danke für dein Bemühen.

Carina

  

Betrifft: AW: Mehrere txt Dateien einlesen in ein Programm von: 1712528.html
Geschrieben am: 11.09.2019 18:13:57

Damit kannst du alle Dateien im Ordner auslesen,
https://www.makro-excel.de/2017/01/31/dateinamen-eines-verzeichnisses-mit-vba-auslesen-und-in-excel-schreiben/

die du dann in einer Schleife abarbeiten und auslesen kannst:

    With ActiveSheet.QueryTables.Add(Connection:= _
           "TEXT;C:\bla\blub\20190911_shearvelocity_7247_2018-07-05.txt", Destination:= _
           Range("$A$1"))
           .Name = "20190911_shearvelocity_7247_2018-07-05"
           .FieldNames = True
           .RowNumbers = False
           .FillAdjacentFormulas = False
           .PreserveFormatting = True
           .RefreshOnFileOpen = False
           .RefreshStyle = xlInsertDeleteCells
           .SavePassword = False
           .SaveData = True
           .AdjustColumnWidth = True
           .RefreshPeriod = 0
           .TextFilePromptOnRefresh = False
           .TextFilePlatform = 850
           .TextFileStartRow = 1
           .TextFileParseType = xlDelimited
           .TextFileTextQualifier = xlTextQualifierDoubleQuote
           .TextFileConsecutiveDelimiter = False
           .TextFileTabDelimiter = True
           .TextFileSemicolonDelimiter = False
           .TextFileCommaDelimiter = False
           .TextFileSpaceDelimiter = False
           .TextFileColumnDataTypes = Array(1, 1)
           .TextFileTrailingMinusNumbers = True
           .Refresh BackgroundQuery:=False
       End With
   
Musst du halt noch anpassen an Dateinamen, Pfade usw. Probier etwas rum mit der Makro-Aufzeichnung. Obiger Code ist das, was passiert unter dem Menüpunkt: Daten > Externe Daten abrufen > Aus Text
  

Betrifft: AW: Mehrere txt Dateien einlesen in ein Programm von: 1712579.html
Geschrieben am: 12.09.2019 07:57:30

Hallo Klexy,

ich glaube der von die beschrieben Code ist wenn man mehrere Dateien in ein Excel reinladen möchte aber ich möchte ja meherere text Dateien hintereinander in ein weiteres Program (gravel) reinladen.

Trotzdem vielen Dank für dein Bemühen.

Lg,

Carina

  

Betrifft: AW: Mehrere txt Dateien einlesen in ein Programm von: 1712582.html
Geschrieben am: 12.09.2019 08:32:57

Keine Ahnung was Gravel ist und hier ist auch nicht das Fortran-Forum.
Du hattest dich doch über 100 nötige Klicks beschwert. Ich habe dir einen Weg aufgezeigt, das auf 1 Klick zu reduzieren. Diese EINE Datei dann in dein Gravel zu kriegen, ist dann ein weiterer Klick, oder?

  

Betrifft: AW: Mehrere txt Dateien einlesen in ein Programm von: 1712584.html
Geschrieben am: 12.09.2019 08:41:13

Hallo Klexy,

Danke für deine rasche Antwort.

also ich wollte eigentlich wissen ob es mit einem VBA möglich ist ein schleife zu machen in der man text dateien in ein programm reinlädt und das in einer schleife.
also zuerst buchstabe, text 1a, text 1b, buchstabe und dass in einer schleife.
oder vllt anders ausgedrückt ob es möglich ist ein programm (welches nicht excel ist oder ähnliches) mit daten zu füttern

es ist nicht möglich die textdateien vorher zusammenzufügen, diese müssen einzeln eingeladen werden.

also ich brauche eigentlich keine hilfe mit gravel oder fortran sondern mit vba ;)

Lg,
Carina

Beiträge aus dem Excel-Forum zum Thema "Mehrere txt Dateien einlesen in ein Programm"