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

Suchfunktion

Suchfunktion
20.09.2018 17:36:26
Max
Hallo liebe Profis!
Untenstehendes Makro soll alle Werte aus Spalte H in Spalte R suchen. Wenn der Wert in Spalte R gefunden wurde, dann die Zelle aus H und die Zelle aus R grün markieren.
Problem 1: Wenn der Wert aus Spalte H in Spalte R mehrmals auftaucht, dann sollen die gefundenen Werte aus Spalte H und R (Rot sein)
Problem 2: Wenn der Wert aus Spalte H nicht in R auftaucht, dann den Wert in H rot markieren pre>
Sub findmatches()
Dim i As Variant
Dim suchmich As Variant
Columns(12).NumberFormat = "0.0000"
Columns(8).NumberFormat = "0.0000"
letztezeile = Worksheets(1).Cells(Rows.Count, 8).End(xlUp).Row
For i = 3 To letztezeile
suchmich = ActiveSheet.Cells(i, 8).Value
On Error Resume next
Range("R:R").Find(What:=suchmich, LookIn:=xlValues, LookAt:= _
xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
If Cells(i, 18) = suchmich Then
ActiveCell.Interior.ColorIndex = 50
Cells(i, 8).Interior.ColorIndex = 50
End If
End If
Next i
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Suchfunktion
21.09.2018 08:34:12
hary
Moin
Bist du dir sicher dass beide Probleme mit Rot gefaerbt werden sollen?
Hier in Code hab ich mal Rot(Wert steht nur in SpalteH) und Gruen(Wert steht in SpalteH und SpalteR) zur Unterscheidung genommen.
Ferner ist nicht klar ob SpalteH und SpalteR im selben Blatt sind.
Probier dieses Makro. Gehe davon aus, beide Spalten im selben Blatt.
Sub faerben()
Dim letztezeile As Long, i As Long
Dim suchmich
Dim rngFind As Range
Dim firstAddress As String
letztezeile = Cells(Rows.Count, 8).End(xlUp).Row
Columns(8).Interior.Color = xlNone 'erstmal alles in SpalteH entfaerben
Columns(18).Interior.Color = xlNone 'erstmal alles in SpalteR entfaerben
For i = 3 To letztezeile
suchmich = Cells(i, 8)
If Application.CountIf(Columns(18), "*" & suchmich & "*") = 0 Then 'zaehlt ob in SpalteR der  _
Wert nicht vorkommt
Cells(i, 8).Interior.Color = vbRed 'wenn nicht dann SpalteH faerben
Else 'wenn der Wert ein oder mehrmals vorkommt dann find/findnext
With Columns(18)
Set rngFind = .Find(suchmich, LookIn:=xlValues, LookAt:=xlPart)
If Not rngFind Is Nothing Then
firstAddress = rngFind.Address
Do
Cells(i, 8).Interior.Color = vbGreen 'SpalteH faerben
Cells(rngFind.Row, 18).Interior.Color = vbGreen 'und SpalteR faerben
Set rngFind = .FindNext(rngFind)
Loop While rngFind.Address  firstAddress
End If
End With
End If
Next
End Sub

gruss hary
Anzeige
AW: Suchfunktion
24.09.2018 08:53:19
Max
Hi Hary,
danke für die hilfe... leider funktioniert der code noch nicht wie gewünscht... er färbt mir alle werte in spalte H rot. Wie gesagt soll der Wert in Spalte H und Spalte R grün warden wenn der gleiche Wert 1x in beiden Spalten vorhanden ist. Wenn der Wert von Spalte H nicht in Spalte R vorhanden ist oder doppelt drin ist, dann soll Spalte R und H rot markiert warden.
Grüsse

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige