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

fehlerhafte Eingabe farblich markieren

fehlerhafte Eingabe farblich markieren
17.06.2017 08:05:11
Matze

Hallo liebe VBA-Spezialisten.
Ich habe ein kleines Problem mit einem Code. Er macht nicht, was ich will, irgendwo ist da noch ein Fehler drin. Bestimmt seht Ihr das auf den ersten Blick :)
Folgendes soll passieren:
Auf dem Arbeitsblatt "Daten" in der Spalte 5 stehen eingegebene Daten. Diese sollen mit einer Definierten Liste aus zulässigen Daten abgeglichen werden, diese Steht auf dem Datenblatt "Vergleich" in Spalte 2.
Wenn also kein Treffer erzielt wurde, soll der geprüfte Wert rot eingefärbt werden.
Leider klappt das mit der Färbung nicht, ich vermute dort liegt ein Syntax-Problem vor.


Dim rngQuelle As Range
Dim rngZiel As Range
'Fehlerhafte Ergebnisse markieren
With ThisWorkbook.Sheets("Daten").Columns(5)
For Each rngZiel In .Columns(5)
On Error Resume Next
Set rngQuelle = ThisWorkbook.Sheets("Vergleich").Columns(2).Find(what:=rngZiel)
On Error GoTo 0
If Not rngQuelle Is Nothing Then
rngZiel.Font.ColorIndex = 3
End If
Next
End With

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

Betreff
Datum
Anwender
Anzeige
AW: fehlerhafte Eingabe farblich markieren
17.06.2017 09:04:57
Oberschlumpf
Hallo ???
Bei diesen Zeilen

With ThisWorkbook.Sheets("Daten").Columns(5)
For Each rngZiel In .Columns(5)

ist .Columns(5) einmal zu viel.
Lösch es in der ersten Zeile.
Und die Zeile

If Not rngQuelle Is Nothing Then

ist WAHR, wenn du einen "richtigen" Wert eingibst, der in Vergleich, Spalte 2 vorhanden ist.
Lösch das NOT aus der Zeile.
Und insgesamt liegen keine Syntaxfehler vor (auf diese würde der VBA-Editor sofort hinweisen), es handelt sich um Denkfehler.
Hilfts?
Ciao
Thorsten
Anzeige
AW: fehlerhafte Eingabe farblich markieren
17.06.2017 09:44:10
Matze
Hallo Oberschlumpf.
Danke schon mal für deine Hilfe.
Ich habe deine Ratschläge befolgt, und nunja, er färbt ein, aber eben alle Treffer, auch die richtigen.
Das verwirrt mich, ich lese den Code anders, aber erfahrungsgemäß macht der Rechner das schon richtig ;)
Und die Zeile

If Not rngQuelle Is Nothing Then
ist WAHR, wenn du einen "richtigen" Wert eingibst, der in Vergleich, Spalte 2 vorhanden ist.
Lösch das NOT aus der Zeile.
Das habe ich geändert in:

If rngQuelle Is Nothing Then
rngZiel.Font.ColorIndex = 3
Ich denke der Fehler liegt in dem Is Nothing, aber so richtig kapier ich den Befehl nicht.
Und insgesamt liegen keine Syntaxfehler vor (auf diese würde der VBA-Editor sofort hinweisen),  _
es handelt sich um Denkfehler.
Damit meinte ich auch einen Denkfehler von mir, war nur schlecht formuliert ;)
Mfg Matze
Anzeige
AW: fehlerhafte Eingabe farblich markieren
17.06.2017 10:09:54
Oberschlumpf
Hi Matze,
ja, hast recht, ich war zu oberflächlich.
Hab hier mal ne ganz einfache Datei mit deinem Code erstellt; der Code ist angepasst
https://www.herber.de/bbs/user/114323.xlsm
Die Erklärungen findest du als Kommentarzeilen im Code.
Hilfts?
Ciao
Thorsten
AW: fehlerhafte Eingabe farblich markieren
17.06.2017 11:03:02
Matze
Danke Oberschlumpf.
Das klappt super. Vielen Dank für deine Hilfe :)
Mfg Matze

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige