Registriert seit: 14.01.2015
Version(en): 2007
Beide hier eingestellten Codes laufen ohne Fehler. (Im Blatt "KW1)
Der obere erzeugt eine *pdf. Der Code kann von Blatt zu Blatt kopiert werden und läuft trotzdem.
Der untere erzeugt eine *xls. Wenn aber das Blatt kopiert wird steht im Code ,auf dem nächsten Blatt, immer noch KW1.
Ich möchte dieses "KW1" durch den Name des aktuellen Blattes ersetzen.
In dem Code für die *pdf ist der Blattname als variable.
Ich habe ohne genau zu wissen was ich mache versucht die "KW1" variabel zu machen.
Dafür habe ich in einer Zelle den jeweils aktuellen Blattname eingefügt und diesen mit Dim als Blattname gesetzt.
Ich bekomme das aber diese dim nicht funktionsfähig in die Formel für die *xls
Dieter
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo Dieter,
dann habe ich das
(13.05.2018, 14:35)Didi schrieb: Egal wie ich die Formel für die xml verändere, ich bekomme immer wieder Fehler.
falsch verstanden. Deine letzen Beitrag verstehe ich nicht.
Gruß Stefan
Win 10 / Office 2016
Registriert seit: 14.01.2015
Version(en): 2007
13.05.2018, 20:55
(Dieser Beitrag wurde zuletzt bearbeitet: 13.05.2018, 20:55 von Didi.)
Auf Buttondruck erzeuge ich eine Kopie von einem Vorlageblatt.
Die obigen Formeln sind im Vorlageblatt und laufen dort.
Die Formel für das erstellen einer *pdf läuft auch in der Kopie.
Die Formel für das erstellen einer *xml läuft zwar auf der Kopie, erstellt aber eine *xml vom Blatt "KW1"
Ich möchte aber eine *xml vom aktuellen Blatt erstellen.
Ich brauche also eine Formel, genau wie für die *.pdf, die eine *xml erstellt
Dieter
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo Dieter,
sorry, ich konnte gestern wohl nicht richtig lesen :s Ich habe mich immer auf den falschen Code bezogen. Versuche es mal so
Code:
ThisWorkbook.Worksheets("KW1").Copy
Application.DisplayAlerts = False
Dim strDate
strDate = Now
ActiveSheet.SaveAs "C:\Backup\" & Format(Range("A50")) & " " & Format((Date)) & ".xlsx"
'oder so
Worksheets("KW1").SaveAs "C:\Backup\" & Format(Range("A50")) & " " & Format((Date)) & ".xlsx"
ActiveWorkbook.Close Fals
Gruß Stefan
Win 10 / Office 2016
Registriert seit: 14.01.2015
Version(en): 2007
Brauch ich nicht versuchen. Mein Code funktioniert.
In meinem Code steht
Code:
ThisWorkbook.Worksheets("KW1").Copy
In deinem auch.
Dieses KW1 ist mein Problem.
Es erstellt immer vom Blatt KW1 eine Kopie.
Es soll aber vom aktuellen Blatt eine Kopie erstellen.
Bis jetzt habe ich keinen Code gefunden der dies kann.
Was aber wohl geht ist das die gesamte Mappe kopiert wird und danach alle Blätter ausser das letzte gelöscht werden.
Dieter
Registriert seit: 10.04.2014
Version(en): 2016 + 365
14.05.2018, 16:11
(Dieser Beitrag wurde zuletzt bearbeitet: 14.05.2018, 16:11 von Rabe.)
Hi,
dann nimm halt einfach:
ActiveSheet.Copy
evtl in Verbindung mit "ThisWorkbook." davor.
Folgende(r) 1 Nutzer sagt Danke an Rabe für diesen Beitrag:1 Nutzer sagt Danke an Rabe für diesen Beitrag 28
• Didi
Registriert seit: 14.01.2015
Version(en): 2007
Wie kann man nur so doof sein.
Code:
Private Sub CommandButton26_Click()
ThisWorkbook.ActiveSheet.Copy
Application.DisplayAlerts = False
Dim strDate
strDate = Now
ActiveWorkbook.SaveAs "C:\Backup\" & Format(Range("A50")) & " " & Format((Date)) & ".xlsx"
Application.DisplayAlerts = False
Application.DisplayAlerts = True
ActiveWorkbook.Close False
End Sub
Funktioniert und macht was es soll. Hatte das bestimmt auch schon mal versucht aber irgendwo einenFehler drin gehabt.
Dieter