VBA verbundene Zellen
#21
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
Top
#22
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
Top
#23
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
Top
#24
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
Top
#25
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
Top
#26
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:
  • Didi
Top
#27
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
Top


Gehe zu:


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