1.1k Aufrufe
Gefragt in Tabellenkalkulation von mikeleson Einsteiger_in (7 Punkte)
Tach,
ich habe immer wieder Excel Dateien mit über 6000 Zeilen,die immer anders aussehen und die ich per Makro schon richtig formatiert habe.

Nun möchte ich nach der Ausführung des Makros, dass der gesamte Inhalt dieser Datei kopiert wird und in einer neuen Excel Datei eingeführt wird.
Das häng ich dann an das bestehende Makro an und speicher die Datei dann unter neuem Namen.

Hintergrund ist, dass ich die Datei in ein Access Tool einfügen muss und das nur so funktioniert, warum auch immer.
Zudem ist die Datei dann sauber und um einiges kleiner natürlich.

Habe dazu leider noch nichts passendes gefunden, kann jemand helfen?

2 Antworten

0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo mikeleson,

da ich jetzt nicht genau weiß, ob Du mit "den gesamten Inhalt dieser Datei" nur Deine 6000 Zeilen oder alle Tabellenblätter meinst, habe ich Dir mal ein Makro erstellt, welches alle Tabellenblätter in eine neue Exceldatei kopiert, danach das Dialogfenster "Speichern unter" aufruft, damit Du der Datei einen Namen vergeben kannst, dann die Datei speichert und danach geschlossen wird.

Kopiere das Makro in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

Option Explicit

Sub Alle_Blätter_kopieren()
Dim intSheet As Integer
Dim strSheetName As String
'Schleife um alle Tabellenblätter der Datei anzusprechen
For intSheet = 1 To Sheets.Count
'Name des gerade durch die Schleife angesprochenen Tabellenblatts _
in Variable "strSheetName" schreiben
strSheetName = strSheetName & "," & Sheets(intSheet).Name
Next
'Variableninhalt in die richtige Form für die "Split-Anweisung" bringen
strSheetName = "" & Mid(strSheetName, 2, Len(strSheetName)) & ""
'Alle Blätter in eine neue Datei kopieren
Sheets(Split(strSheetName, ",")).Copy
'Dialogefenster "Speichern unter" aufrufen damit Datei gespeichert werden kann
Application.Dialogs(xlDialogSaveAs).Show
'Neue Datei schließen
ActiveWorkbook.Close
End Sub
Ich hoffe, Du kommst klar. Bei Fragen melde Dich.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von mikeleson Einsteiger_in (7 Punkte)
Super,
echt vielen lieben Dank es funkioniert genau so, wie ich das mir vorgestellt habe.
Hätte ich so nicht hinbekommen :-)
...