Herbers Excel-Forum - das Archiv

Abspeichern eines Tabellenblattes

Bild

Betrifft: Abspeichern eines Tabellenblattes
von: steve

Geschrieben am: 24.03.2005 12:04:10
Hallo,
ich habe über VBA folgendes:
Sub Blattspeichern()
Dim NewDateiname As String
Dim NewPfad As String
With Sheets("Verknüpfungen")
NewDateiname = .Range("A23")
NewPfad = .Range("A22")
End With
On Error GoTo errorHandling
Application.ScreenUpdating = False
prtcmd2 = NewPfad & NewDateiname
Application.SendKeys (prtcmd), True
Application.SendKeys "{ENTER}", True
Application.ScreenUpdating = True
ActiveSheet.Copy
ActiveWorkbook.SaveAs Filename:=prtcmd2 & ".xls"
MsgBox "Datei " & prtcmd2 & " erstellt!"
Exit Sub
errorHandling:
MsgBox "Der folgende Fehler ist aufgetreten: " & _
Err.Number & " - " & Err.Description
End Sub


Das Problem ist ich würde gerne nicht nur das aktive Blatt sondern eben auch noch fix das Blatt Formeln mit erstellen. Außerdem soll er automatisch nach dem Erstellen das neue Blatt schließen.
Wie könnte so was aussehen?
Bild

Betrifft: AW: Abspeichern eines Tabellenblattes
von: Frank Domke

Geschrieben am: 24.03.2005 14:03:41
Hallo Steve,
was meinst Du mit "... fix das Blatt Formeln mit erstellen .."? Ich habe Dir erst einmal zwei Lösungsansätze beigepackt:
Sub Steve1()
Dim wb As Workbook
ActiveWorkbook.SaveCopyAs Filename:=prtcmd2 & ".xls"
Set wb = Workbooks.Open(Filename:=prtcmd2 & ".xls")
' Hier alle Tabellen, die Du nicht brauchst, rausschmeißen
' bzw. alle Tabellen bearbeiten
wb.Close SaveChanges:=True
Set wb = Nothing
End Sub

' ----------- ODER ------------
Sub Steve2()
Dim wb As Workbook
' ----------- ODER ------------
Sheets("Tabelle1").Copy
Set wb = ActiveWorkbook
' Hier kannst Du diese Tabelle, die jetzt alleine in der neuen
' Arbeitsmappe befindet, bearbeiten.
wb.SaveAs Filename:=prtcmd2 & ".xls"
Set wb = Nothing
End Sub

Viel Erfolg
Frank.
Bild

Betrifft: AW: Abspeichern eines Tabellenblattes
von: steve

Geschrieben am: 24.03.2005 14:18:03
Vielen Dank Variante 2 ist korrekt. Allerdings muss ich 2 Tabellenblätter kopieren, das aktive Tabellenblatt und das Blatt Formeln
Sub Steve2()
Dim wb As Workbook
Sheets("Tabelle1").Copy
Set wb = ActiveWorkbook
' Hier kannst Du diese Tabelle, die jetzt alleine in der neuen
' Arbeitsmappe befindet, bearbeiten.
wb.SaveAs Filename:=prtcmd2 & ".xls"
Set wb = Nothing
End Sub

 Bild