Workbook speichern(aber nicht alle Tabellen)
#11
danke! So siehts jetzt aus:


Code:
Sub SpeichernSheets()
    Sheets(Array("Tabelle1", "Tabelle2")).Copy
 With ActiveWorkbook
      .SaveAs Filename:=ThisWorkbook.Path & Worksheets("Tabelle1").Range("J1").Value, _
              FileFormat:=xlOpenXMLWorkbookMacroEnabled
ActiveWorkbook.Close
End With
End Sub
1. Tatsächlich speichert er die Datei und schließt sie.
2. Sie hat auch nur die ausgewählten Tabellen.
3. Doch er speichert sie nicht in dem Verzeichnis wo die Hauptdatei sich befindet.
4. Und er fragt nach, ob er die Datei überschreiben soll.

Kann ich Punkt 3 und 4 jetzt noch integrieren?


Sub SaveSheets1()

Dim varSheets As Variant

varSheets = Array("Tabelle1", "Tabelle3")

ThisWorkbook.Sheets(varSheets).Copy

Application.DisplayAlerts = False
With ActiveWorkbook
     .SaveAs Filename:=ThisWorkbook.Path & "\" & ThisWorkbook.Sheets("Tabelle2").Range("J1").Value, _
             FileFormat:=xlOpenXMLWorkbookMacroEnabled
     '.Close
End With
Application.DisplayAlerts = True
End Sub


Das klappt jetzt! :)


Julia :)
Top
#12
Hallo Julia,

mal eine Erklärung zum Parameter Filename aus der OH zur SaveAs-Methode.

Zitat:Eine Zeichenfolge, die den Namen der zu speichernden Datei angibt. Sie können den vollständigen Pfad angeben, andernfalls wird die Datei von Microsoft Excel im aktuellen Ordner gespeichert.

da habe ich eventuell auch was zum Überschreiben gefunden.

Code:
Sub SpeichernSheets()
    Sheets(Array("Tabelle1", "Tabelle2")).Copy
With ActiveWorkbook
      .SaveAs Filename:=Worksheets("Tabelle1").Range("J1").Value, _
              FileFormat:=xlOpenXMLWorkbookMacroEnabled, ConflictResolution:=xlLocalSessionChanges
ActiveWorkbook.Close
End With
End Sub
Gruß Stefan
Win 10 / Office 2016
Top
#13
nee, das geht nicht. Selbst wenn ich Application.DisplayAlerts = False mache. Dann wird die Datei zwar gespeichert, jedoch nicht im gleichen Ordner wie die Hauptdatei.
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste