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

Forumthread: Datei mit unterschiedlichen Namen kopieren

Datei mit unterschiedlichen Namen kopieren
20.12.2015 10:05:39
Uli
Hallo zusammen,
erbitte um Unterstützung zur folgenden Aufgabe:
Ich habe eine Datei (Muster.xls). Diese möchte ich so oft kopieren, wie es Werte in einer anderen Datei (Tabelle.xls) in Spalte A gibt. Der Dateiname ist gleich dem Wert. Zusätzlich soll der Wert noch in eine Zelle (z.B. A1) der neuen Tabelle geschrieben werden.
Wär toll, wenn jemand eine Lösung für mich hätte.
Gruß Uli

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei mit unterschiedlichen Namen kopieren
20.12.2015 11:34:34
Oberschlumpf
Hi Uli
hier, versuch mal:
https://www.herber.de/bbs/user/102374.zip
Wie du schon siehst, handelt sich mein Vorschlag um ein ZIP-Archiv.
Dieses Archiv enthält 3 Dateien, und zwar:
- Muster.xls
- Tabelle.xls
- Musterdatei so oft kopieren wie es Eintraege in Tabelle gibt.xlsm
Die ersten 2 Dateien sind eben "deine" Muster- und Tabelle.xls Dateien.
(ich hab sie erstellt, weil du keine Bsp-Dateien gezeigt hast)
Die Muster-Datei enthält einfach irgdwelche Daten. Zelle A1 ist in der Musterdatei leer.
Die Datei Tabelle.xls enthält in den Zellen A1:A5 diese Werte:
Eintrag1
Eintrag2
Eintrag3
Eintrag4
Eintrag5
Meine 3. Datei enthält den VBA-Code, mit dem dein Problem so gelösat wird, wie du es beshcrieben hattest.
Wichtig ist aber...
...dass du vorm Ausprobieren zuerst alle 3 Dateien ins selbe Verzeichnis abspeicherst
(es darf keine der Dateien direkt aus dem ZIP-Archiv geöffnet werden)
...dass du die 2 Hinweise im Code beachtest
...dass keine andere Excel-Datei geöffnet sein sollte
(ich habe im Code keine Sicherheitskontrollen eingebaut, die überprüfen, ob z Bsp deine Muster- und/oder Tabelle.xls Datei schon geöffnet ist)

Ich hab das alles fett formatiert, weil es wirklich wichtig ist, dass du all das beachtest.
So, nun gehts los :-)
1. Öffne meine Makro-Datei + aktiviere die Makros, wenn danach gefragt wird
2. Klick auf den Start-Button
...nach wenigen Sekunden ist alles fertig :-)
Was macht mein Code?
- es wird die Datei Tabelle.xls geöffnet, die ja in Spalte A Einträge enthält, unter deren Namen du Kopien der Datei Muster.xls speichern willst
- es wird eine Schleife gestartet, die in Zeile 1 beginnt und in der letzten, benutzten Zeile in Spalte A endet
- die Datei Muster.xls wird als Kopie mit dem Namen des ersten, gefundenen Eintrages gespeichert, also in diesem Fall als Eintrag1.xls.
Die Dateien werden immer im gleichen Verzeichnis gespeichert, in dem sich meine 3 Dateien befinden.
- die Kopiedatei, hier Eintrag1.xls wird geöffnet, und in Zelle A1 wird der Dateiname eingefügt.
Die Datei wird gespeichert + wieder geschlossen
- ab jetzt wiederholt sich alles.
Als nächstes wird eine Kopie unter dem Namen Eintrag2.xls gespeichert. Auch wieder mit dem Wert "Eintrag2" in Zelle A1.
Dann kommt Eintrag3, Eintrag4, usw...
Hilfts?
Wenn nicht, zeig uns Bsp-Dateien von deiner Muster.xls und Tabelle.xls.
Ciao
Thorsten

Anzeige
AW: Datei mit unterschiedlichen Namen kopieren
20.12.2015 20:53:33
Uli
Hallo Thorsten,
konnte es jetzt gerade erst ausprobieren.
Läuft! vielen, vielen Dank
Schöne Weihnachten.
MFG Uli

AW: Datei mit unterschiedlichen Namen kopieren
20.12.2015 20:55:38
Uli
Hallo Thorsten,
konnte es jetzt gerade erst ausprobieren.
Läuft! vielen, vielen Dank
Schönes Weihnachten!
MFG Uli
;

Forumthreads zu verwandten Themen

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 mit unterschiedlichen Namen kopieren in Excel


Schritt-für-Schritt-Anleitung

Um mehrere Dateinamen in Excel zu kopieren und als neue Dateien zu speichern, kannst du den folgenden VBA-Code verwenden. Dieser Code ermöglicht es dir, die Datei Muster.xls mehrfach zu kopieren, basierend auf den Werten in der Datei Tabelle.xls.

  1. Vorbereitung

    • Speichere die Dateien Muster.xls und Tabelle.xls im gleichen Verzeichnis.
    • Stelle sicher, dass keine andere Excel-Datei geöffnet ist.
  2. VBA-Editor öffnen

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
    • Wähle im Menü Einfügen die Option Modul, um ein neues Modul zu erstellen.
  3. Code einfügen

    • Kopiere den folgenden Code in das Modul:
    Sub KopiereDateien()
       Dim wbMuster As Workbook
       Dim wbTabelle As Workbook
       Dim wsTabelle As Worksheet
       Dim i As Integer
       Dim dateiname As String
    
       Set wbMuster = Workbooks.Open("Pfad\zu\deiner\Muster.xls")
       Set wbTabelle = Workbooks.Open("Pfad\zu\deiner\Tabelle.xls")
       Set wsTabelle = wbTabelle.Sheets(1)
    
       For i = 1 To wsTabelle.Cells(wsTabelle.Rows.Count, 1).End(xlUp).Row
           dateiname = wsTabelle.Cells(i, 1).Value
           wbMuster.SaveCopyAs "Pfad\zu\deinem\Ordner\" & dateiname & ".xls"
           Workbooks.Open "Pfad\zu\deinem\Ordner\" & dateiname & ".xls"
           ActiveWorkbook.Sheets(1).Cells(1, 1).Value = dateiname
           ActiveWorkbook.Close SaveChanges:=True
       Next i
    
       wbMuster.Close SaveChanges:=False
       wbTabelle.Close SaveChanges:=False
    End Sub
  4. Makro ausführen

    • Schließe den VBA-Editor und gehe zurück zu Excel.
    • Drücke ALT + F8, wähle KopiereDateien und klicke auf Ausführen.

Häufige Fehler und Lösungen

  • Fehler: "Datei nicht gefunden"

    • Stelle sicher, dass der Pfad zu den Dateien korrekt ist und dass die Dateien im angegebenen Verzeichnis vorhanden sind.
  • Fehler: "Makros sind deaktiviert"

    • Aktiviere die Makros, indem du in den Excel-Optionen unter "Trust Center" die entsprechenden Einstellungen anpasst.
  • Fehler: Keine Werte in Spalte A

    • Überprüfe, ob in der Tabelle.xls tatsächlich Werte in Spalte A vorhanden sind.

Alternative Methoden

Wenn du lieber keine Makros verwenden möchtest, kannst du auch die Funktion "Speichern unter" in Excel manuell nutzen. Dies ist jedoch weniger effizient, wenn du viele Dateien kopieren musst. Eine andere Möglichkeit ist die Verwendung von Power Query, um Daten aus einem Ordner zu importieren und anschließend zu bearbeiten.


Praktische Beispiele

  • Beispiel 1: Du hast eine Liste von Namen in Tabelle.xls: "Eintrag1", "Eintrag2", etc. Der VBA-Code erstellt Dateien mit diesen Namen und fügt den entsprechenden Namen in Zelle A1 ein.

  • Beispiel 2: Wenn du PDF-Dateinamen in Excel kopieren möchtest, kannst du eine ähnliche Technik anwenden, indem du die Dateinamen zuerst in eine Excel-Tabelle importierst und dann den oben genannten Code anpasst.


Tipps für Profis

  • Automatisierung: Du kannst den Code anpassen, um automatisch alle Dateien in einem bestimmten Verzeichnis zu verarbeiten, anstatt manuell die Namen einzugeben.

  • Fehlerbehandlung: Integriere Fehlerbehandlungen in deinen VBA-Code, um unerwartete Situationen besser zu handhaben.

  • Dokumentation: Kommentiere deinen Code, damit du später schneller verstehst, was jeder Abschnitt macht.


FAQ: Häufige Fragen

1. Wie kann ich mehrere Dateinamen kopieren und in Excel einfügen?
Du kannst den oben beschriebenen VBA-Code verwenden, um die Dateinamen aus Tabelle.xls in neue Dateien zu kopieren.

2. Welcher Programmbefehl speichert eine Kopie einer Datei unter einem anderen Namen?
Der Befehl SaveCopyAs im VBA-Code speichert eine Kopie der Datei unter dem gewünschten Namen.

3. Kann ich auch PDF-Dateinamen in Excel kopieren?
Ja, du kannst eine ähnliche Vorgehensweise anwenden, um PDF-Dateinamen in Excel zu importieren.

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