Automatische Nummerierung?

Bild

Betrifft: Automatische Nummerierung?
von: Dieter
Geschrieben am: 19.02.2005 16:33:17
Hallo,
ich hab in einer Tabelle in Spalte A von A2 ab nach unten eine Nummerierung,
die ich mit der Formel =ZEILE()-1 erzeuge.
Wenn ich nun Zeilen einfüge, muss ich die Formel von Hand ergänzen. Für mich
ist das kein Problem, aber die Damen die damit arbeiten, hätten es gern
bequemer.
Kann man das mit einem Makro automatisieren und vor allem, wie?
Noch besser wäre, wenn ein neuer Datensatz angelegt wird, dass die Nummerierung
automatisch weitergeführt wird.
Gruß Dieter

Bild

Betrifft: AW: Automatische Nummerierung?
von: Josef Ehrensberger
Geschrieben am: 19.02.2005 16:37:31
Hallo Dieter!
Das geht auch ohne VBA!
 
 AB
11test
2  
3  
4  
52test
63test
7  
8  
94test
Formeln der Tabelle
A1 : =WENN(B1<>"";ANZAHL2($B$1:B1);"")
A2 : =WENN(B2<>"";ANZAHL2($B$1:B2);"")
A3 : =WENN(B3<>"";ANZAHL2($B$1:B3);"")
A4 : =WENN(B4<>"";ANZAHL2($B$1:B4);"")
A5 : =WENN(B5<>"";ANZAHL2($B$1:B5);"")
A6 : =WENN(B6<>"";ANZAHL2($B$1:B6);"")
A7 : =WENN(B7<>"";ANZAHL2($B$1:B7);"")
A8 : =WENN(B8<>"";ANZAHL2($B$1:B8);"")
A9 : =WENN(B9<>"";ANZAHL2($B$1:B9);"")
 


Gruß Sepp
P.S.: Rückmeldung nicht vergessen!
Bild

Betrifft: AW: Automatische Nummerierung?
von: Dieter
Geschrieben am: 19.02.2005 16:42:13
Hallo,
danke, aber das geht an meinem Problem etwas vorbei. Mir gehts in erster Linie darum,
dass die Formeln automatisch auf eingefügte zeilen übertragen werden.
Gruß Dieter
Bild

Betrifft: AW: Automatische Nummerierung?
von: Josef Ehrensberger
Geschrieben am: 19.02.2005 16:49:13
Hallo Dieter!
Mit VBA geht's so!

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range, i As Integer, lastRow As Long
'Nur wirksam bei Änderungen im Spalte "B"
If Target.Column = 2 Then
lastRow = Range("B65536").End(xlUp).Row
On Error GoTo ERRORHANDLER
With Application
.EnableEvents = False      'Ereignisse ausschalten
.ScreenUpdating = False    'Bildschirmaktualisierung ausschalten
.Cursor = xlWait           'Cursor "ruhigstellen"
End With
   'Alle Zellen des Bereiches durchlaufen
   For Each rng In Range("B1:B" & lastRow)
   
   rng.Offset(0, -1) = ""  '"Alte" Nummereierung entfernen
   
      If rng <> "" Then    'Nummerierung neu setzen
         i = i + 1
         rng.Offset(0, -1) = i
      End If
      
   Next
End If
ERRORHANDLER:  'Fehlerbehandlung
With Application
.EnableEvents = True     'Ereignisse einschalten
.ScreenUpdating = True   'Bildschirmaktualisierung einschalten
.Cursor = xlDefault
End With
End Sub

Der Code gehört in das Modul der Tabelle!
(Rechtsklick auf Blatteregister > Code anzeigen > in das rechte Fenster Kopieren!)
Beim Löschen oder Einfügen von Zellen/Zeilen wird die Nummerierung erst
nach einem Eintrag in Spalte "B" aktualisiert!
Gruß Sepp
P.S.: Rückmeldung nicht vergessen!
Bild

Betrifft: AW: Automatische Nummerierung?
von: Dieter
Geschrieben am: 19.02.2005 17:04:17
Hallo,
danke, nicht ganz so, wie ich mir das vorstellt habe, aber schon mal ein Fortschritt.
Gruß Dieter
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Automatische Nummerierung?"