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

letzten Wert in der Spalte vergleichen

letzten Wert in der Spalte vergleichen
07.12.2018 10:28:21
Ulf
Moin, moin
habe mich wohl wieder verrannt.
Ich möchte den letzen Wert in Spalte C überprüfen, ob dieser schon in der Spalte C vorhanden ist und wenn ja dies in einer MsgBox ausgeben.
Leider fängt er immer die Spalte von oben an zu durchsuchen und nimmt nicht den letzen Wert aus der Spalte.
https://www.herber.de/bbs/user/125951.xlsm
Folgenden Code habe ich gefunden und angepasst:
Private Sub CB_Find_Click()
Dim Lz As Long
Dim intr2 As Integer
Dim Spalte As Integer
Spalte = 3
For Lz = 1 To Cells(Rows.Count, 3).End(xlUp).Row
For intr2 = Lz + 1 To Cells(Rows.Count, 3).End(xlUp).Row
If Cells(Lz, Spalte) = Cells(intr2, Spalte) Then
MsgBox Cells(Lz, Spalte).Value & " ist doppelt vorhanden (Zeile " & intr2 & ")"
End If
Next intr2
Next Lz
End Sub
Bin ich völlig auf dem falschen Dampfer und der Code ist dafür nicht geeignet?
Gruß
Ulf

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: letzten Wert in der Spalte vergleichen
07.12.2018 10:36:17
Rudi
Hallo,
Sub aaa()
Dim vntLast
vntLast = Cells(Rows.Count, 3).End(xlUp)
If Application.CountIf(Columns(3), vntLast) > 1 Then
MsgBox vntLast & " ist mehrfach vorhanden!" & vbLf _
& "Zeile: " & Application.Match(vntLast, Columns(3), 0), , _
"gebe bekannt..."
End If
End Sub

Gruß
Rudi
Danke, danke, danke
07.12.2018 11:00:38
Ulf
Der Code sieht auch einfach aus (wenn man es kann) und ich kann ihn nachvollziehen.
Das dachte ich bei dem anderen auch, habe aber nicht nachvollziehen können, warum er immer von oben angefangen hat zu suchen.
Gruß Ulf
AW: Danke, danke, danke
07.12.2018 11:08:59
Torsten
Hallo,
das lag bei dir an der Zeile
For Lz = 1 To Cells(Rows.Count, 3).End(xlUp).Row
wenn du von unten anfangen willst muesstest du schreiben
For Lz = Cells(Rows.Count, 3).End(xlUp).Row To 1 Step -1
Aber Rudi's code funktioniert ja.
Gruss Torsten
Anzeige
AW: Danke, danke, danke
07.12.2018 11:49:30
Ulf
Stimmt, jetz fängt er von unten an zu suchen, dann nimmt er aber nicht den letzten Wert aus der Spalte.
So passt das besser. Mit dem kleinen Schönheitsfehler, dass in der MsgBox auch die letzte Zeile mit ausgegeben wird und nicht die erste doppelte.
Sub aaa()
Dim Lz As Long
Dim intr2 As Integer
Dim Spalte As Integer
Spalte = 3
Lz = Cells(Rows.Count, 3).End(xlUp).Row
For intr2 = Lz + Cells(Rows.Count, 3).End(xlUp).Row To 1 Step -1
If Cells(Lz, Spalte) = Cells(intr2, Spalte) Then
MsgBox Cells(Lz, Spalte).Value & " ist doppelt vorhanden (Zeile " & intr2 & ")"
End If
Next intr2
End Sub
Gruß Ulf
Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige