Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

abgleich

Forumthread: abgleich

abgleich
18.10.2018 09:33:20
Max
Hallo zusammen: ich hab folgendes makro geschrieben, dass 2 spalten abgleicht. es funktioniert aber nicht wie gewünscht, weil die letzte zahl nicht grün wird, weil sie nicht in der such-range ist. zudem funktioniert es auch nicht, wenn ich die Kommastellen manuell anpasse.
Sub checkSCD()
Dim i As Variant
Dim SuchMich As Variant
Dim letztezeile As Variant
Columns(4).Interior.Color = xlNone
Columns(11).Interior.Color = xlNone
'Columns(18).NumberFormat = "0.00"
'Columns(8).NumberFormat = "0.00"
letztezeile = Worksheets(5).Cells(Rows.Count, 4).End(xlUp).Row
'Aus Spalte H sollen alle Werte in Spalte R gefunden werden
'Wird ein Wert in beiden Spalten gefunden => Grün (Egal wie oft er gefunden wird)
'Wird ein Wert aus Spalte H NICHT in Spalte R gefunden => RotFärbung Wert in Spalte H
'In Spalte R verbleiben die Werte weiss, die nicht gefunden wurden und nach denen auch nicht  _
gesucht wurde
For i = 4 To letztezeile
'suchmich = ActiveSheet.Cells(i, 8).Value
SuchMich = Cells(i, 4)
zeile1 = 4
blubb:
Range(Cells(zeile1, 11), Cells(letztezeile, 11)).Select
SuchMich = Format(SuchMich, "0.00")
Set bereich = Selection.Find(What:=SuchMich, After:=ActiveCell, LookIn:=xlValues,  _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True _
, SearchFormat:=False)
'            Selection.Find(What:="3.0000", After:=ActiveCell, LookIn:=xlValues, _
'        LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
'        MatchCase:=True, SearchFormat:=False).Activate
'    Selection.FindNext(After:=ActiveCell).Activate
If Not bereich Is Nothing Then
Range(Cells(zeile1, 11), Cells(letztezeile, 11)).Find(What:=SuchMich, LookIn:= _
xlValues, LookAt:= _
xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Select
'Überprüft, ob die Werte gleich sind
If ActiveCell.Value = Cells(i, 4).Value Then
ActiveCell.Interior.Color = vbGreen
Cells(i, 4).Interior.Color = vbGreen
zeile1 = ActiveCell.Row + 1
If zeile1  6 (dem Startwert von Zeile1)
'=> ist Zeile1 = 6 => Er hat den Wert nicht gefunden => Rotfärbung Spalte H
If zeile1 = 4 Then Cells(i, 4).Interior.Color = vbYellow
End If
'hier soll er den nächsten wert in spalte suchen
Next i
End Sub

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: abgleich
18.10.2018 13:04:56
Rob
Beispieldatei zum Debuggen verfügbar? Bitte hochladen.
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige