Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1252to1256
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

einblenden u kopieren von Arbeitsblättern

einblenden u kopieren von Arbeitsblättern
Arbeitsblättern
Hallo VBA-Gemeinde,
in einer Arbeitsmappe soll nach Blättern mit "Schedule xxxx" gesucht werden, diese dann eingeblendet und kopiert werden. Dabei soll der Name "Schedule xxxx" in "bkp xxxx" getauscht werden und diese dann ausgeblendet werden. Es handelt sich hierbei um Backup-Kopien, die nur während der Session zur Sicherheit gemacht werden, um beim Schließen der Datei den ursprünglichen Zustand wieder herstellen zu können. Dann werden Sie wieder gelöscht.
In einer Testdatei mit 3 dieser Blätter (Gelb, Grün, Blau) funktioniert es soweit, wenn alle betreffenden Blätter bereits eingeblendet sind.
Wenn nicht, dann kopiert zwar der Code das 1. und 2. gefundene Blatt, tauscht aber den Namen nicht, sondern benennt die neuen Blätter "Schedule 2011 (2)" , "Schedule 2012 (2)" . Die Inhalte würden stimmen, da entsprechend die gelben bzw. grünen Felder kopiert sind. Und das dritte bleibt ausgeblendet und bekommt als Namen "bkp 2012". Dies entspricht Blatt 2, aber der Inhalt ist der des dritten (blaues Feld).
Nachfolgend der Code und ein Testfile.
https://www.herber.de/bbs/user/79324.xlsm
Kann mir jemand einen Tip geben, wo bei mir der Denkfehler steckt?
Vielen Dank
Gert

Sub mcr_SaveFormat()
Dim WSh As Worksheet
Dim varWSh  As String
'ActiveWorkbook.Unprotect (Worksheets("User").Range("C8"))
For Each WSh In ActiveWorkbook.Sheets
If Left(LCase(WSh.Name), 8) = "schedule" Then
WSh.Visible = True
WSh.Select
WSh.Copy After:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "bkp " & Right(WSh.Name, 4)
End If
Next WSh
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: einblenden u kopieren von Arbeitsblättern
10.03.2012 15:16:13
Arbeitsblättern
ich jhätte vermutet das es ohne einblenden geht.
Option Explicit
Sub mcr_SaveFormat()
Dim WSh As Worksheet
Dim varWSh  As String
'ActiveWorkbook.Unprotect (Worksheets("User").Range("C8"))
For Each WSh In ActiveWorkbook.Sheets
If Left(LCase(WSh.Name), 8) = "schedule" Then
WSh.Copy After:=Sheets(Sheets.Count)
Sheets(WSh & " (2)").Name = "bkp " & Right(WSh.Name, 4)
End If
Next WSh
End Sub


AW: einblenden u kopieren von Arbeitsblättern
10.03.2012 15:49:04
Arbeitsblättern
Hallo Hajo,
vielen Dank für die schnelle Antwort.
Ja, jetzt geht es auch ohne einblenden.
Habe die letzte Zeile noch wie folgt geändert und nun funktioniert es.
Sheets(WSh.Name & " (2)").Name= "bkp " & Right(WSh.Name, 4)
Schönen Samstag noch
Gert
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige