| |
Visual-Basic Einsteigerlike in if | | | Autor: I.V. | Datum: 19.10.18 10:09 |
| Hallo Zusammen,
ich stehe mal wieder auf dem Schlauch..
Und zwar möchte ich prüfen, ob der Wert einer Variablen in einer anderen Variablen enthalten ist.
Irgendwie mache ich da heute nur ...
Ich habe die Variable intNr vom Typ Integer und die Variable strText.
intNr = 5
strtext = "3, 4, 5, 6"
if cstr(intNr) like "*" & strText & "*" then
Msgbox "gefunden"
end if Leider funktioniert das nicht...
Kann mir evtl. jemand einen Tipp geben
Danke und Gruß Ingo
Wer aufhört sich zu verbessern, hört auf gut zu sein. | |
Re: like in if | | | Autor: effeff | Datum: 19.10.18 10:21 |
| Hier reicht doch einfaches INSTR...
Sub INSTR_Beispiel()
Dim Test As String
Test = "1, 2, 3, 4, 5, 6, 7, 8, 9"
Dim Suchwert As String
Dim intNr As Integer
intNr = 5
Suchwert = intNr
If InStr(Test, Suchwert) > 0 Then
MsgBox ("Gefunden")
Else
MsgBox ("Nicht gefunden")
End If
End Sub EALA FREYA FRESENA | |
Re: like in if | | | Autor: effeff | Datum: 19.10.18 10:22 |
| Oder mit einem Array:
Sub ARRAY_Beispiel()
Dim Test As String
Test = "1, 2, 3, 4, 5, 6, 7, 8, 9"
Dim Suchwert As String
Dim intNr As Integer
intNr = 5
Suchwert = intNr
Dim i As Integer
Dim arr() As String
arr = Split(Test, ", ")
Dim Gefunden As Boolean
Gefunden = False
For i = 0 To UBound(arr()) - 1
If ar(i) = Suchwert Then
Gefunden = True
End If
Next i
If Gefunden = True Then
MsgBox ("Gefunden")
Else
MsgBox ("Nicht gefunden")
End If
End Sub EALA FREYA FRESENA | |
Re: like in if | | | Autor: HenryV | Datum: 19.10.18 12:14 |
| Mit Like musst du die Abfrage umdrehen.
Dim intNr As Integer = 5
Dim strtext As String = "3, 4, 5, 6"
If strtext Like "*" & CStr(intNr) & "*" Then
MessageBox.Show("gefunden")
End If | |
Wenn, dann bitte in VB classic! | | | Autor: Souffleurlos | Datum: 19.10.18 18:25 |
| Nämlich so:
Private Sub Form_Load()
Dim intNr As Integer
Dim strtext As String
intNr = 5
strtext = "3, 4, 5, 6"
If strtext Like "*" & CStr(intNr) & "*" Then
MsgBox "gefunden"
End If
End Sub | |
Re: like in if | | | Autor: Franki | Datum: 20.10.18 01:47 |
| Hallo,
was genau funtioniert denn nicht?
Du hast ja schon Antworten bekommen, aber LIKE ist ja so eine Sache bzw. Ähnlichteit.
Das Beispiel von Souffleulos funtioniert selbst unter VB Classic nicht wenn im zu durchsuchenden Sting z.B. steht:
ntNr = 5
strtext = "3, 4, 15, 5a, 6, 51, a5b" Ist es das was du möchtest? Wenn nicht, dann musst du jeden Treffer getrennt auswerten und dann auf Plausibilität prüfen.
Erkläre doch man etwas genauer warum du eine Zahl in einem Text suchen/finden möchtest.
Gruß
Frank | |
Re: like in if | | | Autor: Souffleurlos | Datum: 20.10.18 16:59 |
| Hallo Franki,
wie kommst Du darauf, dass mein Beispiel nicht funktioniert?
Das hier:
Private Sub Form_Load()
Dim intNr As Integer
Dim strtext As String
intNr = 5
strtext = "3, 4, 15, 5a, 6, 51, a5b"
If strtext Like "*" & CStr(intNr) & "*" Then
MsgBox "gefunden"
End If
End Sub zeigt natürlich die Msgbox "gefunden". Die Sternchen schließen auch aus, direkt vor und direkt
hinter dem Suchstring steht. | |
Re: like in if | | | Autor: Souffleurlos | Datum: 20.10.18 17:01 |
| Hallo i.v.
ich würde trotzdem Like nehmen, weil das viel schneller als Instr() ist wenn es nur darum geht zu prüfen, ob ein bestimmter Teilstring in einem String enthalten ist. True/False. Instr() ist dann interessant, wenn Du dazu auch noch die genaue Position im String ermitteln willst. | |
Re: like in if | | | Autor: Franki | Datum: 21.10.18 02:01 |
| Hallo,
ich habe die Frage falsch verstanden.
Ich bin davon ausgegangen, dass nur die 5 einzeln gesucht wird und nicht in Verbindung mit 15 oder a5b z.B.
Ok wer lesen kann ist klar im Vorteil, ich habe nicht genau genug gelesen.
Gruß und sorry,
Frank | |
Re: like in if | | | Autor: I.V. | Datum: 21.10.18 07:10 |
| Hallo Franki,
keine Sorge, in möchte nur wissen ob die Zahl in der Variablen im Text vorkommt.
Erweiterte Werte kommen hier nicht vor.
Danke an alle für die Hilfe.
Gruß Ingo
Wer aufhört sich zu verbessern, hört auf gut zu sein. | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
Neu! sevEingabe 3.0
Einfach stark!
Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. Weitere InfosTipp des Monats TOP Entwickler-Paket
TOP-Preis!!
Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR...
Jetzt nur 599,00 EURWeitere Infos
|