Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Druckformate übernehmen

Forumthread: Druckformate übernehmen

Druckformate übernehmen
21.03.2006 10:53:31
petra
Hallo,
ich habe folgenden Problem:
Habe in einem Tabellenblatt eine Liste mit Werten. In Spalte A sind Zahlenwerte, die aufsteigend sortiert sind, aber auch mehrfach vorkommen.
Jetzt habe ich einen Makro, der mir Werte aus den Spalten A bis U für jeden gleichen Zahlenwert kopiert und in ein neues Tabellenblatt hineinkopiert.
Problem ist allerdings, dass das eingerichtete Druckformat nicht mit übernommen wird.
Jetzt würde ich gerne den Makro ergänzen, damit jedes neue Tabellenblatt das gleiche Druckformat hat wie die ursprungstabelle.
kann mir da jemand helfen?
hier der Makro:
Public

Sub Verteilen()
Application.ScreenUpdating = False
Dim nNumber As Integer, actSh As Worksheet
Dim bComplete As Boolean
bComplete = False
Dim i As Long, nStart, nEnd As Long
nNumber = 0
For i = 3 To 65536
If Sheets(2).Cells(i, 1).Value = "" Then
nEnd = i - 1
Exit For
End If
If nNumber <> Sheets(2).Cells(i, 1).Value Then
If Not bComplete Then
' neues sheet anlegen
nNumber = Sheets(2).Cells(i, 1).Value
nStart = i
Set actSh = Sheets.Add(after:=Worksheets(Worksheets.Count))
' sheet benennen
ActiveSheet.Name = Trim(Str(nNumber))
Sheets(2).Range("a1:u2").Copy
ActiveSheet.Range("a1").Select
' überschrift kopieren
ActiveSheet.Paste
bComplete = True
Else
nEnd = i - 1
' das ende eines blockes wurde erreicht
End If
End If
' das trifft nur dann zu, wenn
' obige if bcomplete schleife einmal komplett durch laufen wurd
If nEnd > nStart Then
' block kopieren
Sheets(2).Range("A" + Trim(Str(nStart)) + ":U" + Trim(Str(nEnd))).Copy
ActiveSheet.Range("a3").Select
ActiveSheet.Paste link:=True
Selection.PasteSpecial Paste:=xlFormats
nEnd = 0
nStart = 0
bComplete = False
i = i - 1       'wir sind quasi über das ziel hinausgeschossen
For Spalte = 1 To 23
ActiveSheet.Columns(Spalte).ColumnWidth = Sheets(2).Columns(Spalte).ColumnWidth
Next Spalte
End If
Next i
If nEnd > nStart Then
' block kopieren
Sheets(2).Range("A" + Trim(Str(nStart)) + ":U" + Trim(Str(nEnd))).Copy
ActiveSheet.Range("a3").Select
ActiveSheet.Paste link:=True
Selection.PasteSpecial Paste:=xlFormats
nEnd = 0
nStart = 0
bComplete = False
i = i - 1       'wir sind quasi über das ziel hinausgeschossen
For Spalte = 1 To 23
ActiveSheet.Columns(Spalte).ColumnWidth = Sheets(2).Columns(Spalte).ColumnWidth
Next Spalte
End If
Application.ScreenUpdating = True
Worksheets("Inhaltsverzeichnis").Activate
End Sub

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Druckformate übernehmen
21.03.2006 11:17:08
u_
Hallo,
das einfachste ist, wenn du dein Ursprungsblatt kopierst und dann alle Inhalte löschst.
If nNumber Sheets(2).Cells(i, 1).Value Then
If Not bComplete Then
' neues sheet anlegen
nNumber = Sheets(2).Cells(i, 1).Value
nStart = i
Set actSh = Sheets(2).Copy (after:=Worksheets(Worksheets.Count))
actsh.cells.clear
' sheet benennen
actsh.Name = Trim(Str(nNumber))
Sheets(2).Range("a1:u2").Copy actsh.Range("A1")
bComplete = True
Else
Gruß
Geist ist geil!
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