Clever-Excel-Forum

Normale Version: 2 Tabellenblätter in neue Datei und speichern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Guten Tag zusammen,

derzeit kopiere ich das aktuelle Tabellenblatt und erstelle daraus eine neue Datei wie folgt: 

Code:
rivate Sub CommandButton4_Click()

Dim eingabe As String
Dim Eingabe2 As String
Dim TB As Worksheet

Application.DisplayAlerts = False

With ActiveSheet
       .Copy Before:=Sheets(1)
       Set TB = ActiveSheet 'das ist jetzt das Neue
       TB.Range("A6:AF1133").ClearContents
       .Range("A6:AF1133").SpecialCells(xlCellTypeVisible).Copy TB.Range("A6")
End With

    eingabe = Tabellenname
    Eingabe2 = Dateiname
   
    ActiveSheet.Name = eingabe
       
    With ActiveSheet.Tab
        .ColorIndex = 10
        .TintAndShade = 0
    End With
   
ActiveSheet.Shapes("CommandButton2").Delete
     
Unload UserForm2
 
ActiveSheet.Outline.ShowLevels RowLevels:=0, ColumnLevels:=1

ActiveSheet.Copy


    ActiveWorkbook.ApplyTheme ( _
        "\\XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" _
        )

    Range("A6:AF6").Select
    Selection.AutoFilter
       
    Range("A6:AF6").BorderAround Weight:=xlThin
   

With ActiveWorkbook
.SaveAs Filename:="\\XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\gesondert gesplittet\" & Dateiname
.Close
End With


ActiveSheet.Delete

Application.DisplayAlerts = False

Tabelle1.Select



End Sub

Ich weiss das man mehrere Tabellenblätter wie folgt kopiert:



Code:
With Worksheets(Array("Tabelle1", "Tabelle2"))
    .Copy
    Set WBS = ActiveWorkbook
    For Each WS In WBS.Worksheets
        WS.UsedRange.Value = WS.UsedRange.Value
    Next WS
End With



allerdings heisst 1 Tabellenblatt immer anders und das andere "Diagramm". Ich möchte also am besten ActiveSheet und "diagramm" in eine neue Datei kopieren.




Danke

EDIT: Vllt geht es ja auch so das ich per VBA aus einer geschlossenen Datei das Diagramm kopieren kann?
Hallöchen,

Du hast ja schon einiges programmiert und kennst Variablen.
Ein aktives Blatt hat auch einen Namen …

Teste doch einfach mal mit Select, ob es damit direkt geht oder Du eine Variable brauchst oder willst.

Worksheets(Array(ActiveSheet.Name, "Tabelle2")).Select

oder

Dim aaa
aaa = "Tabelle1"
Worksheets(Array(aaa, "Tabelle2")).Select