Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Dateien öffnen bearbeiten und speichern per Makro

Dateien öffnen bearbeiten und speichern per Makro
ralle
Hallo zusammen!
Habe folgende Frage.
Habe mehrere txt-Dateien, die ich nacheinander mit Excel aufrufe und per Makro bearbeite und dann als xls-Datei abspeichere.
Ist es auch möglich alle txt-Dateien in einem betimmten Verzeichnis nacheinander aufzurufen, das Makro ablaufen zu lassen und dann in xls Format abzuspeichern ?
Also folgendes soll pasieren:
Ich habe mehrere Makros erstellt, die eine txt-Datei öffnen und diese dann formatiert.
Nun möchte ich das ein Makro vorschalten, dass alle txt-Dateien nacheinander aus dem bestimmten Verzeichnis (das immer daselbe ist) öffnet mein Makro zur Formatierung abspielt und diese geänderte Datei dann in ein anderes Verzeichnis (was auch immer dasselbe ist) als xls-Datei abspeichert.
Vielen Dank für Eure Hilfe !!
Gruß
ralle
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Dateien öffnen bearbeiten und speichern per Makro
Ramses
Hallo
als Ansatz mal folgendes

Sub Dateien_in_eine_Tabelle_zusammenfuehren()
Dim Datei As String
Dim Arbeitsmappe As String
Dim PFAD As String
PFAD = "d:\workarea\"
Datei = Dir(PFAD & "*.xls")
Application.ScreenUpdating = False
Arbeitsmappe = ActiveWorkbook.Name
Do While Datei > ""
Dein bisheriges Makro zum formatieren kommt hierher
'Schliessen ohne die Datei zu speichern
ActiveWorkbook.Close False
Datei = Dir()
Loop
Application.ScreenUpdating = True
End Sub

Gruss Rainer
Anzeige
AW: Dateien öffnen bearbeiten und speichern per Makro
ralle
Hallo Rainer,
vielen Dank für Deine Hilfe, werde es mal ausprobieren. Wie muss ich das Makro verändern, wenn die Formatierte Datei in einem anderen Verzeichnis gespeichert werden soll ?
Ist Deine Lösung nur zumöffnen von XLS-Dateien oder auch für TXT-Dateien ?
Gruß
Ralle
AW: Dateien öffnen bearbeiten und speichern per Makro
Ramses
Hallo
du must nur "xls" entfernen und stattdessen "txt" einsetzen.
Starte den Makrorekorder, speichere eine Datei und schau dir an was du aufgezeichnet hast.
Du siehst in dem Beispiel oben wie man einen Pfad definieren kann als Variable,... damit solltest du dein Problem lösen können.
Gruss Rainer
Anzeige
AW: Dateien öffnen bearbeiten und speichern per Makro
23.03.2004 08:41:26
ralle
... ich glaube das Problem ist auch das ich mehrere Makros zum Formatieren habe, die alle hintereinander weg laufen per Call Befehl. Wie baue ich diese Makros ich diese Makros mit ein ?
Gruß
ralle
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Dateien öffnen, bearbeiten und speichern per Makro in Excel


Schritt-für-Schritt-Anleitung

  1. Makro erstellen: Öffne Excel und gehe zu „Entwicklertools“ > „Visual Basic“. Klicke auf „Einfügen“ und wähle „Modul“, um ein neues Modul zu erstellen.

  2. VBA-Code einfügen: Kopiere den folgenden VBA-Code in das Modul:

    Sub Dateien_in_eine_Tabelle_zusammenfuehren()
        Dim Datei As String
        Dim PFAD As String
        PFAD = "d:\workarea\"
        Datei = Dir(PFAD & "*.txt") ' Hier txt-Dateien öffnen
        Application.ScreenUpdating = False
    
        Do While Datei <> ""
            Workbooks.Open PFAD & Datei ' txt-Datei öffnen
            ' Hier dein Formatierungs-Makro aufrufen, z.B. Call MeinMakro
    
            ' Speichern als xls
            ActiveWorkbook.SaveAs Filename:="d:\output\" & Replace(Datei, ".txt", ".xls"), FileFormat:=xlWorkbookNormal ' Speichern als xls-Datei
            ActiveWorkbook.Close False
            Datei = Dir()
        Loop
    
        Application.ScreenUpdating = True
    End Sub
  3. Makro anpassen: Ändere den PFAD zu dem Verzeichnis, in dem deine .txt-Dateien gespeichert sind. Achte darauf, den Speichervorgang für die xls-Datei entsprechend anzupassen.

  4. Makro ausführen: Gehe zurück zu Excel, drücke ALT + F8, wähle dein Makro aus und klicke auf „Ausführen“.


Häufige Fehler und Lösungen

  • Fehler: Dateiformat nicht unterstützt
    Lösung: Stelle sicher, dass du die richtige Dateiart öffnest. Wenn du .txt-Dateien bearbeitest, achte darauf, dass du den Code entsprechend anpasst.

  • Fehler: Pfad nicht gefunden
    Lösung: Überprüfe den angegebenen Pfad und stelle sicher, dass er korrekt ist und die Dateien vorhanden sind.

  • Fehler: Makro läuft nicht
    Lösung: Stelle sicher, dass die Makros in Excel aktiviert sind. Gehe zu „Datei“ > „Optionen“ > „Trust Center“ > „Einstellungen für das Trust Center“ und aktiviere die Makros.


Alternative Methoden

  • Power Query: Du kannst auch Power Query verwenden, um mehrere .txt-Dateien zu importieren und zu transformieren. Dies ist besonders nützlich, wenn du Daten aus verschiedenen Dateien zusammenführen möchtest.

  • Batch-Dateien: Ein einfaches Batch-Skript könnte ebenfalls verwendet werden, um die .txt-Dateien in Excel zu öffnen. Dies erfordert jedoch etwas mehr Programmierkenntnisse.


Praktische Beispiele

  • Beispiel 1: Wenn du mehrere .txt-Dateien hast, die in einem Ordner gespeichert sind und du sie in ein Excel-Dokument importieren möchtest, kannst du das oben genannte Makro verwenden.

  • Beispiel 2: Solltest du unterschiedliche Formatierungen für verschiedene .txt-Dateien benötigen, kannst du separate Makros erstellen und diese im Hauptmakro mit Call aufrufen.


Tipps für Profis

  • Makros speichern: Speichere deine Makros in einer personalisierten Excel-Vorlage, damit du sie leicht für alle neuen Excel-Dateien verwenden kannst.

  • Fehlerbehandlung: Implementiere Fehlerbehandlungsroutinen in deinem Makro, um unerwartete Fehler besser zu managen. Beispiel:

    On Error GoTo Fehlerbehandlung
    ' Dein Makro-Code hier
    Exit Sub
    
    Fehlerbehandlung:
    MsgBox "Ein Fehler ist aufgetreten: " & Err.Description
  • Automatisierung: Überlege, wie du dein Makro so gestalten kannst, dass es auch regelmäßig automatisch ausgeführt wird, z.B. über den Task Scheduler von Windows.


FAQ: Häufige Fragen

1. Kann ich das Makro auch für .xls-Dateien verwenden?
Ja, du kannst das Makro anpassen, um auch .xls-Dateien zu öffnen und zu bearbeiten. Ändere einfach die Dateiendung im Code.

2. Wie kann ich mehrere Makros hintereinander ausführen?
Du kannst mehrere Makros mit dem Call-Befehl hintereinander aufrufen. Stelle sicher, dass die Makros korrekt benannt und in der richtigen Reihenfolge aufgerufen werden.

3. Was, wenn ich die Dateien nicht im .xls-Format speichern möchte?
Du kannst das FileFormat-Argument in der SaveAs-Methode anpassen, um die Datei in einem anderen Format zu speichern, z.B. .xlsx.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige