Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Speichern eines einzelnen Sheet

Forumthread: Speichern eines einzelnen Sheet

Speichern eines einzelnen Sheet
04.02.2004 16:25:48
Dieter
Hallo Forum,
mit welchen VBA Code kann ich aus einer Arbeitsmappe in der sich 5 Arbeitsblätter befinden ein einzelnes Sheet unter eigenen Name speichern.
ich möchte z.Bsp. Tabelle1 nach Bearbeitung als xxxxx.xls Datei speichern
als neuer Name sollte , der Inhalt einer Zelle C7 plus das aktuelle Datum
sein.
Das ganze möchte ich nach D:\Excel\Sport\z.Bsp. "Jugend B 20-0104.xls"
nach dem speichern sollte die Quell Tabelle wieder angezeigt werden.
Kann mir jemand solch einen Code erstellen ?
MfG Dieter

Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Speichern eines einzelnen Sheet
04.02.2004 16:55:15
Andreas
Hallo probier doch mal sowas in der Art

Sub test()
Dim objwbk As Workbook
Dim i As Long
dim newname AS String
Set objwbk = Workbooks.Add
newname = Workbooks("Workbookname").Worksheets(1).Range("C7").Value & Date
Workbooks("Workbookname").Worksheets(1).Copy After:=objwbk.Worksheets(3)
For i = 1 To 3
objwbk.Worksheets(i).Delete
Next
objwbk.Saveas("D:\Excel\sport\" & newname)
End Sub

Gruß Andi
Anzeige
AW: Speichern eines einzelnen Sheet
04.02.2004 17:18:33
Dieter
Hallo Andi, Danke für deine Meldung, wo muss ich nun meine Namen Tabellenblatt und soweiter eintragen ?
Bin was VBA betrifft ein Grünschnabel.
MfG Dieter
AW: Speichern eines einzelnen Sheet
04.02.2004 17:31:15
Andreas
Hallo Dieter

Sub test()
Dim objwbk As Workbook
Dim i As Long
dim newname AS String
Set objwbk = Workbooks.Add
'Bei Workbookname trägst du ein, wie die Arbeitsmappe heisst,
' aus der Du das Blatt eigens abspeichern willst
'In dieser Zeile wird dann der neue Name erstellt:
'Inhalt der Zelle C7 und das aktuelle Datum
newname = Workbooks("Workbookname").Worksheets(1).Range("C7").Value & Date
'Das erste Tabellenblatt wird dann in die neue Arbeitsmappe kopiert,
'und zwar ganz zum Schluss
Workbooks("Workbookname").Worksheets(1).Copy After:=objwbk.Worksheets(3)
'Jetzt werden noch die 3 leeren Tabellenblätter gelöscht,
'die ja in einer neuen arbeitsmappe sind
For i = 1 To 3
objwbk.Worksheets(i).Delete
Next
'zum Schluss speichern wir die neue arbeitsmappe unter einem
'festen Pfad mit oben erstellten Namen
objwbk.Saveas("D:\Excel\sport\" & newname)
End Sub

Ich hoffe, das ist jetzt etwas besser zu lesen.
Hoffentlich funktioniert's, ich habs noch nicht ausprobiert
Gruss Andi
Anzeige
AW: Speichern eines einzelnen Sheet
04.02.2004 17:51:28
Dieter
Hallo Andi, habe es nun Verstanden nur mit dem Datum das funzt nicht
und das mit dem löschen ist ein wenig verwirrend , weil ich diese Datei auch im Vereinsrechner habe und manchmal, noch ungeübtere als ich dort was eingeben .
Kann man dieses nicht unterbinden ? damit die Blätter erst garnicht mit kopiert werden ?
MfG Dieter
Anzeige
AW: Speichern eines einzelnen Sheet
04.02.2004 17:55:38
Josef Ehrensberger
Hallo Dieter!
Versuch diesen Code


Sub BlattKopieren()
Dim strPath As String
Dim strName As String
strPath = "D:\Excel\Sport\"
strName = ActiveSheet.Range("C7")
Application.ScreenUpdating = False
ActiveSheet.Copy
With ActiveWorkbook
.SaveAs srtpath & strName & Format(Date, "dd mmyy")
.Close
End With
Application.ScreenUpdating = True
End Sub

     Code eingefügt mit Syntaxhighlighter 2.5

Gruß Sepp
Anzeige
AW: Speichern eines einzelnen Sheet
04.02.2004 18:21:40
Dieter
Hallo Sepp , das ist ja Klasse noch eine Frage dazu der Blattname in der Mappe
lautet Jugend B ist das Möglich den auch noch zu dem Namen "Datum u. C7" damit einzubauen
und das die Schaltflächen nicht mit übernommen werden, also nur wenn sowas geht.
MfG Dieter
AW: Speichern eines einzelnen Sheet
04.02.2004 18:49:37
Josef Ehrensberger
Hallo Dieter!
Probier das.


Sub BlattKopieren()
Dim strPath As String
Dim strName As String
Dim strWert As String
Dim shp As Shape
strPath = "D:\Excel\Sport\"         'Pfad
strName = ActiveSheet.Name          'Tabellenname
strWert = ActiveSheet.Range("C7")   'Dateiname - zusatz
Application.ScreenUpdating = False
ActiveSheet.Copy
With ActiveWorkbook
For Each shp In Sheets(1).Shapes    'Schaltflächen entfernen
shp.Delete
Next
With .VBProject.VBComponents(.VBProject.VBComponents(2).CodeModule).CodeModule
    .DeleteLines 1, .CountOfLines
End With
.Sheets(1).Cells.Locked = True  'Zellen sperren
.Sheets(1).Protect "test"       'Blattschutz setzen - Passwort anpassen
.SaveAs strPath & strName & " " & Format(Date, "dd mmyy") & " " & _
strWert & ".xls"
.Close
End With
Application.ScreenUpdating = True
End Sub

     Code eingefügt mit Syntaxhighlighter 2.5

Ich hoffe das der Name so passt!
Die Schaltflächen und der VBA-Code werden entfern.
Die Zellen werden gesperrt und der Blattschutz wird
gesetzt. (Passwort = test)
Gruß Sepp
Anzeige
AW: Suuuuper Sepp Danke
04.02.2004 19:15:13
Dieter
Hallo Sepp , einfach Spitze mehr als ich überhaupt wollte sogar mit
Schreibschutz besten Dank !!!!
Kann man nur weiter Empfehlen.
Gruss Dieter Besten Dank
Danke für die Rückmeldung! o.T.
04.02.2004 19:18:50
Josef Ehrensberger
/
AW: Speichern eines einzelnen Sheet
04.02.2004 17:01:23
th.heinrich
hallo Dieter,
ARCHIV und RECHECHE bieten einiges, hier ein ansatz,
https://www.herber.de/forum/archiv/168to172/t170450.htm
gruss thomas
ps. leider kam in dem thread keine rueckmeldung.
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige