Option
Explicit
Private
Sub
Workbook_SheetActivate(
ByVal
Sh
As
Object
)
Const
C_SPALTE_START
As
Long
= 12
Const
C_SPALTE_ENDE
As
Long
= 13
Const
C_ZEILE_START
As
Long
= 18
Const
C_ZEILEN_ANZAHL
As
Long
= 28
If
Not
TypeOf
Sh
Is
Excel.Worksheet _
Then
Exit
Sub
Dim
lngZeile
As
Long
Dim
lngSpalte
As
Long
Dim
lngVon
As
Long
Dim
lngBis
As
Long
With
Sh
lngVon = C_ZEILE_START
lngBis = lngVon + C_ZEILEN_ANZAHL
For
lngSpalte = C_SPALTE_START
To
C_SPALTE_ENDE
MsgBox .Name &
":"
& vbNewLine & _
" # Zeile "
& lngVon &
" bis "
& lngBis & vbNewLine & _
" # Spalte "
& .Columns(lngSpalte).Column
For
lngZeile = lngVon
To
lngBis
.Rows(lngZeile).Hidden = (.Cells(lngZeile, lngSpalte).Value = 0)
Next
lngZeile
lngVon = lngBis + 1
lngBis = lngVon + C_ZEILEN_ANZAHL
Next
lngSpalte
End
With
End
Sub