Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1928to1932
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
VBA Code Sheet kopieren
08.05.2023 11:53:43
Lisa

Hallo Zusammen

Ich möchte auf Basis einer Liste neue Blätter in einer Arbeitsmappe erstellen lassen. Das klappt gut mit diesem Code:
Sub AddSheets()
'Updateby Extendoffice
Dim xRg As Excel.Range
Dim wSh As Excel.Worksheet
Dim wBk As Excel.Workbook
Set wSh = ActiveSheet
Set wBk = ActiveWorkbook
Application.ScreenUpdating = False
For Each xRg In wSh.Range("A1:A7")
With wBk
.Sheets.Add after:=.Sheets(.Sheets.Count)
On Error Resume Next
ActiveSheet.Name = xRg.Value
If Err.Number = 1004 Then
Debug.Print xRg.Value & " already used as a sheet name"
End If
On Error GoTo 0
End With
Next xRg
Application.ScreenUpdating = True
End Sub


Nun sollen die neuen Blätter ein bestehendes Sheet als Vorlage verwenden. Leider konnte ich nicht rausfinden was und wo genau ich etwas einfügen muss, damit die neuen Blätter die Formeln und die Formatierung aus der Vorlage verwenden.

Danke für eure Hilfe

Liebe Grüsse
Lisa

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Code Sheet kopieren
08.05.2023 12:09:25
Daniel
Hi
du kannst entweder nach dem Einfügen des Blattes die Daten der Vorlage kopieren

.Sheets.Add after:=.Sheets(.Sheets.Count)
Sheets("Vorlage").Usedrange.Copy Destination:=Activesheet.Cells(1, 1)
oder du kopierst gleich das Vorlagenblatt, anstatt zuerst ein leeres anzulegen:
Sheets("Vorlage").Copy After:=.Sheets(.Sheets.Count)
der Unterschied ist, dass beim Sheet.Copy auch Makros und die Seiteneinrichtungen mit übernommen werden.
diese würden beim Inhalte kopieren und einfügen nicht übernommen werden.

Allerddings ist aus diesem Grund das Sheet.Copy auch sehr langsam, weil Excel dann immer erstmal mit dem Drucker ein "Kaffeekränzchen" hält.
Das kann man aber unterbinden mit dem Befehl: Application.PrintCommunication = False ausschalten (und mit =True am schluss wieder einschalten)

Gruß Daniel


Anzeige
AW: VBA Code Sheet kopieren
08.05.2023 16:05:52
Yal
Hallo Lisa,

noch allgemeiner, als was die Kollegen schon -richtig- vorgeschlagen haben:
_ Makrorekorder starten,
_ Aktion per Hand durchführen,
_ MR stoppen,
_ Code anschauen.
Darin sollte der passenden Code-Schnippsel vorliegen, der zu deinem Puzzle fehlt.

Diese Vorgehensweise benutze ich nach 20 Jahren Excel-VBA immer noch (es gibt nichts besseres).

VG
Yal

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige