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

Forumthread: Wert mit Liste vergleichen

Wert mit Liste vergleichen
Lars
Hallo Formusnutzer,
ich möchte über VBA eine Variable mit einer Werteliste vergleichen. Ist die Variable gleich einem der Werte soll ein Code ausgeführt werden, sonst halt nicht.
Im Prinzip also eine IF Anweisung, bei der ich über eine ODER Verknüpfung oder ähnliches meine Variable mit verschiedenen Werten vergleichen möchte. Eine einzige exakte Übereinstimmung reicht.
In Excel schreibe ich folgendes
Wenn(Oder(C1=3;C1=7;C1=8);1;0)
in VBA bekomme ich das nicht hin und würde dort auch auf die Wiederholung von "C1" verzichten wollen, kann mir da jemand helfen?
Vielen Dank,
mfg,
Lars
Anzeige

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

Betreff
Benutzer
Anzeige
AW: Wert mit Liste vergleichen
Reinhard
Hi Lars,
probiers mal so:

Function pruef(wert As Range)
Select Case wert.Value
Case 1, 7, 8
pruef = "ja"
Case Else
pruef = "nein"
End Select
End Function

Gruß
Reinhard
AW: Wert mit Liste vergleichen
Lars
Das sieht doch nach einem guten Ansatz aus, da kann ich mit arbeiten!
Dankeschön,
gruß
Lars
Anzeige
O.w.T., Danke für die Rückmeldung :-)
Reinhard
.
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Wert mit Liste vergleichen in Excel VBA


Schritt-für-Schritt-Anleitung

Wenn du in Excel einen Wert mit einer Liste vergleichen möchtest, kannst du dies einfach mit einer VBA-Funktion umsetzen. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf dein Projekt im Projektfenster, wähle Einfügen und dann Modul.

  3. Schreibe die Funktion: Kopiere folgenden Code in das Modul:

    Function pruef(wert As Range)
       Select Case wert.Value
           Case 1, 7, 8
               pruef = "ja"
           Case Else
               pruef = "nein"
       End Select
    End Function
  4. Schließe den VBA-Editor: Drücke ALT + Q, um zum Excel-Fenster zurückzukehren.

  5. Verwende die Funktion: Du kannst nun die Funktion pruef in einer Zelle verwenden, zum Beispiel: =pruef(C1).


Häufige Fehler und Lösungen

  • Fehler: Funktion nicht erkannt
    Lösung: Stelle sicher, dass du die Funktion in einem Modul und nicht in einem Arbeitsblatt oder einer Benutzerform geschrieben hast.

  • Fehler: Falsche Werte werden zurückgegeben
    Lösung: Überprüfe, ob der Wert in der angegebenen Zelle (z. B. C1) wirklich einer der Vergleichswerte ist.


Alternative Methoden

Wenn du keinen VBA-Code verwenden möchtest, kannst du auch Formeln in Excel nutzen. Eine Möglichkeit, Werte in einer Liste zu vergleichen, ist die WENN- und ODER-Funktion:

=WENN(ODER(C1=1; C1=7; C1=8); "ja"; "nein")

Diese Formel gibt "ja" zurück, wenn der Wert in C1 entweder 1, 7 oder 8 ist.


Praktische Beispiele

Hier sind einige praktische Anwendungsbeispiele, wie du Werte mit einer Liste vergleichen kannst:

  1. Einfache Überprüfung: Wenn du eine Liste von bestimmten IDs hast, die als gültig betrachtet werden, kannst du die Funktion pruef verwenden, um schnell zu überprüfen, ob eine ID gültig ist.

  2. Datenvalidierung: Nutze die Funktion in Kombination mit bedingter Formatierung, um Zellen hervorzuheben, die gültige Werte enthalten.


Tipps für Profis

  • Erweiterte Listen: Wenn du die Liste der Vergleichswerte dynamisch gestalten möchtest, kannst du die Werte in einem Bereich (z. B. A1:A10) speichern und die Funktion entsprechend anpassen.

  • Fehlerbehandlung: Implementiere in deiner VBA-Funktion eine Fehlerbehandlung, um unerwartete Eingaben abzufangen.


FAQ: Häufige Fragen

1. Frage
Kann ich die Funktion auch für Textwerte verwenden?
Ja, du kannst die Funktion anpassen, um auch Textwerte zu vergleichen. Ändere einfach die Case-Anweisungen, um die gewünschten Textwerte zu berücksichtigen.

2. Frage
Wie kann ich die Liste der Werte einfach ändern?
Du kannst die Werte direkt in der Select Case-Anweisung anpassen oder, wie schon erwähnt, die Werte in einem separaten Bereich verwalten und die Funktion darauf verweisen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige