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

Datei Speichern und Ersetzen

Forumthread: Datei Speichern und Ersetzen

Datei Speichern und Ersetzen
06.02.2007 12:12:58
Anja
Hallo zusammen,
ich speichere mit einem Makro die einzelnen Tabellenblätter einer xls-Datei als Textdateien. Da diese häufiger aktualisiert werden und es viele Tabellenblätter sind, würde ich gern das Ersetzen der vorhandenen Dateien gleich durch das Makro bestätigen lassen.
Hat jemand eine Idee?
Vielen Dank.
Anja
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei Speichern und Ersetzen
06.02.2007 18:42:52
Da
Kleine Anregung:

Sub Speichern_unter()
Const PFAD As String = "C:\Eigene Dateien\" 'anpassen
Dim DName As String
DName = Sheets("Tabelle1").[a1].Text
If Dir(PFAD & DName) <> "" Then Kill PFAD & DName
ActiveWorkbook.SaveAs PFAD & DName & ".xls"
End Sub

Anzeige
AW: Datei Speichern und Ersetzen
08.02.2007 13:25:00
Anja
Leider funktioniert das bei mir nicht. Es war doch nur der Pfad anzupassen.
Es erscheint immer Laufzeitfehler 424 - Objekt erforderlich.
Dabei wird "DName = Sheets("Tabelle1").[a1].Text" markiert.
AW: Datei Speichern und Ersetzen
08.02.2007 17:25:05
Kurt
Hi,
dann gibt es kein Tabellenblatt, das Tabelle1 heißt.
mfg Kurt
AW: Datei Speichern und Ersetzen
09.02.2007 10:30:19
Anja
Aber dieses Blatt existiert. Hab es an mehreren Tabellen ausprobiert.
Anzeige
AW: Datei Speichern und Ersetzen
09.02.2007 11:31:12
Anja
Hab nun eine andere Variante eingebaut:
Application.DisplayAlerts = False
;
Anzeige

Infobox / Tutorial

Datei Speichern und Ersetzen in Excel automatisieren


Schritt-für-Schritt-Anleitung

Um eine Excel-Datei mithilfe eines Makros zu speichern und vorhandene Dateien zu ersetzen, kannst Du folgendes VBA-Skript verwenden. Achte darauf, den Pfad und den Tabellennamen anzupassen.

Sub Speichern_unter()
    Const PFAD As String = "C:\Eigene Dateien\" 'anpassen
    Dim DName As String
    DName = Sheets("Tabelle1").[A1].Text 'Hier den Namen der Tabelle anpassen
    If Dir(PFAD & DName) <> "" Then Kill PFAD & DName 'Vorhandene Datei löschen
    ActiveWorkbook.SaveAs PFAD & DName & ".xls" 'Datei speichern
End Sub
  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Wähle im Menü EinfügenModul, um ein neues Modul zu erstellen.
  3. Kopiere den obigen Code in das Modul.
  4. Passe den Pfad und den Tabellennamen an.
  5. Schließe den Editor und führe das Makro aus.

Häufige Fehler und Lösungen

  • Laufzeitfehler 424 - Objekt erforderlich: Dieser Fehler tritt auf, wenn das angegebene Tabellenblatt nicht existiert. Überprüfe den Namen des Tabellenblatts in Deinem Excel-Dokument.

  • Fehlender Pfad: Stelle sicher, dass der angegebene Pfad korrekt ist. Wenn der Pfad nicht existiert, wird das Makro nicht funktionieren.


Alternative Methoden

Wenn das Speichern und Ersetzen über VBA nicht Deinen Anforderungen entspricht, kannst Du auch die Excel-Funktion Speichern unter manuell verwenden. Dies ist jedoch weniger automatisiert und erfordert mehr Benutzereingaben.

  1. Klicke auf DateiSpeichern unter.
  2. Wähle den Speicherort und den Dateinamen aus.
  3. Bestätige das Ersetzen der Datei, wenn Du dazu aufgefordert wirst.

Praktische Beispiele

Hier ist ein Beispiel für eine praktische Anwendung des Makros. Angenommen, Du hast mehrere Tabellenblätter, die regelmäßig aktualisiert werden. Du kannst für jedes Tabellenblatt ein Makro erstellen, das den Namen des Blattes in der Zelle A1 verwendet, um die Dateien entsprechend zu speichern und zu ersetzen.

Sub Speichern_alle_Tabellen()
    Dim ws As Worksheet
    For Each ws In ThisWorkbook.Worksheets
        Const PFAD As String = "C:\Eigene Dateien\" 'anpassen
        Dim DName As String
        DName = ws.[A1].Text 'Hier den Namen der Zelle anpassen
        If Dir(PFAD & DName) <> "" Then Kill PFAD & DName
        ws.SaveAs PFAD & DName & ".xls"
    Next ws
End Sub

Tipps für Profis

  • Backup erstellen: Bevor Du das Makro ausführst, erstelle ein Backup Deiner Dateien, um Datenverlust zu vermeiden.
  • Fehlerbehandlung einbauen: Füge Fehlerbehandlungsroutinen in Dein Makro ein, um unerwartete Probleme zu lösen, ohne das gesamte Skript zu stoppen.
  • Testen in einer separaten Datei: Teste Dein Makro zunächst in einer separaten Excel-Datei, um sicherzustellen, dass alles funktioniert, bevor Du es auf wichtige Daten anwendest.

FAQ: Häufige Fragen

1. Warum funktioniert mein Makro nicht?
Überprüfe, ob der Pfad und der Tabellenblattname korrekt angegeben sind. Achte auch darauf, dass Du die erforderlichen Berechtigungen für den Speicherort hast.

2. Wie kann ich das Makro schneller ausführen?
Du kannst eine Schaltfläche in Excel erstellen, die das Makro ausführt, oder eine Tastenkombination festlegen, um den Prozess zu beschleunigen.

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