mit diesem Macro:
'https://www.herber.de/forum/archiv/1768to1772/1770208_Duplikate_in_Msgbox_ausgeben.html
Dim Zelle As Range
Dim dic As Object
Dim X
ReDim Duplikate(0)
Set dic = CreateObject("Scripting.Dictionary")
For Each Zelle In Columns(1).SpecialCells(xlCellTypeConstants, 1)
dic(Zelle.Value) = dic(Zelle.Value) + 1
Next
For Each X In dic.Keys
If dic(X) > 1 Then
ReDim Preserve Duplikate(UBound(Duplikate) + 1)
Duplikate(UBound(Duplikate)) = X
End If
Next
If UBound(Duplikate) = 0 Then
MsgBox "keine Duplikate vorhanden"
Else
MsgBox "Duplikate: " & vbLf & Join(Duplikate, " ")
End If
kann man super doppelte Werte einer Spalte anzeigen.
Mein Problem ist, dass ich nur die ersten 3 Zeichen der Werte auf doppelt prüfen muss.
Das zweite Problem ist, dass manche Werte Zahlen sind und manche Texte.
z.B.
Die Werte "501" und "501_fd" sollen als doppelt ausgegeben werden ( in diesem Beispiel ist die 501 doppelt)
Bei meiner derzeitigen Änderung:
dic(CStr(Left(Zelle.Text, 3))) = dic(CStr(Left(Zelle.Text, 3))) + 1
wird das genannte Beispiel leider nicht als doppelt anerkannt.
Wie kann ich zum Ziel kommen?
Kann mir dabei jemand helfen?
mfg thomas