Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1596to1600
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
Fortlaufende Nummer inkl. Jahr
13.12.2017 14:54:42
Sandro
Hallo Zusammen
Bei einem VBA Code einer UserForm komme ich auf keinen grünen Zweig und brauche eure Hilfe.
Die Box soll automatisch eine fortlaufende Nummer nach folgendem Muster generieren "JJ-000". Also 17-001, 17-002 usw. wenn im Jahr 2018 ein Auftrag erfasst wird wechselt es von 17-000 auf 18-000 wenn möglich soll es dann wieder bei 0 beginnen und nicht fortfahren.
Aufgrund meiner beschränkten VBA Kenntnisse komme ich trotz Google nicht weiter, bei meinem Code wird das Format immer so ausgegeben: "2017-1"
Kann mir jemand helfen? Dort wo "?" steht, wusste ich nicht was reinschreiben.
Danke & Grüsse
Sandro
Hier mein Code:
Private Sub UserForm_Initialize()
Sheets("Erfassung").Select
Sheets("Erfassung").Cells(Rows.Count, 1).End(xlUp).Select
If Selection.Row = 1 Then
Auftragsnummer.Text = "001"
Else
Auftragsnummer.Text = Year(Date) & "-" & Cells(Selection.Row, 1).Value + 1
End If
Cells(Selection.Row + 1, 1).Select
Selection.NumberFormat = ("?")
End Sub

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fortlaufende Nummer inkl. Jahr
13.12.2017 15:25:38
Phi
Die fortlaufende Nummer steht in Spalte A.

NeueNr = right(Year(Now),2) & "-" & Format(worksheetfunction.countif(Columns(1), Right(Year(Now) _
,2) & chr(42)), "000")
Dies kann in eine USerForm oder eine Zelle geschrieben werden.
AW: Fortlaufende Nummer inkl. Jahr
14.12.2017 06:52:15
Sandro
Hallo Phi
Danke für die Rückmeldung. Wenn das Jahr 2018 beginnt, fängt dein Code dann wieder bei 18-001 an? Der Rest war mir klar und funktioniert wunderbar.
Gruss
Sandro
AW: Fortlaufende Nummer inkl. Jahr
13.12.2017 15:59:10
Rudi
Hallo,
ich würde das als fortlaufende Zahl einfügen und den - nur per Format darstellen. Dann kannst du leich die aktuelle Nummer ermitteln.
Private Sub UserForm_Initialize()
Dim lngRow As Long, intJahr As Integer, intMaxNr As Integer
intJahr = (Year(Date) - 2000) * 1000    '17000 für 2017
With Sheets("Erfassung")
lngRow = .Cells(Rows.Count, 1).End(xlUp).Row
intMaxNr = WorksheetFunction.Max(.Columns(1))
End With
If lngRow > 1 Then
If intMaxNr 

Gruß
Rudi
Anzeige
AW: Fortlaufende Nummer inkl. Jahr
14.12.2017 07:04:54
Sandro
Hallo Rudi
Dein Code funktioniert super und das mit dem Darstellen als Nummern finde ich auch sinnvoll. Ein Problem habe ich nun noch, die Werte werden in eine Tabelle im Excel übertragen, dort habe ich zwar die Spalte so formatiert, dass der "-" dazwischen kommt. Jedoch muss ich das bei jedem Eintrag erneut von Hand machen. Gibt's da einen Trick um das in den Code zu integrieren?
Gruss
Sandro
AW: Fortlaufende Nummer inkl. Jahr
14.12.2017 09:41:36
Rudi
Hallo,
entweder die ganze Spalte vorab formatieren oder
DieZelle.numberformat=“00-000“
Gruß
Rudi
AW: Fortlaufende Nummer inkl. Jahr
14.12.2017 10:05:51
Sandro
Danke Rudi, das war genau was ich gesucht habe! mit numberformat=“00-000“ funktioniert es.
Vielen Dank für deine Hilfe.
Gruss
Sandro
Anzeige

15 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige