Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
440to444
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
440to444
440to444
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Datei mehrfach abspeichern

Datei mehrfach abspeichern
15.06.2004 14:28:06
Marion
Hallo liebe Excelfreunde,
ich möchte gerne eine Datei per VBA mehrfach unter einem neuen Namen
in einem neuen Verzeichnis abspeichern.
In jeder Datei soll jedoch in der Spalte B2 verschiedene Werte gelöscht werden
und die sind in jeder der 25 Dateien anders.
Das Verzeichnis erstellen ist kein Problem, aber wie kann ich in den jweiligen Dateien die entsprechenden Werte herauslöschen. Irgendwie klemmt es da bei mir.
Wer kann mir da weiterhelfen oder einen Lösungsansatz zeigen?
Viele Grüße
Marion

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei mehrfach abspeichern
Harald
Hallo Marion,
ich habe mal ein Gerüst gestrickt, mit dem Du vielleicht weiter kommst. Es geht von einer Arbeitsmappe mit einer Tabelle aus:

Sub test()
Const Max_Data = 4
Dim Bereich(Max_Data) As String
Dim Namen(Max_Data) As String
Dim i
Dim ThisWorkbook, NewWorkbook As Workbook
Set ThisWorkbook = ActiveWorkbook
' Festlegen der zu löschenden Bereiche und der Namen für die abzuspeichernden tabellen.
' Falls sich Bereiche und Tabellennamen z.B. als laufende Nummern darstellen lassen,
' kann das auch einfacher in einer Schleife passieren
Bereich(1) = "B1"
Bereich(2) = "B2"
Bereich(3) = "B3"
Bereich(4) = "B4"
Namen(1) = "Tabelle1"
Namen(2) = "Tabelle2"
Namen(3) = "Tabelle3"
Namen(4) = "Tabelle4"
For i = 1 To Max_Data
Set NewWorkbook = Workbooks.Add ' Erzeuge neues Workbook
ThisWorkbook.Activate
Sheets("Tabelle1").Copy Before:=NewWorkbook.Sheets(1) 'Kopiere Tabelle 1 in das neue Workbook
Application.DisplayAlerts = False
NewWorkbook.Sheets(2).Delete ' Und lösche die alte Default-Tabelle (bei 3 mehr als 1 Default Tabelle entsprechend die Zeile wiederholen
NewWorkbook.Sheets(1).Range(Bereich(i)).Delete
Application.DisplayAlerts = True
NewWorkbook.SaveAs (Namen(i))
Next
End Sub

Gruß Harald
Anzeige
AW: Datei mehrfach abspeichern
16.06.2004 08:57:47
Marion
Hallo Harald,
vielen Dank für das Gerüst. Leider werden dabei nicht die Makros der Originaldatei in die einzelnen Kopien übernommen, sondern nur die Sheets.
Sorry, den Punkt hatte ich vergessen als Bedingung hinzuzufügen.
Dennoch Danke für Deine Mühe.
Viele Grüße/Marion
AW: Datei mehrfach abspeichern
Harald
Hallo Marion,
speichere eine komplette Kopie der aktiven Arbeitsmappe mittels:
ActiveWorkbook.SaveCopyAs "C:\TEMP\File1.XLS"
ActiveWorkbook.SaveCopyAs "C:\TEMP\File2.XLS"
...
Eine Alternative wäre, die Dateien erst auf Betriebssystemebene zu kopieren. Unter WindowsXP z.B.:

Sub test()
Shell ("C:\Documents and Settings\All Users\Start Menu\Office Applications\cmd.exe /c copy c:\temp\mappe1.xls c:\temp\mappe2.xls ")
End Sub

Welche der beiden Methoden Du auch verwendest:
Nach dem Kopieren öffnest Du die kopierte Mappe in Excel per VBA und löschst die unerwünschten Daten.
Auf diese Weise sollten auch die Makros erhalten bleiben.
Gruß Harald
Anzeige
AW: Datei mehrfach abspeichern
16.06.2004 10:50:22
Marion
Hallo Harald,
genau danach habe ich gesucht. Ich habe mir zwischenzeitlich etwas mit .SaveAs und
einem Public Datenfeld gebastelt. Aber mit Deiner Lösung geht es noch eleganter.
Danke für Deinen Tipp und Deine Mühe.
Viele Grüße
Marion

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige