Laufende Spalten-Nummerierung wenn Eingeblendet
07.09.2006 20:08:21
Andreas
Vor einiger Zeit hatte ich die Frage "Laufende Zeilen-Nummerierung wenn Eingeblendet" formuliert, die mir auch bestens beantwortet wurde.
Dazu hier kurz die das Lösungsscript:
---------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rng As Range, r As Long
'If Not Target.Column = 1 Then Exit Sub
r = 1
For Each rng In Range("A8:A" & Cells(Rows.Count, 1).End(xlUp).Row)
If Not rng.Rows.Hidden Then
rng = r
r = r + 1
End If
Next
End Sub
----------
Dazu gehört, dass man in die entsprechenden Zeilen (A8:A) die Formel "Zeile()-7" eingibt.
Das funktioniert wie gesagt genauso, wie ich es mir vorgestellt habe.
Jetzt habe ich mir gedacht, dass ich das gleiche auch mit Splaten hinbekomme.
Folgende Logik habe ich für die Zellenbereich (C2:2) angewendet:
Die Formel in den Zellen geändert in: "Spalte()-2"
Die Nummerierung funzt auch.
Jetzt noch das Script angepasst:
---------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rng As Range, r As Long
'If Not Target.Column = 1 Then Exit Sub
r = 1
For Each rng In Range("C2:C" & Cells(Columns.Count, 1).End(xlUp).Column)
If Not rng.Column.Hidden Then
rng = r
r = r + 1
End If
Next
End Sub
---------
Doch leider passiert gar nichts, wenn ich denn ein Spalte ausblende..., hm?
Im Script selber habe ich halt die Namen "Rows", bzw. "Row" gegen "Columns/Column" ausgetauscht und den Bereich mit "C2:2" in Spaltensicht geändert.
Kann mir noch mal jemand Nachhilfe dazu geben, wo liegt mein Denkfehler.
Danke.
Beste Grüße,
Andreas.