Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1468to1472
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

ID mit fortlaufender Nummerierung

ID mit fortlaufender Nummerierung
17.01.2016 20:19:51
Andy
Hallo zusammen,
ich möchte gerne eine ID in Abhängigkeit von Anzahl von einem Datum und der Anzahl der Zeilen aus diesem Jahr erstellen.
Meine Daten sehen so aus:
Spalte1 Spalte2
01.01.2014 Daten1
03.01.2014 Daten2
08.01.2014 Daten3
01.05.2015 Daten4
01.06.2015 Daten5
08.08.2015 Daten6
01.01.2016 Daten7
01.07.2016 Daten8
08.07.2016 Daten9
Das Ergebnis soll so aussehen (erste Spalte ID); also erst das Jahr und dann eine fortlaufende Nummerierung:
Spalte1 Spalte2 Spalte3
2014001 01.01.2014 Daten1
2014002 03.01.2014 Daten2
2014003 08.01.2014 Daten3
2015001 01.05.2015 Daten4
2015001 01.06.2015 Daten5
2015001 08.08.2015 Daten6
2016001 01.01.2016 Daten7
2016002 01.07.2016 Daten8
2016003 08.07.2016 Daten9
Kann mir hierzu ggfs. jemand weiterhelfen? Gerne auch als VBA.
Gruß Andy

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ID mit fortlaufender Nummerierung
18.01.2016 07:37:46
Sepp
Hallo Andy,
da eine ID ja eindeutig sein muss, würde ich diese mit VBA eintragen.
Füge vor der ersten Spalte eine neue Spalte ein.
Schreibe in A2 folgende Formel (Matrixformel! Eingabe mit Strg+Shift+Enter abschliessen)
{=JAHR(B2)*1000+SUMME(WENN(JAHR($B$2:B2)=JAHR(B2);1))}

Ziehe die Formel bis zu letzten benutzten Zeile in B, kopiere die Zellen mit Strg+C und füge sie als Werte ein (Inhalte einfügen > Werte)
Kopiere dann diesen Code in das Modul der Tabelle.
' **********************************************************************
' Modul: Tabelle1 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range, lngN As Long

On Error GoTo Errorhandler
Application.EnableEvents = False

If Not Intersect(Target, Range("B:B")) Is Nothing Then
  For Each rng In Intersect(Target, Range("B:B"))
    If IsDate(rng) And rng.Offset(0, -1) = "" Then
      rng.Offset(0, -1).FormulaArray = _
        "=YEAR(B" & rng.Row & ")*1000+SUM(IF(YEAR($B$2:B" & _
        rng.Row & ")=YEAR(B" & rng.Row & "),1))"
      rng.Offset(0, -1) = rng.Offset(0, -1).Value
    End If
  Next
End If

Errorhandler:
Application.EnableEvents = True
End Sub

Ab jetzt wird die ID bei einer Eingabe in B automatisch eingefügt.
Gruß Sepp

Anzeige
AW: ID mit fortlaufender Nummerierung
19.01.2016 23:18:13
Andy
Vielen Dank für die Unterstützung.
Mir reichen die Formeln von Bernd.
Bei der Lösung von Sepp kommt es leider in meiner Mappe zu einer Zeilenverschiebung (der Bezug Ergebnis zur Datenspalte), wenn die Daten in den Zeilen nicht sortiert sind.
Gruß Andy

68 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige