Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Sortierung zerstört fortlaufende Auftragsnummern
#11
(08.12.2021, 14:46)LCohen schrieb: Worksheet_Change, nicht Formel. Hatte ich doch gesagt.

Noch billiger: Einfach =ZEILE() verwenden im W_Change.

Ich dachte, ich hätte das Problem anderweitig gelöst. Dem ist aber nun doch nicht so. Magst du hierzu (besonders zu der Idee mit der MAX-Formel im Worksheet-Change) einmal elaborieren und eventuell zeigen, wie hier der Code aussehen mag?
Als VBA-Anfänger, der noch nie mit Worksheet_Change gearbeitet hat und sich seinen Code meistens durch Beispiele aus dem Internet zusammenschustert, erschließt sich mir das noch nicht ganz.
Antworten Top
#12
A1:B11:
A-Nr -9999
12 1
5 2
8 2
9 2
4 3
6 4
10 4
2 5
7 5
11 6


Private Sub Worksheet_Change(ByVal T As Range)
If T.Column = 2 Then
  If T.Offset(, -1) = "" Then
  Application.EnableEvents = False
  T.Offset(, -1) = WorksheetFunction.Max([A:A]) + 1
  Application.EnableEvents = True
  End If
  [A1].CurrentRegion.Sort [B1]
End If
End Sub

verwendet nicht ZEILE(), sondern MAX()+1.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste