[Résolu] chaine.Contains un élément d'un tableau de chaine ?

chaine.Contains un élément d'un tableau de chaine ? [Résolu] - VB/VBA/VBS - Programmation

Marsh Posté le 30-07-2006 à 17:03:41    

Bonjour à tous,
 
Je suis en train de réaliser un petit programme (en rapport avec le poker, mais peu importe) en VB 2005, mais ça fait de très longs mois (années ?) que je n'avais pas reprogrammé. Je souhaiterais savoir s'il existe une solution pour remplacer ce morceau de code :
 
 
            ' Si la ligne contient un nom de joueur, alors le récupérer et
            ' l'ajouter s'il ne figure pas dans la liste des joueurs
            If ligne.Contains("bets" ) Or _
            ligne.Contains("calls" ) Or _
            ligne.Contains("folds" ) Or _
            ligne.Contains("wins pot" ) Or _
            ligne.Contains("checks" ) Or _
            ligne.Contains("shows" ) Or _
            ligne.Contains("posts" ) Or _
            ligne.Contains("ties for pot" ) Or _
            ligne.Contains("has" ) Or _
            ligne.Contains("raises" ) Or _
            ligne.Contains("mucks" ) Or _
            ligne.Contains(", it's your turn" ) Or _
            ligne.Contains("doesn't show hand" ) Or _
            ligne.Contains("is sitting out" ) Or _
            ligne.Contains("joins the table" ) Or _
            ligne.Contains("leaves the table" ) Or _
            ligne.Contains("will be allowed to play after the button" ) Then
                MsgBox("dans le if" )
                ' MAJListeJoueurs(ligne)
            End If
 
 
par quelque chose du genre
 
 
Dim mesChaines() As String = {"bets", "calls", "folds", "wins pot", "checks" ....}
 
if ligne.Contains( --- un élément de mesChaines() --- ) Then ...
 
 
?
 
J'ai regardé du côté de la nouvelle fonction Filter, mais je n'ai pas compris si elle pouvait s'appliquer dans mon cas
 
Merci par avance et au plaisir de vous lire !


Message édité par 007seb le 31-07-2006 à 23:30:28
Reply

Marsh Posté le 30-07-2006 à 17:03:41   

Reply

Marsh Posté le 30-07-2006 à 18:35:58    

Bonjour,
Ce n'est pas du Vb mais du VBA mais je suppose que le code est le même pour la manipulation de l'Array :
 
Sub test()
Dim Tablo() As Variant, TaVariable As String
Tablo = Array("bets", "calls", "folds", "wins pot", "checks" )
TaVariable = "checks"
For i = 0 To UBound(Tablo)
If TaVariable = Tablo(i) Then MsgBox i
Next
End Sub
 
pour le "ligne.Contains" je ne sais pas à quoi tu fait référence donc je ne peux pas aller plus loin...
A+

Reply

Marsh Posté le 31-07-2006 à 23:30:40    

Merci :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed