Formatierungen ausserhalb Druckbereich aufheben
26.04.2005 14:08:12
Reinhard
@Alle, gibt es eine kürzere Version für:
z = ActiveSheet.Range(ActiveSheet.PageSetup.PrintArea).Cells(Range(ActiveSheet.PageSetup.PrintArea).Count).Row
?, da schreibt man sich ja die Finger wund *gg, mit spelialcells und lastcell kam ich nicht weiter.Deshalb Frage noch offen
Hallo Uli,
wenn du mahgst kannst du die beiden Ranges mit union oder merge (verwechsel das immer ) zusammenfassen um den Code zu verkleinern.
Sub tt()
For Each ws In ThisWorkbook.Worksheets
If ActiveSheet.PageSetup.PrintArea <> "" Then
z = ActiveSheet.Range(ActiveSheet.PageSetup.PrintArea).Cells(Range(ActiveSheet.PageSetup.PrintArea).Count).Row
s = ActiveSheet.Range(ActiveSheet.PageSetup.PrintArea).Cells(Range(ActiveSheet.PageSetup.PrintArea).Count).Column
Range(Cells(1, s + 1), Cells(65536, 256)).Select
With Selection
.Borders(xlDiagonalDown).LineStyle = xlNone
.Borders(xlDiagonalUp).LineStyle = xlNone
.Borders(xlEdgeLeft).LineStyle = xlNone
.Borders(xlEdgeTop).LineStyle = xlNone
.Borders(xlEdgeBottom).LineStyle = xlNone
.Borders(xlEdgeRight).LineStyle = xlNone
.Borders(xlInsideVertical).LineStyle = xlNone
.Borders(xlInsideHorizontal).LineStyle = xlNone
End With
Range(Cells(z + 1, 1), Cells(65536, s)).Select
With Selection
.Borders(xlDiagonalDown).LineStyle = xlNone
.Borders(xlDiagonalUp).LineStyle = xlNone
.Borders(xlEdgeLeft).LineStyle = xlNone
.Borders(xlEdgeTop).LineStyle = xlNone
.Borders(xlEdgeBottom).LineStyle = xlNone
.Borders(xlEdgeRight).LineStyle = xlNone
.Borders(xlInsideVertical).LineStyle = xlNone
.Borders(xlInsideHorizontal).LineStyle = xlNone
End With
End If
ActiveSheet.Range("a1").Select
Next ws
End Sub
Gruß
Reinhard