Moin!
Dein Beispiel ist Murks, aber das schrieb Dir Jörg ja bereits!
C000500 kann sowohl Akte als auch Bleistifte sein!
Bevor Du Dir (eher sollen wir das ja) Gedanken über eine Userform machst, solltest Du erst mal eine vernünftige Datenbasis erstellen.
Woher kommen überhaupt die Warengruppen?
Wenn Du eine komplette Liste aller Artikel erstellst, kannst Du anhand der Bestellnummer und mittels SVERWEIS(…;…;…;0) arbeiten.
Willst Du tatsächlich mit Bereichen arbeiten, sollte die Bestellnummer der Einfachheit halber numerisch sein.
Die Bereiche dürfen dann nicht überlappen und dürfen untereinander keine Lücken aufweisen!
Dann klappt snbs INDEX(Spalte;VERGLEICH()) oder einem einfachen VERWEIS()
Das mal visuell (achte auf das Zahlenformat der ArtNr):
A
B
C
D
E
1
ab
ArtGrp
ArtNr
ArtGrp
2
C000000
Hefte
C000101
Bleistifte
3
C000100
Bleistifte
C000017
Hefte
4
C000150
Akte
C000555
#NV#
5
C000200
Mülleimer
C000209
Mülleimer
6
C000222
#NV#
Zelle
Format
Wert
A2
"C"000000
0
D2
"C"000000
101
Zelle
Formel
E2
=VERWEIS(D2;A:B)
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
@RPP63 Also ich hab die Artikel eigentlich nur als Bespiel benutzt aber das Prinzip soll schon eben so sein dass ich ein Code in einer Zahlenreihe finde eben
Von C000130 bis C000300 und er eben den Code C000200 zb finde und das in einer ganzen Liste von Zahlenreihenfolgen eben durcheinander
Kann mir da sonst keiner hier dies umsetzen odder drück ich mich schwierig aus was ich eben genau haben will es geht mir eben darum dass ich Zahlenreihen hab mit einem Buchstaben und eine 6 stellige Zahl die von C000001 bis unendlich geht und wenn ich zb eine Zahl aufruffe soll ech mir sagen in welcher Zahlenreihe ich eben bin.
zb. Zahlenreihe C000110 bis C000150 gehören zur Kategorie Bleistifte wenn ich dann C000141 aufrufe mus "Bleistifte dahin steh'n kommen.
Doch "Blleistifte zb. kann auch noch für Zahlenreihe C000620 bis C000670 stehn also wenn ich C000623 eingebe kommt auch Bleistifte.
Und das ganze sollte auch umgedreht funktionnieren wenn ich Bleistifte eingebe sollte als Resultat C000110 bis C000150 und C000620 bis C000670 als Resultat kommen.
Hast Du mein Beispiel denn einmal nachgestellt und verstanden?
Schließlich macht es genau das was Du willst.
Und ein Userform macht (wenn überhaupt) erst dann Sinn, wenn Du meine Simpel-Formel nachvollziehen kannst.
Es gibt auch eine Formelhilfe: https://support.office.com/de-de/article...b?NS=EXCEL&Version=90&SysLcid=1031&UiLcid=1031&AppVer=ZXL900&HelpId=xlmain11.chm60076&ui=de-DE&rs=de-DE&ad=DE
Dort ist die Vektorversion von VERWEIS() die für Dich interessante.
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
ist doch schon auf den ersten Blick ohne Sinn und Verstand.
könnte sich natürlich auch um einen Zahlendreher handeln. Hätte dann der Satz wenig Sinn und Verstand ? :15:
Also, im Sinne von Bürokratieabbau, weniger Bleistifte, z.B. statt 487 dann 847 - 1001, und die Denkprozesse pegeln sich wieder ein. :100:
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
'Werte in Spalte A (mit Überschrift)
'Ausgabe: Gruppe in Spalte B
lr = Cells(Rows.Count, "A").End(xlUp).Row
For i = 2 To lr
Select Case Val(Right(Cells(i, "A"), 5))
Case UW(0) To OW(0)
ret = 0
Case UW(1) To OW(1)
ret = 1
Case Else
ret = 2
End Select
Cells(i, "B") = Tx(ret)
Next i
End Sub