Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1964to1968
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
Inhaltsverzeichnis

Import txt mit Datum & Schleife

Import txt mit Datum & Schleife
12.02.2024 14:29:21
Michael
Hallo zusammen,
ich bin auf der Suche nach einem einfachen Excel VBA Code, der mir aus einem Verzeichnis (bspw. G:) eine .txt-Datei mit Datum öffnet und in Tabelle1 Zelle A1 einfügt (danach wieder schließt).
Anschließend werden mehrere Berechnungen durchgeführt; wenn diese beendet sind, soll die nächste Datei mit Datum geöffnet (es gibt ca. 4 Stichtage im Monat) und die gleiche Prozedur durchlaufen werden. Ggfls. ist es möglich mit bspw. T+7 zu arbeiten, sprich man schaut ob zu Beginn der 1./2./3. Tag eines Monats vorhanden ist, wenn ja soll bei der 2. Prozedur der 8./9. oder 10. Tag eines Monats ausgewählt werden und so weiter. Ist das möglich? Vielen Dank im Voraus für eure Hilfe & Unterstützung. Viele Grüße, Micha

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Import txt mit Datum & Schleife
12.02.2024 15:27:00
Yal
Hallo Michael,

ohne VBA.

gehe im Menü "Daten", "Daten abrufen", "aus Datei", "Aus Ordner", füge den Pfad deines Quellverzeichnis ein, dann "Daten transformieren",
sortiere die Liste, um die aktuellste Datei oben zu haben,
filtere die Dateiname nach dem Namensmuster,
im Menü "Start", "Zeilen behalten", "erste Zeilen behalten", nur die erste ("1").
Dann auf die 2 Pfleilen der Spalte "Content" klicken.

Anschliessend mit "Spalten hinzufügen", "Benutzerdefinierte Spalten" eigene Formeln reinbasteln,
Menü "Datei", "Schliessen & laden". Es baut sich eine Ergebnistabelle.

Jede Monat diese Datei öffnen (oder eine Kopie davon), auf die Ergebnistabelle rechtsklicken und "Aktualisieren".

VG
Yal

Anzeige
AW: Import txt mit Datum & Schleife
12.02.2024 15:47:54
Michael
Hallo Yal,
vielen Dank für die Rückmeldung, das ist aktuell schon der Fall. Da im Nachgang aber mehrere Berechnungsschritte mit Schleifen durchlaufen werden wollte ich das den Dateiimport zu mehreren Stichtagen im Monat eben automatisieren. D.h. einen Code gibt es hierfür nicht oder? Man muss jedes Mal die Datei von Neuem öffnen und reinladen?
VG Micha
AW: Import txt mit Datum & Schleife
12.02.2024 15:51:06
schauan
Hallöchen,

Du öffnest die Exceldatei und ziehst die Daten - die Textdateien musst Du nicht gesondert öffnen ...
AW: Import txt mit Datum & Schleife
12.02.2024 16:18:00
Michael
Hallo schauan,
ich möchte aus einem Pfad per Makro die .txt-Datei in Zelle A1 des Tabellenblatts "Tabelle1" importieren, ohne über "Aktualisieren" zu gehen, sondern per Makro, geht das und wenn ja wie? Im Anschluss danach folgen wie gesagt Berechnungsschritte, die ich bereits programmiert habe. Wenn die Berechnung durchgeführt wird, soll sozusagen die nächste Stichtagsdatei mit T+7 geöffnet werden und dann den Berechnungsprozess durchlaufen in einer Schleife. Ich möchte hier nicht manuell tätig werden, das ist aktuell bereits der status quo. Vielen Dank fürs Verständnis & Hilfe/Unterstützung bei der Lösung
Anzeige
AW: Import txt mit Datum & Schleife
12.02.2024 16:50:54
Yal
Hallo Michael,

mit dem Makro-Rekorder (MR) kannst Du durchaus das Öffnen einer Textdatei aufnehmen und nacharbeiten. Ich würde es nicht anders machen, um dir den Code zur Verfügung zu stellen, weil alles was der MR kann, merke ich mir nicht. Aber es macht hier kein Sinn, dass ich Dir diese Übung wegnehme.

"in Schleifen" ist für Programmierer ein fester Begriff (For..Next), der einem auf den falschen Gleis bringt. Wenn Du meinst, dass eine Verarbeitung am 3.AT, 4. AT, usw. (Zahlen bitte selber gedanklich anpassen) immer wieder stattfinden sollen, dann ist es meistens Handarbeit. Es sei denn, Du hast einen Rechner, bei dem das Makro (inkl. Datei) die ganze Zeit läuft.

Wenn die Datei das Ende der Verabeitungskette ist, macht es keinen Sinn am 3.AT Daten zu verarbeiten, die erst am 5.AT angeschaut werden, da dazwischen Verarbeitung am 4. und 5 AT stattgefunden haben, und die Verarbeitung am 3.AT überschrieben haben. Was haben die Zwischenstände als Besonderheit? Wie werden diese Zwischenstände gespeichert?
Alles in einem scheint mir der Verarbeitungsprozess nicht ganz stabil, zumindest anhand was uns erkärt wurde, aber eine nicht schlüssige Erklärung ist ein Zeichen von Mangel an Übersicht. Nicht als Tadel gemeint, sondern als Anstupser ;-)

Das Rechtsklicken auf Aktualisieren kann man auch per VBA aktualisieren. Braucht man aber nicht. Du musst nur die Abfrage so einstellen, dass diese sich automatisch aktualisiert, jedesmal die Datei geöffnet wird.

Dass Du bereits vieles mit VBA umgesetzt hast, ist noch keine Beweis, dass es sinnvoll ist, wie VBA weiterzumachen. Beschäftige dich mit Power Query. Es wird dich weiter, schneller und stabiler zum Ergebnis bringen als VBA.

VG
Yal
Anzeige
AW: Import txt mit Datum & Schleife
12.02.2024 17:01:58
Michael
Hi Yal,
ich habe schon den Makro Recorder versucht, da wird aber nicht angezeigt außer "Range("A1").Select", obwohl ich in Tabelle 1 Zelle A1 folgende Schritte durchführe:
* selektieren Zelle A1
* Rechtsklick --> aktualisieren
* Auswahl Textdatei aus Zielpfad
* Importieren
Daher die Frage zu dem Code weil ich hier nicht weiterkomme und PowerQuery kommt hier nicht infrage weil immer wieder Daten auch gelöscht/ersetzt werden (in nachfolgenden Bearbeitungsschritten).
Ist irgendeine Library nicht aktiviert, dass ich den Code nicht sehe?
Ich stehe wirklich auf dem Schlauch, sonst würde ich nicht nachfragen.
Danke nochmals für die Rückmeldung!
Anzeige
AW: Import txt mit Datum & Schleife
12.02.2024 17:35:23
Yal
Hallo Michael,

tipp mal
Workbooks.OpenText
im VBA-Editor, positioniert den Cursor auf Opentext und drucke Strg+F1.

Application.FileDialog msoFileDialogFilePicker
könntest Du auch gebrauchen.

Kurz:
Sub test()

Dim wb As Workbook

With Application.FileDialog(msoFileDialogFilePicker)
If .Show > False Then Set wb = Workbooks.OpenText(.SelectedItems(1))
End With
Debug.Print wb.Path, wb.Name

End Sub

Eine Alternative wäre über Power Query die Quelle zu laden und anschliessend die Verbindung zu PQ-Abfrage zu trennen. Das lässt sich gut aufzeichnen.

VG
Yal
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige