Clever-Excel-Forum

Normale Version: VBA - Zeilen/Spalten außerhalb des Druckbereichs aus-/einblenden
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich brauche eure Hilfe. Leider bin ich ein absoluter Anfänger was VBA betrifft.  :20:
Habe schon im Netz nach einem passenden VBA-Code gesucht, aber leider vergebens.

Ich habe eine Excel Datei mit einigen (sehr vielen) Tabellenblättern. Die Blätter sind mit verschieden Tabellen befüllt und für jedes Blatt ist ein Druckbereich festgelegt. 
Außerhalb des Druckbereichs befinden sich 2-3 Spalten und 1-4 Zeilen, welche für meine Berechnungen/Plausichecks nötig sind. Andere sollen meine Hilfsspalten natürlich nicht sehen.

Jetzt meine Frage … ist es möglich per VBA-Code alle Zeilen und Spalten außerhalb des Druckbereichs für alle Blätter zeitgleich auszublenden bzw. einzublenden?

Bin für jeden Tipp dankbar  :17:
Hi Fee,


so, dürfen allerdings pro Blatt nur ein Druckbereich sein!

LG
Alexandra
Hallo Alexandra,

genau, pro Blatt nur ein Druckbereich.

Ich werde es später versuchen. Ich danke Dir schon vielmals für Deine schnelle Hilfe Smile

LG
fee_81
Hallo,

z.B. so:
Sub NurDruckbereicheSichtbar()
Dim rngP As Range
Dim oWs As Worksheet
For Each oWs In ActiveWorkbook.Worksheets
Set rngP = oWs.Range("Print_Area").Areas(1)
If Not rngP Is Nothing Then
oWs.Columns.Hidden = True
rngP.EntireColumn.Hidden = False
Application.Goto rngP.Cells(1), True
If rngP.Row > 1 Then
oWs.Rows("1:" & rngP.Row - 1).Hidden = True
End If
If rngP.Row + rngP.Rows.Count < oWs.Rows.Count Then
oWs.Rows(rngP.Row + rngP.Rows.Count & ":" & oWs.Rows.Count).Hidden = True
End If
End If
Next oWs
End Sub

Sub AllesEinblenden()
Dim oWs As Worksheet
For Each oWs In ActiveWorkbook.Worksheets
oWs.Columns.Hidden = False
oWs.Rows.Hidden = False
Next oWs
End Sub
Gruß Uwe