2 Tabellenblätter in neue Datei und speichern
#1
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?
Top
#2
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
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
[-] Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:
  • elamigo
Top


Gehe zu:


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