VBA herauszufinden, ob ein Wert in Werte
Ich habe einen Wert y
, und ich möchte, um herauszufinden, ob dieser Wert innerhalb dieser Gruppe von Werten : x1, x2, ... xn
.
Kann ich es so machen:
if(y = x1 or y = x2 or .....)
Aber gibt es einen schöneren Weg? pseudocode:
if(y in (x1, x2, ...., xn))
InformationsquelleAutor Jaanus | 2013-03-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnten Sie schreiben, eine Helfer-Funktion, wie diese:
Den zweiten parameter (den
ParamArray
) ist ein array, so kann man tatsächlich an eine unbestimmte Anzahl von Parametern.So können Sie einfach alle übergeben Ihre Werte an die Funktion, die Sie wollen zu finden, zuerst, und nach, dass alle diejenigen, die Sie durchsuchen möchten:
InformationsquelleAutor Christian Specht
Können Sie Wählen Fall in der gleichen Weise (wenn, dann, sonst):
InformationsquelleAutor Yoram Ariel
Arrays:
InformationsquelleAutor Paolo
EDIT: eine Andere Möglichkeit
InformationsquelleAutor shahkalpesh
Ganz einfache Idee, um zu überprüfen, ob der Wert vorhanden ist zu verwenden
Match
Funktion:Das problem ist nur, dass wenn der Wert nicht existiert, wird das Match-Funktion gibt einen Fehler zurück. Daher sollten Sie die Verwendung von Fehlerbehandlung Technik.
Dass Aussehen könnte für den nicht vorhandenen Wert '70':
Leider, dass funktioniert nur in Excel.
InformationsquelleAutor Kazimierz Jawor
Noch in anderer Weise
Haben Sie Zugriff auf MS-Access 2000+?
Wenn ja, fügen Sie die Access-Objekte-Bibliothek-Referenz, und Sie werden in der Lage sein zu verwenden Eval-Funktion:
Wertet string-Ausdrücke. Einige der SQL-Operatoren wie die
IN
verwendet werden kann.Sehen Dokumentation
InformationsquelleAutor Mike
Wählen Sie ein Trennzeichen angeben, das nicht vorhanden ist in einem der Werte (z.B. pipe"|"), und Sie können es eine Zeile:
InformationsquelleAutor Michael