Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

per VBA "Datenüberprüfung" prüfen

Forumthread: per VBA "Datenüberprüfung" prüfen

per VBA "Datenüberprüfung" prüfen
01.04.2016 08:59:24
r2d2
Hallo,
ich habe eine "Auswahlliste" erstellt, die ich als Quelle unter "Datenüberprüfung" für "Auswahlbereiche" hinterlegt habe.
Wenn man im "Auswahlbereich" etwas anderes eingibt, als unter "Datenüberprüfung" angegeben wurde (in diesem Fall also die Quelle mit der "Auswahlliste") bekommt man die Fehlermeldung: "Der eingegebene Wert ist ungültig".
Soweitsogut...
Nun kommt es aber vor, daß in der "Auswahlliste" die Daten geändert werden und somit im "Auswahlbereich" ggf. noch Daten stehen, die eigentlich nicht mehr gültig sind.
Wie kann ich das nun (z.B. per Makro) prüfen?
Danke, Gruß, r2d2

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: per VBA "Datenüberprüfung" prüfen
01.04.2016 09:13:20
Daniel
Hi
hinterlege die zulässigen Begriffe in einer Spalte auf dem Tabellenblatt und verweise in der Güligkeitsprüfung bei Quelle auf diesen Zellbereich.
Erstelle parallel für die Zellen mit der Gültigkeitsprüfung eine bedingte Formatierung mit folgender Formel als Regel:
=ZählenWenn(Zellbereich der Gültigkeitsprüfung; Zelle)=0
und einer auffälligen Formatierung (rot).
wenn du jetzt den Text in der Liste änderst, werden dann die Zellen mit den nicht mehr gültigen Texten über die Bedingte Formatierung gefärbt.
Gruß Daniel

Anzeige
AW: per VBA "Datenüberprüfung" prüfen
01.04.2016 09:22:09
r2d2
Das funktioniert soweit... nur habe ich auch Leerzellen mit im Gepäck und die werden dann als "nicht gültig" erkannt.

AW: per VBA "Datenüberprüfung" prüfen
01.04.2016 10:06:27
Daniel
HI
dann passe die Formel doch einfach entsprechend an und schließe die Leerzellen aus:
=Und(Zelle"";ZählenWenn(Zellbereich der Gültigkeitsprüfung; Zelle)=0)
Gruß Daniel

Anzeige
AW: per VBA "Datenüberprüfung" prüfen
01.04.2016 11:31:41
r2d2
Ja, so könnte es gehen...
Wenn aber der "Anwender" die Zeichen übersieht: wie kann ich den Abgleich per VBA lösen und gleichzeitig an einer bestimmten Stelle einen Fehler ausgeben?
Gruß
r2d2

AW: per VBA "Datenüberprüfung" prüfen
01.04.2016 20:28:17
Daniel
Hi
wenn du die bedingte Formatierung aktiv hast, kannst du mit dem Autofilter nach der entsprechenden Farbe filtern und schauen, wieviele Zellen sichtbar bleiben.
(das filtern nach Farbe kannst du mit dem Recorder aufzeichnen)
per Formel könntest du das so lösen:
ermittle neben jeder Zelle in der Gültigkeitsprüfung per ZählenWenn, wie oft der Wert in der Hauptliste vorkommt.
Addiere diese Werte zusammen, die Summe müsste gleich gross sein wie die Anzahl der Werte in der Hauptliste.
Diese kannst du mit Anzahl2(...) bestimmen (ggf noch die Überschrift(en) abziehen).
damit kannst du dann in einer Zelle anzeigen lassen, ob es noch Problemfälle gibt und wieviele.
Gruß Daniel
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Datenüberprüfung in Excel mit VBA


Schritt-für-Schritt-Anleitung

  1. Erstelle eine Auswahlliste: Lege in einem Tabellensheet eine Liste mit den gültigen Werten an, die du für die Datenüberprüfung verwenden möchtest.

  2. Datenüberprüfung einrichten: Wähle den Bereich aus, in dem die Eingaben geprüft werden sollen. Gehe zu Daten > Datenüberprüfung. Wähle bei "Zulassen" die Option "Liste" und gib den Zellbereich der Auswahlliste als Quelle an.

  3. Bedingte Formatierung hinzufügen: Wähle den gleichen Bereich aus und gehe zu Start > Bedingte Formatierung > Neue Regel. Wähle "Formel zur Ermittlung der zu formatierenden Zellen verwenden" und gib folgende Formel ein:

    =ZählenWenn(<Zellbereich der Gültigkeitsprüfung>, <Zelle>)=0

    Wähle eine auffällige Formatierung, z.B. rot, um ungültige Eingaben hervorzuheben.

  4. VBA zur Validierung nutzen: Um die Validierung per VBA durchzuführen, öffne den VBA-Editor (ALT + F11) und erstelle ein neues Modul. Hier kannst du einen Code einfügen, der die Eingaben überprüft und bei Bedarf eine Fehlermeldung anzeigt.

    Beispielcode:

    Sub DatenUeberpruefen()
       Dim Zelle As Range
       For Each Zelle In Selection
           If Zelle.Value <> "" And Application.WorksheetFunction.CountIf(Sheets("DeinSheet").Range("DeinBereich"), Zelle.Value) = 0 Then
               MsgBox "Ungültiger Wert in Zelle " & Zelle.Address, vbExclamation
           End If
       Next Zelle
    End Sub

Häufige Fehler und Lösungen

  • Fehler bei Leerzellen: Wenn Leerzellen als ungültig erkannt werden, passe die Formel für die bedingte Formatierung an:

    =UND(<Zelle> <> "", ZählenWenn(<Zellbereich der Gültigkeitsprüfung>, <Zelle>) = 0)
  • Falsche Zellreferenzen: Überprüfe, dass die Zellreferenzen in deinen Formeln korrekt sind und auf die richtige Auswahlliste verweisen.


Alternative Methoden

Eine Möglichkeit, die Datenüberprüfung in Excel zu optimieren, ist die Verwendung der Datenüberprüfung über Formeln. Statt eine Liste zu erstellen, kannst du eine Formel nutzen, um bestimmte Bedingungen zu prüfen.

Beispiel:

=UND(A1<10, A1>0)

Diese Formel erlaubt nur Werte zwischen 0 und 10.


Praktische Beispiele

  • Bedingte Formatierung mit VBA kombinieren: Du kannst VBA verwenden, um automatisch die Formatierung zu ändern, wenn ungültige Daten eingegeben werden. Beispiel:

    If Zelle.Value <> "" And Application.WorksheetFunction.CountIf(Sheets("DeinSheet").Range("DeinBereich"), Zelle.Value) = 0 Then
       Zelle.Interior.Color = RGB(255, 0, 0) ' Rot
    End If
  • Zahlen einkreisen: Wenn du Excel-Zahlen einkreisen möchtest, kannst du dies über die bedingte Formatierung und eine entsprechende Regel tun.


Tipps für Profis

  • Verwende Benutzerdefinierte Fehlermeldungen in der Datenüberprüfung, um dem Anwender hilfreiche Hinweise zu geben, was er falsch gemacht hat.

  • Nutze VBA-Recorder, um häufige Aufgaben zu automatisieren und dir Zeit zu sparen. Damit kannst du die Schritte zur Datenüberprüfung aufzeichnen und bei Bedarf wiederverwenden.


FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass nur gültige Daten eingegeben werden?
Um sicherzustellen, dass nur gültige Daten eingegeben werden, solltest du die Datenüberprüfung in Excel aktivieren und die entsprechenden Zellbereiche festlegen.

2. Was kann ich tun, wenn die Datenüberprüfung nicht funktioniert?
Überprüfe, ob die Zellreferenzen korrekt sind und ob die Quelle für die Datenüberprüfung korrekt angegeben ist. Manchmal kann auch ein Makro nötig sein, um die Überprüfung durchzuführen.

3. Wie kann ich die Datenüberprüfung in einer Excel-Datei speichern?
Die Datenüberprüfungseinstellungen werden automatisch mit der Excel-Datei gespeichert, solange du die Datei im .xlsx oder .xlsm Format speicherst.

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