Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1796to1800
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Automatische Nummerierung Tabelle

Automatische Nummerierung Tabelle
30.11.2020 11:36:43
Amon
Hallo,
ich habe mir eine relativ aufwändige ToDo-Liste mit einigen Dropdown-Listenbezügen, viel bedingter Formatierung und einem bisschen VBA für verschiedene Sortierungen per Knopfdruck gebaut.
Ansich funktioniert sie sehr gut und ich arbeite schon eine Weile gerne damit, allerdings macht mich eine Sache verrückt. Wenn ich meine Tabelle um eine Zeile erweitere, indem ich bspw. in der letzten Zelle auf die Tabulatortaste drücke, erweitern sich alle Formeln und Listenbezüge ohne Probleme, sodass ich sie nicht erneut für die hinzugefügte Zeile eingeben muss. Komischerweise funktioniert das aber nicht für die Nummerierung.
Ich habe in der ersten Spalte eine Index-Nummerierung damit ich jedem ToDo eine eindeutige Nummer zuordnen kann. Also einfach eine 1 in die erste Zelle geschrieben und mit einem Doppelklick auf das Plus unten rechts auf alle darunterliegenden Zellen erweitert. Eigentlich sollte eine solche Nummerierung doch auch ohne weiteres auf die neue Zeile ausgeweitet werden oder?
Ich habe schon alles versucht und komme einfach nicht darauf, was das problem sein könnte.
Eine Formel wie bspw. =Zeile() +1 macht für mich keinen sinn, weil sich in diesem Fall ja die Indizes verändern würden sobald die Zeilen anders soriert werden.
Im Grunde ist es kein riesen Problem die Zahl jedes mal von Hand einzutragen, aber irendwie macht es mich einfach verrückt, dass es nicht funktionieren will.
Hat vielleicht jemand eine Idee woran das liegen könnte?
Über Hilfe wäre ich sehr dankebar:)
Viele Grüße
Amon

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Automatische Nummerierung Tabelle
30.11.2020 11:44:37
ralf_b
schreib doch mal z.b. A3 = A2+1
AW: Automatische Nummerierung Tabelle
30.11.2020 16:47:56
Amon
Moin Ralf,
danke für Deinen Vorschlag.
Diese Möglichkeit hatte ich auch erst im Kopf, aber in diesem Fall ändern sich die Werte, wenn ich die Zeilen per Knopfdruck sortiere und gerade das möchte ich ja nicht.
AW: ... wie von Dir angestrebt ...
30.11.2020 13:36:13
Dir
Hallo Amon,
... als eindeutige Nummerierung, ist mit Formeln nur bedingt erzielbar.
Bei z.B. einer Neusortierung Deiner Daten würden normale einfache Formeln den jeweiligen Datensatz eine unerwünschte andere Nummer zuweisen oder z.B. bei Löschen von Datensätzen sogar zu Problemen führen können.
Sollten Deine Datensätze jedoch z.B. zusätzlich ein eindeutiges Datum mit Zeit besitzen und es werden keine Datensätze gelöscht, dann wäre so bedingt eine Formellösung möglich. Ansonsten bleibt Dir mE nur weiterhin Handeingabe oder eine VBA-Lösung.
Gruß Werner
.. , - ...
Anzeige
AW: ... wie von Dir angestrebt ...
30.11.2020 16:56:21
Dir
Hallo Werner,
ich bin auch zu dem Schluss gekommen, dass es nicht per Formel funktionieren kann. Aber es gibt doch eigentlich die Funktion "Datenreihe ausfüllen" die ausgeführt wird wenn man bspw. eine 1 und eine 2 in zwei Zellen untereinander schreibt und dann mit dem kleinen Kreuz unten Rechts nach unten zieht. Ich dachte eigentlich immer, dass diese Datenreihen auch weitergeführt werden, wenn man Tabellen erweitert.
Falls dem nicht so ist: hättest du vielleicht einen Ansatz, wie man das per VBA abbilden könnte? Einen Button, der der Tabelle eine neue Zeile hinzufügt und die nummer in die erste spalte schreibt könnte ich mir auch gut vorstellen.
Viele Grüße
Amon
Anzeige
AW: VBA-Lösung gesucht thread offen owT
01.12.2020 10:52:40
neopa
Gruß Werner
.. , - ...
AW: ... wie von Dir angestrebt ...
01.12.2020 17:32:18
Dir
das könnte so aussehen.
rechte maustaste auf tabellenblattregister , code anzeigen, einfügen

option explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:B20")) Is Nothing Then  'dein tabellenbereich eintragen
If Cells(Target.Row, 1) = vbNullString Then
If IsNumeric(Cells(Target.Row - 1, 1)) And Cells(Target.Row - 1, 1) > 0 Then
Cells(Target.Row, 1).Value = Cells(Target.Row - 1, 1).Value + 1
End If
End If
End If
End Sub

AW: ... wie von Dir angestrebt ...
02.12.2020 13:12:17
Dir
Hallo Ralf,
vielen Dank für deine Mühe. Leider gibt er mir immer einen Fehler in der Zeile:
If Not Intersect (Target, Range ("A1:B20")) Is Nothing Then
aus.
Ich habe es jetzt aber durch ein bisschen Rumprobieren auf diese Weise hinbekommen:
Sub NeueZeile()
With ActiveSheet.ListObjects("Tabelle1")
.Resize Range("$A$4:$L$" & .ListRows.Count + 5)
loLetzte = Sheets("Tabelle1").Cells(Rows.Count, 1).End(xlUp).Row
Range("A" & loLetzte).Value = Application.Max(Range(Cells(5, "A"), Cells(Cells(Rows.Count, _
2).End(xlUp).Row, "B"))) + 1
Range("B" & loLetzte).Select
End With
End Sub
So wird per Knopfdruck eine Zeile hinzugefügt und in die erste Spalte die gewünschte Nummer geschrieben.
Anzeige

85 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige