Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1800to1804
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

VBA doppelte Werte Nummerierung

VBA doppelte Werte Nummerierung
04.01.2021 11:37:41
Ayhan
Hallo zusammen,
in Bezug auf VBA bin ich relativ neu, leider stehe ich vor einem Problem, dass ich nicht lösen kann.
Deshalb wollte ich mir helfen lassen, um voranzukommen.
Problem:
In Spalte A stehen Nummern diese sollen in der Spalte B nach Eingabe der Startnummer als Beispiel A8085 fortlaufend nummeriert werden.
Falls doppelte Werte in Spalte A auftauchen, soll dann schon die vergebene Nummer in Spalte B genommen werden. Falls noch keine Nummer vergeben wurde, soll weiterhin fortlaufend nummeriert werden.
Beispiel:
Spalte A | Spalte B
1084-B | A8085
1085-B | A8086
1086-B | A8087
1084-B | A8085

Leider kam ich noch nicht auf die zündende Idee, wie ich das unter VBA darstellen soll.
Ich könnte mit einer Schleife und IF-Anweisung Spalte B auf einen Wert überprüfen lassen und falls nicht fortlaufend nummerieren. Aber leider weiß ich nicht, was ich mache, wenn ich auf einen doppelten Wert treffe.
Über eure Hilfe wäre ich dankbar.
Viele Grüße
Achim

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA doppelte Werte Nummerierung
04.01.2021 12:06:34
worti
Hallo Achim,
zb: so:
Sub Startnummern()
Dim lngZeile As Long
Dim intStartnummer
Dim rngC As Range
Cells(1, 2).Value = "A" & 8085
intStartnummer = 8086
For lngZeile = 2 To Cells(Rows.Count, 1).End(xlUp).Row
Set rngC = Range("A1:A" & lngZeile - 1).Cells.Find(Cells(lngZeile, 1).Value)
If rngC Is Nothing Then
Cells(lngZeile, 2).Value = "A" & intStartnummer
intStartnummer = intStartnummer + 1
Else
Cells(lngZeile, 2).Value = rngC.Offset(0, 1).Value
End If
Next lngZeile
End Sub

Gruß Worti
AW: VBA doppelte Werte Nummerierung
04.01.2021 12:36:55
Ayhan
Hi worti,
vielen Dank, dass ich genau was ich gesucht habe. :)
Anzeige
Warum VBA?
04.01.2021 12:18:06
RPP63
Moin!
Wenn die Nummer in Spalte B immer mit A beginnt, ist es eine simple Formel in B3, die heruntergezogen wird:
(achte auf das Zahlenformat "A"0)
 AB
1Spalte ASpalte B
21084-BA8085
31085-BA8086
41086-BA8087
51084-BA8085

ZelleFormatWert
B3"A"08086

ZelleFormel
B3=WENNFEHLER(SVERWEIS(A3;A$2:B2;2;0);B2+1)

Gruß Ralf
Anzeige
Korrektur
04.01.2021 12:21:25
RPP63
Besser so in B3:
=WENNFEHLER(SVERWEIS(A3;A$2:B2;2;0);MAX(B$2:B2)+1)

AW: Korrektur
04.01.2021 12:39:08
Ayhan
Hallo Ralf,
vielen Dank für die Lösung. Die ist auch sehr hilfreich für mich.

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige