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

Forumthread: Datei aufteilen und einzeln speichern

Datei aufteilen und einzeln speichern
13.12.2022 11:31:04
Tom
Hallo zusammen,
ich möchte eine Basistabelle anhand der Spalte A auf einzelne Dateien aufteilen. Hier im Forum bin ich bereits mit dem Makro von Martin https://www.herber.de/forum/archiv/1388to1392/1391997_Excel_Tabelle_aufteilen_und_einzeln_sichern.html fündig geworden, es funktioniert auf Anhieb fehlerfrei. Einziges Manko ist, dass die erstellten Dateien mit ca. 10 MB ziemlich gross sind.
Weiss vielleicht jemand, wie man das Makro anpassen könnte, so dass die Dateien kleiner werden? Mit VBA kenn ich mich leider gar nicht aus.
Meine Basisdatei besteht immer aus 19 Spalten und max. 6000 Zeilen, so auch die zu erstellenden Dateien. Sie sieht wie folgt aus: https://www.herber.de/bbs/user/156692.xlsx
Viele Grüße
Tom
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Datei aufteilen und einzeln speichern
13.12.2022 12:27:22
Herbert_Grom
Hallo Tom,
du solltest schon eine Beispiel-AM mit den vorhandenen Makros hochladen! In der Spalte A gibt es zweimal die 0 und die 4. Wie sollen die behandelt werden?
Servus
AW: Datei aufteilen und einzeln speichern
13.12.2022 12:52:42
Tom
Hallo Herbert,
sorry, hier die Datei mit dem Makro, ich hatte es 1:1 von Martin übernommen https://www.herber.de/bbs/user/156698.xlsm. Die Ergebnisse sind auch richtig. Also, z. B. alle mit 0 in Spalte A in eine neue Datei "0", mit 1 in eine neue Datei "1" usw. Leider nur zu gross die erzeugten Dateien. Wie gesagt, von VBA hab ich leider 0 Ahnung.
Viele Grüße
Tom
Anzeige
AW: Datei aufteilen und einzeln speichern
13.12.2022 13:14:44
Rudi
Hallo,
evtl. hilft die Angabe des Filetyps.

      With ActiveWorkbook
.SaveAs Filename:=ThisWorkbook.Path & "\" & arrIdentNo(i), FileFormat:=xlOpenXMLWorkbook
.Close
End With
Gruß
Rudi
AW: Datei aufteilen und einzeln speichern
13.12.2022 13:57:53
Tom
Hallo Rudi,
perfekt, das war die Lösung, die Dateien sind nun klein. Ganz herzlichen Dank für die Hilfe.
Vielleicht kannst du mir noch 1 Frage beantworten: Wenn im Tabellenblatt 2 der Ausgangsdatei Daten mit der gleichen Struktur stehen wie im Tabellenblatt1 meiner Beispieldatei, wie müsste das Makro angepasst werden, damit die auch nach der gleichen Systematik übertragen werden?
Viele Grüße
Tom
Anzeige
AW: Datei aufteilen und einzeln speichern
13.12.2022 14:34:40
Rudi
Hallo,
du musst nichts anpassen. Das Blatt muss lediglich aktiv sein.
Gruß
Rudi
AW: Datei aufteilen und einzeln speichern
13.12.2022 14:56:47
Tom
Hallo Rudi,
das hätte ich auch gedacht, aber leider wird immer nur Tabelle1 übertragen, habe es gerade noch einmal versucht. Komisch.
Viele Grüße
Tom
bei mir geht das so. owT
13.12.2022 15:03:56
Rudi
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Excel Tabelle aufteilen und einzeln speichern


Schritt-für-Schritt-Anleitung

Um eine Excel Tabelle aufteilen und einzeln speichern zu können, folge diesen Schritten:

  1. Öffne Deine Excel Datei: Lade die Excel Datei, die Du aufteilen möchtest.

  2. Aktiviere das Makro: Stelle sicher, dass das Makro, das Du verwenden möchtest, aktiv ist. Du kannst ein Beispielmakro aus dem Forum verwenden, wie das von Martin.

  3. Füge das VBA-Skript ein: Öffne den VBA-Editor (ALT + F11) und füge das Skript ein. Hier ist ein Beispiel:

    Sub SplitWorkbook()
       Dim ws As Worksheet
       Dim arrIdentNo As Variant
       Dim i As Long
    
       Set ws = ThisWorkbook.Sheets(1) 'Aktiviere das erste Blatt
    
       'Hier wird die Identifikationsnummer aus Spalte A gesammelt
       arrIdentNo = Application.Unique(ws.Range("A1:A6000"))
    
       For i = LBound(arrIdentNo) To UBound(arrIdentNo)
           ws.AutoFilter Field:=1, Criteria1:=arrIdentNo(i)
           ws.Copy
           With ActiveWorkbook
               .SaveAs Filename:=ThisWorkbook.Path & "\" & arrIdentNo(i) & ".xlsx", FileFormat:=xlOpenXMLWorkbook
               .Close
           End With
       Next i
    
       ws.AutoFilterMode = False
    End Sub
  4. Führe das Makro aus: Schließe den VBA-Editor und führe das Makro aus. Die Excel Tabelle wird nun basierend auf den Werten in Spalte A aufgeteilt und in mehrere Dateien gespeichert.


Häufige Fehler und Lösungen

  • Fehler: Dateien sind zu groß
    Lösung: Stelle sicher, dass Du das richtige Dateiformat verwendest. Rudi schlägt vor, das Format wie folgt zu ändern:

    .SaveAs Filename:=ThisWorkbook.Path & "\" & arrIdentNo(i), FileFormat:=xlOpenXMLWorkbook
  • Fehler: Nur Tabelle1 wird übertragen
    Lösung: Stelle sicher, dass das Tabellenblatt, das Du aufteilen möchtest, aktiv ist, bevor Du das Makro ausführst.


Alternative Methoden

Falls Du nicht mit VBA arbeiten möchtest, kannst Du auch die Daten manuell aufteilen:

  1. Filter verwenden: Wende den Autofilter auf die Spalte an, um die Daten nach den gewünschten Kriterien zu filtern.
  2. Kopieren und Einfügen: Kopiere die gefilterten Daten und füge sie in eine neue Excel Datei ein.
  3. Speichern: Speichere die neue Datei unter einem geeigneten Namen.

Wenn Du mit CSV-Dateien arbeitest, kannst Du dieselbe Methode auch verwenden, um eine CSV Datei in Spalten aufzuteilen.


Praktische Beispiele

Nehmen wir an, Du hast eine Excel Tabelle mit den folgenden Werten in Spalte A:

A
0
1
0
2
1

Nach Ausführung des Makros werden die Ergebnisse wie folgt in separate Dateien gespeichert:

  • 0.xlsx
  • 1.xlsx
  • 2.xlsx

Jede Datei enthält nur die Zeilen, die dem jeweiligen Wert in Spalte A entsprechen.


Tipps für Profis

  • Dateigröße minimieren: Verwende das .xlsx-Format, um die Dateigröße zu reduzieren.
  • Automatisierung: Überlege, wie Du die Erstellung mehrerer Dateien automatisieren kannst, wenn Du regelmäßig Daten aufteilen musst.
  • Testen: Teste das Makro mit einer Kopie Deiner Daten, um sicherzustellen, dass alles korrekt funktioniert, bevor Du es in der Produktionsdatei anwendest.

FAQ: Häufige Fragen

1. Frage: Kann ich auch PDF-Dateien in mehrere Dateien aufteilen?
Antwort: Ja, es gibt spezielle Software und Makros, die helfen können, PDF-Dateien in mehrere Dateien aufzuteilen, jedoch ist dies nicht direkt über Excel möglich.

2. Frage: Wie kann ich eine CSV Datei in Spalten aufteilen?
Antwort: Du kannst die CSV Datei in Excel öffnen und die Text-zu-Spalten-Funktion verwenden, um sie in Spalten aufzuteilen. Alternativ kannst Du auch VBA verwenden, um die Daten automatisch zu splitten.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige