Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Dateien in anderen Ordner speichern

Dateien in anderen Ordner speichern
09.05.2006 11:04:18
Matthias
Hallo,
ich habe das Problem, dass ich aus einem Ordner + Unterordnern bestimmte Exceltabellen (Dateiname "ABC_*.xls") mit einem Makro auswerten möchte. Das klappt auch prinzipiell. Mein Problem ist nur, dass zur gleichen Zeit Anwender noch die eine oder andere Datei gerade in Bearbeitung haben. Deshalb möchte ich zunächst alle Excel-Dateien, die der Namenskonvention entsprechen, in einen lokalen Ordner zwischenspeichern, um dann "in aller Ruhe" mein Makro darauf loslassen zu können.
Wie kann man die Excel-Dateien in einen anderen Ordner zwischenspeichern? Es sind mehrere Tausend und ich möchte sie natürlich nicht immer erst öffnen.
Vielen Dank im voraus sagt
Matthias
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dateien in anderen Ordner speichern
09.05.2006 11:39:15
IngGi
Hallo Matthias,
folgendes Makro kopiert den Ordner "C:\Temp" mit allen enthaltenen Dateien nach "E:\Temp". Der Zielordner darf nicht bereits existieren, sonst gibt's 'ne Fehlermeldung.

Sub Ordner_kopieren()
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
fso.copyfolder "C:\Temp", "E:\Temp", False
End Sub
Gruß Ingolf
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Excel-Dateien in anderen Ordner speichern


Schritt-für-Schritt-Anleitung

Um Excel-Dateien in einen anderen Ordner zu speichern, kannst du ein VBA-Makro verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke im Menü auf "Einfügen" und wähle "Modul" aus.

  3. Kopiere den folgenden VBA-Code in das Modul:

    Sub Ordner_kopieren()
       Dim fso As Object
       Set fso = CreateObject("Scripting.FileSystemObject")
       fso.copyfolder "C:\Temp", "E:\Temp", False
    End Sub
  4. Passe die Pfade "C:\Temp" und "E:\Temp" entsprechend an, um deine Quell- und Zielordner festzulegen.

  5. Schließe den VBA-Editor und kehre zu Excel zurück.

  6. Führe das Makro aus, indem du ALT + F8 drückst, das Makro auswählst und auf "Ausführen" klickst.

Damit werden alle Dateien aus dem Quellordner in den Zielordner kopiert.


Häufige Fehler und Lösungen

  • Fehlermeldung: Zielordner existiert bereits

    • Lösung: Stelle sicher, dass der Zielordner nicht bereits existiert. Du kannst den Ordner manuell löschen oder einen anderen Zielpfad wählen.
  • Keine Berechtigung zum Kopieren

    • Lösung: Überprüfe die Berechtigungen für die Ordner. Stelle sicher, dass du die erforderlichen Rechte hast, um auf die Ordner zuzugreifen und sie zu bearbeiten.

Alternative Methoden

Falls du kein VBA verwenden möchtest, kannst du auch die Windows-Eingabeaufforderung nutzen, um Dateien zu kopieren:

  1. Öffne die Eingabeaufforderung (cmd).
  2. Verwende den Befehl:

    xcopy "C:\Temp\*.*" "E:\Temp" /s /i

Dieser Befehl kopiert alle Dateien aus dem Quellordner in den Zielordner, einschließlich Unterordner.


Praktische Beispiele

Wenn du alle Excel-Dateien, die mit "ABC_" beginnen, in einen anderen Ordner speichern möchtest, kannst du den VBA-Code wie folgt anpassen:

Sub Excel_Dateien_kopieren()
    Dim fso As Object
    Dim folder As String
    Dim targetFolder As String
    Dim file As Object
    Dim sourceFolder As Object
    Dim fsoFile As Object

    folder = "C:\Temp"
    targetFolder = "E:\Temp"

    Set fso = CreateObject("Scripting.FileSystemObject")
    Set sourceFolder = fso.GetFolder(folder)

    For Each file In sourceFolder.Files
        If InStr(file.Name, "ABC_") = 1 Then
            fsoFile.Copy file.Path, targetFolder & "\" & file.Name
        End If
    Next file
End Sub

Dieser Code kopiert nur die Excel-Dateien, die mit "ABC_" beginnen.


Tipps für Profis

  • Batch-Kopieren: Wenn du mehrere Quellordner hast, kannst du eine Schleife verwenden, um die Ordner nacheinander zu durchlaufen.
  • Fehlerprotokollierung: Implementiere eine Fehlerprotokollierung in deinem Makro, um potenzielle Probleme zu identifizieren.
  • Automatisierung: Überlege, das Makro automatisch zu bestimmten Zeiten auszuführen, um den Prozess zu optimieren.

FAQ: Häufige Fragen

1. Kann ich das Makro in allen Excel-Versionen verwenden?
Ja, das Makro funktioniert in den meisten modernen Excel-Versionen, die VBA unterstützen.

2. Was passiert, wenn der Zielordner voll ist?
Wenn der Zielordner keinen Platz mehr hat, wirst du eine Fehlermeldung erhalten. Überprüfe den verfügbaren Speicherplatz und stelle sicher, dass genügend Platz vorhanden ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige