Einzelne Seite abspeichern

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Einzelne Seite abspeichern von: Christoph
Geschrieben am: 15.03.2005 10:21:39

Hallo

ich möchte aus einer excelmappe mittels button nur einzelne Seite als Excelfile speichern.

Ich habe insgesamt 5 Tabellenblätter, und von denen möchte ich die ersten zwei weglassen und den rest als neues Excelfile mit dem Datum und einem Zusatz abspeichern.

Kann mir da jemand helfen?

Gruß Chris

Bild


Betrifft: AW: Einzelne Seite abspeichern von: Volker
Geschrieben am: 15.03.2005 11:00:16

Hallo Chris,

CommandButton einfügen, rechte Maus, Code anzeigen
das hier in die Private Sub CommandButton1_Click() einfügen:

Application.DisplayAlerts = False
Sheets(1).Delete
Sheets(1).Delete
Application.DisplayAlerts = True
ActiveWorkbook.SaveAs (Date & " Zusatz.xls")

Gruß
Volker


Bild


Betrifft: AW: Einzelne Seite abspeichern von: Domke, Frank
Geschrieben am: 15.03.2005 11:51:04

Hallo Volker,

den Tipp von Chris solltest Du nur nehmen, wenn Du in der Originalmappe die Tabellen 1 und 1 nicht brauchst!!! Ansonsten speichere die Datei erst unter einem neuen Namen und öffne diese zum Löschen der tabellen 1 und 2!

Ich mache so Backups:


Sub Backup()
    Dim strBackup As String
    Dim blnEnableEvents As Boolean
    blnEnableEvents = Application.EnableEvents
    Application.EnableEvents = False
    If Workbooks.Count = 0 Then
        MsgBox "Keine Arbeitsmappe offen!", vbExclamation
    ElseIf ActiveWorkbook Is Nothing Then
        MsgBox "Keine Arbeitsmappe aktiv!", vbExclamation
    ElseIf ActiveWorkbook.Path = "" Then
        MsgBox "Backup ""kann"" nur von einer gespeicherten Arbeitsmappe erfolgen!", vbExclamation
    Else
        strBackup = GetBackupName
        On Error Resume Next
        ActiveWorkbook.SaveCopyAs strBackup
        If Err.Number = 0 Then _
 MsgBox "Die Arbeitsmappe wurde unter dem Namen" & vbCr & strBackup & _
        " gesichert!", vbInformation + vbOKOnly
    End If
    Application.EnableEvents = blnEnableEvents
End Sub



Function GetBackupName() As String
    Dim strName As String
    Dim strExt As String
    Dim intLen As Integer
    strExt = fGetFileExtension5(ActiveWorkbook.Name)
    intLen = Len(ActiveWorkbook.Name) - Len(strExt)
    If strExt <> "" Then
        intLen = intLen - 1
    Else
        strExt = "xls"
    End If
    strName = Left(ActiveWorkbook.Name, intLen)
    GetBackupName = ActiveWorkbook.Path & "\" & strName & _
                    Format(Now, " YYYY-MM-DD HH-MM-SS") & "." & strExt
End Function


Du musst jetzt nur noch per Makro die neue Arbeitsmappe öffnen und dann, wie oben beschrieben, die Tabellenblätter 1 und 2 löschen.

Viel Erfolg
Frank.


Bild


Betrifft: AW: Einzelne Seite abspeichern von: Christoph
Geschrieben am: 15.03.2005 12:37:06

Das mit dem Abspeichern funktioniert, aber er fragt nicht nach wohin er speichern soll, sondern speichert es irgendwo hin.


Bild


Betrifft: AW: Einzelne Seite abspeichern von: Volker
Geschrieben am: 15.03.2005 16:25:17

Hallo Chris,

wenn man keinen Pfad angibt, speichert er ins selbe Verzeichnis wie die Ursprungsdatei.
Wenn Du die beiden ersten sheets noch behalten willst, speicherst Du das file einfach vor dem Löschen noch mal ab. Und wenn Du einen bestimmten Pfad haben willst, im Bsp. C:\tmp , kannst Du auch den mit angeben

Application.DisplayAlerts = False
ActiveWorkbook.Save
Sheets(1).Delete
Sheets(1).Delete
Application.DisplayAlerts = True
ActiveWorkbook.SaveAs ("C:\tmp\" & Date & " Zusatz.xls")

Gruß
Volker


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Einzelne Seite abspeichern"