ich habe in einem Feld eine Liste von Zahlen. Also so 9100000, 8100000. Diese Zahlen können sich immer ändern.
Jetzt bräuchte ich eine If-Funktion die in etwa so aussehen würde:
If Feld... = "81*" or Feld... = "71*" then
....
Kennt ihr eine Lösung?
Hallo,
verwende dazu die left() Methode.
if left(Feld,2) = 81 Or left(Feld,2) = 71 Or left(Feld,2) = 99 then
.....
End if
Hallo Hondo,
danke, aber ich glaube ich habe mich falsch ausgedrückt.
Ich muss immer die ersten 2 Zahlen jedes Eintrages in der Liste durchsuchen.
Beispiel:
Feld = 8100000,9100000
If Feld = 91 then ...
In diesem Fall hätte er mir sagen müssen, dass dort eine 91 enthalten ist.
Hallo,
versuche es mal mit if Feld like '*91*'
mit like macht man eine Teilwertsuche.
Hallo,
... like '*91*'
findet 91 irgendwo im Text, außerdem müssen Gänsefüße benutzt werden.
wenn, dann so:
... like "91*"
Hier müssen auch Gänsefüße dazu:
if left(Feld,2) = "81" Or left(Feld,2) = "71" Or left(Feld,2) = "99" then
Wenn man es genau nimmt, sollte die Zahl, so es sich denn bei den Feldern (oder Variablen) um diesen Datentyp handelt, in Datentyp Text gewandelt werden:
if left("" & Feld,2) = "81" Or left("" & Feld,2) = "71" Or left("" & Feld,2) = "99" then
oder auch:
if left(CStr(Feld),2) = "81" Or left(CStr( Feld),2) = "71" Or left(CStr( Feld),2) = "99" then
PS: habe das (vor) letzte Posting nochmal gelesen, aber nicht schlauer geworden, was nun wirklich Sache ist....
Hallo Franz,
näturlich Gänzefüßchen und keine Hochkomma.
So wie ich das verstanden habe besteht ein String mit Zahlen durch Komma getrennt.
Mal sehen was Juno dazu sagt.
PS. Ich habe den Baumenschen, der beleidigt abgehauen ist, auch geschrieben. Was meinst Du kriegt der das irgendwie gebacken?
Hallo Jonny,
ja, hab ich gelesen :)
Nun, das ist so einer, der Kritik (oder auch nur Einwände/Hinweise ) an seiner DB als persönliche Beleidigung auffaßt und nicht um die Sache diskutieren kann. Wenn er Rat nicht annehmen will, aus welchen Gründen auch immer, muß er halt mit den Schlaglöchern leben und sich nicht wundern, wenn es im Rücken weh tut. (Es ist ja nicht meiner.. ;D )
Also nochmal:
Ich habe ein Feld in dem Zahlen hintereinander aufgelistet sind.
Beispiel:
- 8100000, 9100050, 7100200
- 9100005, 7100008, 5100605
- 6100091, 4100050, 3100000
Immer nur die ersten 2 Ziffern aus jeder Zahl sind für meine IF-Anweisung relevant.
In der IF-Anweisung soll nach 91 gesucht werden. Dann wäre das richtige Ergebenis in Beispiel 1 und 2 ist 91 enthalten. Bei Beispiel 3 ist zwar auch eine 91 enthalten aber nicht in den ersten zwei Ziffern der Zahl.
Ich habe es jetzt mal so probiert, aber ohne Erfolg:
If vk_vorlage Like "91*" Or vk_vorlage Like ", 91*" Then
MsgBox "Richtig"
Exit Sub
End If
Inhalt des Feldes vk_vorlage ist:41000024, 91000002,
Vielen Dank für eure Hilfe soweit aber ich gehe jetzt einen anderen Weg um das erwünschte Ziel zu erreichen.
Hallo,
du brauchst nicht die Flinte gleich so weit ins Korn schmeissen ...
KOPIER dir das mal in deine Applikation und versuchs damit. ;)
If vk_vorlage Like "91*" Or vk_vorlage Like "*, 91*" Then
MsgBox "richtig"
Else
MsgBox "nicht richtig"
End If
Wahrscheinlich gibts einen speziellen Grund, warum die Zahlen als Text in 3-er Gruppen in einem Tabellenfeld stehen und nicht als Zahl in einer Spalte geführt werden ...
Grüße
Peter