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

Letzte gefüllte Zeilen formatieren

Letzte gefüllte Zeilen formatieren
12.05.2017 16:20:40
Blue
Servus Forum,
ich bräuchte mal wieder eure Hilfe.
Vor längerer Zeit hatte ich bereits Hilfe bei diesem Makro, allerdings bin ich nun an einem Punkt gekommen wo dieses nicht mehr 100% das macht was ich möchte.
Sub Tabelle_automatisch_unten_schließen()
Dim HP As HPageBreak
For Each HP In ActiveSheet.HPageBreaks
With Intersect(HP.Location.Offset(-1, 0).EntireRow, Range("B:G"))
.Borders(xlEdgeBottom).Weight = xlMedium
End With
Next
Range("$A:$G").Select
ActiveSheet.PageSetup.PrintArea = "$A:$G"
End Sub
Dieses Makro fügt je Seitenumbruch eine Rahmenlinie ein und auch gleich den gewünschten Druckbereich.
Bei dem Rahmen habe ich folgendes Problem, wenn auf der letzten Seite noch nicht die letzte Zeile meiner Tabelle gefüllt ist, fügt er hier auch eine Rahmenlinie ein.
Wie bekomme ich es hin das er nur bis zum vorletzten Seitenumbruch die Linien einfügt?
mfg Blue Bird

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

Betreff
Datum
Anwender
Anzeige
AW: Letzte gefüllte Zeilen formatieren
13.05.2017 10:41:38
fcs
Hallo Blue Bird,
Seitenwechsel sind immer etwas schwieriig zu fassen.
Grundsätzlich sollte der Druckbereich aber angepasst werden, bevor man die horizontalen Seitenwechsel bearbeiten möchte, da der Druckbereich die Seitenwechsel beeinflussen kann.
Das Problem mit der letzten Datenzeile konnte ich nicht nachvollziehen.
Es kann aber sein, dass du unterhalb der eigentlichen Daten noch formatierte Zeilen hast, die dann Teile des Druckereiches sind und ggf. einen horizontalnén Seitenumbruch an unerwünschter Position verursachen.
Nachfolgend dein Makro angpasst, so dass bei mir unter Excel 2010 funktioniert.
LG
Franz
Sub Tabelle_automatisch_unten_schließen()
Dim HP As HPageBreak
Dim StatusView As Long
Dim Zeile_L As Long
If ActiveWindow.View = xlNormalView Then
StatusView = ActiveWindow.View
ActiveWindow.View = xlPageBreakPreview
End If
With ActiveSheet
'Letzte Datenzeile
Zeile_L = .Cells.Find(what:="*", after:=.Cells(1, 1), LookIn:=xlValues, _
lookat:=xlWhole, searchdirection:=xlPrevious).Row
.PageSetup.PrintArea = "$A:$G"
.Calculate
For Each HP In .HPageBreaks
If HP.Location.Row > Zeile_L Then Exit For
With Intersect(HP.Location.Offset(-1, 0).EntireRow, .Range("B:G"))
.Borders(xlEdgeBottom).Weight = xlMedium
End With
Next
End With
If StatusView = xlNormalView Then
ActiveWindow.View = StatusView
End If
End Sub

Anzeige
AW: Letzte gefüllte Zeilen formatieren
16.05.2017 07:52:50
Blue
Servus Franz,
dein Makro funktioniert bei mir leider nicht.
Habe es aber auch so hinbekommen das es funktioniert.
Hatte in weiteren Spalten neben der eigentlichen Tabelle noch Einträge die weiter nach unten kopiert wurden.
Somit hat sich der Zeilenumbruch auch tiefer ergeben wie eigentlich gewünscht.
mfg Blue Bird

309 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige