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

VBA ein String vergleichen mit OR Operation

VBA ein String vergleichen mit OR Operation
24.04.2013 16:12:37
Kai

testString = "e"
If testString = "a" Or "e" Or "i" Or "u" Or "o" Then
'Do something...
Else
'Do something else...
End If
Leider bekomme ich immer bei Ausführung einen Type Mismatch Fehler.
Warum? Oder anders gefragt, wie kann ich diesen VBA code richtig schreiben?
Meines Erachtens kann es daran liegen das die OR Operation nicht richtig geschrieben ist.
Besten Dank für die Hilfe

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

Betreff
Datum
Anwender
Anzeige
Or Teststring = "e" ...
24.04.2013 16:16:50
Matthias
Hallo
If Teststring = "a" Or Teststring = "e" Or Teststring = "i" Or Teststring = "u" Or Teststring = "o" Then ...
Gruß Matthias

interne Hilfe zu OR verwenden!
24.04.2013 16:19:01
EtoPHG
Hallo,
' Entweder so:
If teststring = "a" Or _
teststring = "e" Or _
teststring = "i" Or _
teststring = "u" Or _
teststring = "o" Then
'Do something...
Else
'Do something else...
End If
' Oder so:
Select Case testring
Case "a", "e", "i", "u", "o"
'Do something...
Case Else
'Do something else...
End Select
Gruess Hansueli

AW: interne Hilfe zu OR verwenden!
24.04.2013 16:21:33
Kai
besten Dank,
mit der Case Funktion finde ich das definitiv übersichtlicher im code (da eh schon knapp 6 Seiten)
als 5 OR Operationen hintereinander.

Anzeige
'Or' wird so als Logik-Operator interpretiert ...
25.04.2013 00:55:54
Luc:-?
…und das Ergebnis würde dann ggf mit TextString verglichen, was sicher nicht in deinem Sinne ist, Kai!
Außerdem fktioniert das wohl nur mit Zahlen — die UDF-basierte Fml =LogOp("or";"a";"e") ergibt hier #ZAHL!, was die F-Meldung erklärt.
Wenn man eine solch verkürzende Schreibung verwenden wollte, müsste man dafür eine eigene UDF verwenden (hab' ich mal geschrieben), aber das lohnt sich nur bei hohem Schreibaufwand und da ist Select Case TestString mit den beiden Fällen Case "a", "e", "i", "u", "o" und Case Else hier wohl günstiger. Außerdem gibt's Ähnliches noch in der vbFkt Switch.
Gruß Luc :-?
Anzeige

375 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige