A voir également:
- Recherche un mot dans une chaine , VBA
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Trousseau mot de passe iphone - Guide
- Chaine tnt gratuite sur mobile - Guide
- Mot de passe - Guide
- Mot de passe administrateur - Guide
3 réponses
"coco;cocotte;toto;titi;FIN"
Je souhaite renvoyer le nième nom de cette chaine , comment faire svp ?
alors je vais utiliser les fonctions right et left, qui permettent de lire à droite ou à gauche après si tu souhaite un détail de mon prog demande je le ferrais:D
n étant le nième mot que l'on recherche
Sub nomdelamacro()
Dim p As Integer, n As Integer, m As Integer, c As Integer
c = 2
p = 0
m = 0
chaine = InputBox("entrer votre chaine de mot (du type ...;...;...)") & ";f"
n = InputBox("quel est la position du mot que vous cherchez? (n)")
Do Until p = n
Do Until Right(Left(chaine, m), 1) = ";"
m = m + 1
Loop
p = p + 1
m = m + 1
Loop
Do Until Left(Right(Left(chaine, m - 2), c), 1) = ";"
c = c + 1
Loop
MsgBox (Right(Left(chaine, m - 2), c - 1))
End Sub
et voilà
Je souhaite renvoyer le nième nom de cette chaine , comment faire svp ?
alors je vais utiliser les fonctions right et left, qui permettent de lire à droite ou à gauche après si tu souhaite un détail de mon prog demande je le ferrais:D
n étant le nième mot que l'on recherche
Sub nomdelamacro()
Dim p As Integer, n As Integer, m As Integer, c As Integer
c = 2
p = 0
m = 0
chaine = InputBox("entrer votre chaine de mot (du type ...;...;...)") & ";f"
n = InputBox("quel est la position du mot que vous cherchez? (n)")
Do Until p = n
Do Until Right(Left(chaine, m), 1) = ";"
m = m + 1
Loop
p = p + 1
m = m + 1
Loop
Do Until Left(Right(Left(chaine, m - 2), c), 1) = ";"
c = c + 1
Loop
MsgBox (Right(Left(chaine, m - 2), c - 1))
End Sub
et voilà
Bonjour,
Tu as aussi la fonction split() qui te découpe la chaine dans un tableau avec un séparateur choisi.
Tu n'as plus qu'à récupérer le nième élément du tableau.
eric
Tu as aussi la fonction split() qui te découpe la chaine dans un tableau avec un séparateur choisi.
Tu n'as plus qu'à récupérer le nième élément du tableau.
eric
Ouai c'est peut être mieu, ou sinon il faudrais améliorer ma macro, car je n'est pas fait le test, mais je pense quelle echoue pour n=1, que je changerais donc par
Sub nomdelamacro()
Dim p As Integer, n As Integer, m As Integer, c As Integer
c = 2
p = 0
m = 0
chaine = InputBox("entrer votre chaine de mot (du type ...;...;...)") & ";f"
n = InputBox("quel est la position du mot que vous cherchez? (n)")
Do Until p = n
Do Until Right(Left(chaine, m), 1) = ";"
m = m + 1
Loop
p = p + 1
m = m + 1
Loop
if n=1 then
msgbox("le mot est " & Left(chaine, m - 2))
Else
Do Until Left(Right(Left(chaine, m - 2), c), 1) = ";"
c = c + 1
Loop
MsgBox ("le mot est " & Right(Left(chaine, m - 2), c - 1))
End if
End Sub
Sub nomdelamacro()
Dim p As Integer, n As Integer, m As Integer, c As Integer
c = 2
p = 0
m = 0
chaine = InputBox("entrer votre chaine de mot (du type ...;...;...)") & ";f"
n = InputBox("quel est la position du mot que vous cherchez? (n)")
Do Until p = n
Do Until Right(Left(chaine, m), 1) = ";"
m = m + 1
Loop
p = p + 1
m = m + 1
Loop
if n=1 then
msgbox("le mot est " & Left(chaine, m - 2))
Else
Do Until Left(Right(Left(chaine, m - 2), c), 1) = ";"
c = c + 1
Loop
MsgBox ("le mot est " & Right(Left(chaine, m - 2), c - 1))
End if
End Sub