Série dans une chaine de caractères

Le
Grandola
Bonjour à tous,

Je fais (de nouveau) appel à vous concernant le problème suivant : je
cherche à écrire une macro qui compte la répétition maximum et suivie
d'une lettre dans une chaine de caractères.

MACRO ( chaine ; lettre )

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "B" ) = 3 parce que la plus longue
suite de "B" que l'on trouve dans la chaine est de 3 "B".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "P" ) = 5 parce que la plus longue
suite de "P" que l'on trouve dans la chaine est de 5 "P".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "L" ) = 1 parce que la plus longue
suite de "L" que l'on trouve dans la chaine est de 1 "L".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "H" ) = 0 parce que la plus longue
suite de "H" que l'on trouve dans la chaine est de 0 "H".


Voila, si vous avez une piste En vous remerciant par avance.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #20427051
Bonjour.
Par exemple :

Sub test()
txt = "LNJLSBBBABOPPPPPVMPPBBG"
lettre = "P"
test1 txt, lettre
End Sub

Sub test1(txt, lettre)
For i = 1 To Len(txt)
Var = InStr(1, txt, Application.Rept(lettre, i))
If Var = 0 Then
MsgBox i - 1
Exit For
End If
Next
End Sub

Cordialement.
Daniel

Bonjour à tous,

Je fais (de nouveau) appel à vous concernant le problème suivant : je cherche
à écrire une macro qui compte la répétition maximum et suivie d'une lettre
dans une chaine de caractères.

MACRO ( chaine ; lettre )

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "B" ) = 3 parce que la plus longue
suite de "B" que l'on trouve dans la chaine est de 3 "B".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "P" ) = 5 parce que la plus longue
suite de "P" que l'on trouve dans la chaine est de 5 "P".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "L" ) = 1 parce que la plus longue
suite de "L" que l'on trouve dans la chaine est de 1 "L".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "H" ) = 0 parce que la plus longue
suite de "H" que l'on trouve dans la chaine est de 0 "H".


Voila, si vous avez une piste... En vous remerciant par avance.


PolareBear
Le #20427191
Bonjour Daniel,

Je ne connais pas : Application.REpt

Pourrais-tu m'expliquer son fonctionnement stp ?
ou
M'indiquer un lien vers un site qui documente cela ?

Merci d'avance

Raimond

Daniel.C a écrit :
Bonjour.
Par exemple :

Sub test()
txt = "LNJLSBBBABOPPPPPVMPPBBG"
lettre = "P"
test1 txt, lettre
End Sub

Sub test1(txt, lettre)
For i = 1 To Len(txt)
Var = InStr(1, txt, Application.Rept(lettre, i))
If Var = 0 Then
MsgBox i - 1
Exit For
End If
Next
End Sub

Cordialement.
Daniel

Bonjour à tous,

Je fais (de nouveau) appel à vous concernant le problème suivant : je
cherche à écrire une macro qui compte la répétition maximum et suivie
d'une lettre dans une chaine de caractères.

MACRO ( chaine ; lettre )

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "B" ) = 3 parce que la plus
longue suite de "B" que l'on trouve dans la chaine est de 3 "B".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "P" ) = 5 parce que la plus
longue suite de "P" que l'on trouve dans la chaine est de 5 "P".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "L" ) = 1 parce que la plus
longue suite de "L" que l'on trouve dans la chaine est de 1 "L".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "H" ) = 0 parce que la plus
longue suite de "H" que l'on trouve dans la chaine est de 0 "H".


Voila, si vous avez une piste... En vous remerciant par avance.






isabelle
Le #20427321
bonjour Raimond,

REPT est une fonction de la catégorie "Texte"

Répète un texte un certain nombre de fois.

Syntaxe

REPT(texte;no_fois)

Le résultat de la fonction REPT ne peut pas dépasser 32 767 caractères,
sinon la fonction REPT renvoie #VALEUR!.

=REPT("-";10) Affiche un tiret 10 fois (----------)

isabelle



PolareBear a écrit :
Bonjour Daniel,

Je ne connais pas : Application.REpt

Pourrais-tu m'expliquer son fonctionnement stp ?
ou
M'indiquer un lien vers un site qui documente cela ?

Merci d'avance

Raimond

Daniel.C a écrit :
Bonjour.
Par exemple :

Sub test()
txt = "LNJLSBBBABOPPPPPVMPPBBG"
lettre = "P"
test1 txt, lettre
End Sub

Sub test1(txt, lettre)
For i = 1 To Len(txt)
Var = InStr(1, txt, Application.Rept(lettre, i))
If Var = 0 Then
MsgBox i - 1
Exit For
End If
Next
End Sub

Cordialement.
Daniel

Bonjour à tous,

Je fais (de nouveau) appel à vous concernant le problème suivant :
je cherche à écrire une macro qui compte la répétition maximum et
suivie d'une lettre dans une chaine de caractères.

MACRO ( chaine ; lettre )

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "B" ) = 3 parce que la plus
longue suite de "B" que l'on trouve dans la chaine est de 3 "B".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "P" ) = 5 parce que la plus
longue suite de "P" que l'on trouve dans la chaine est de 5 "P".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "L" ) = 1 parce que la plus
longue suite de "L" que l'on trouve dans la chaine est de 1 "L".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "H" ) = 0 parce que la plus
longue suite de "H" que l'on trouve dans la chaine est de 0 "H".


Voila, si vous avez une piste... En vous remerciant par avance.








Grandola
Le #20427451
Merci beaucoup Daniel, ca marche super bien ! ;-)


Daniel.C a écrit :
Sub test1(txt, lettre)
For i = 1 To Len(txt)
Var = InStr(1, txt, Application.Rept(lettre, i))
If Var = 0 Then
MsgBox i - 1
Exit For
End If
Next
End Sub


bcar
Le #20428701
En 3 lignes...

Public Sub toto(ByVal chaine As String, ByVal lettre As String)
Dim x As Integer, y As Integer
Dim str As String

x = 1
str = ""
Do
y = InStr(x, chaine, str + lettre)
If y = 0 Then Exit Do Else x = y: str = str + lettre
Loop While True

Call MsgBox(str)
End Sub


Grandola a écrit :
Bonjour à tous,

Je fais (de nouveau) appel à vous concernant le problème suivant : je
cherche à écrire une macro qui compte la répétition maximum et suivie
d'une lettre dans une chaine de caractères.

MACRO ( chaine ; lettre )

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "B" ) = 3 parce que la plus longue
suite de "B" que l'on trouve dans la chaine est de 3 "B".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "P" ) = 5 parce que la plus longue
suite de "P" que l'on trouve dans la chaine est de 5 "P".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "L" ) = 1 parce que la plus longue
suite de "L" que l'on trouve dans la chaine est de 1 "L".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "H" ) = 0 parce que la plus longue
suite de "H" que l'on trouve dans la chaine est de 0 "H".


Voila, si vous avez une piste... En vous remerciant par avance.





PolareBear
Le #20433551
Merci Isabelle.

isabelle a écrit :
bonjour Raimond,

REPT est une fonction de la catégorie "Texte"

Répète un texte un certain nombre de fois.

Syntaxe

REPT(texte;no_fois)

Le résultat de la fonction REPT ne peut pas dépasser 32 767 caractères,
sinon la fonction REPT renvoie #VALEUR!.

=REPT("-";10) Affiche un tiret 10 fois (----------)

isabelle



PolareBear a écrit :
Bonjour Daniel,

Je ne connais pas : Application.REpt

Pourrais-tu m'expliquer son fonctionnement stp ?
ou
M'indiquer un lien vers un site qui documente cela ?

Merci d'avance

Raimond

Daniel.C a écrit :
Bonjour.
Par exemple :

Sub test()
txt = "LNJLSBBBABOPPPPPVMPPBBG"
lettre = "P"
test1 txt, lettre
End Sub

Sub test1(txt, lettre)
For i = 1 To Len(txt)
Var = InStr(1, txt, Application.Rept(lettre, i))
If Var = 0 Then
MsgBox i - 1
Exit For
End If
Next
End Sub

Cordialement.
Daniel

Bonjour à tous,

Je fais (de nouveau) appel à vous concernant le problème suivant :
je cherche à écrire une macro qui compte la répétition maximum et
suivie d'une lettre dans une chaine de caractères.

MACRO ( chaine ; lettre )

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "B" ) = 3 parce que la plus
longue suite de "B" que l'on trouve dans la chaine est de 3 "B".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "P" ) = 5 parce que la plus
longue suite de "P" que l'on trouve dans la chaine est de 5 "P".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "L" ) = 1 parce que la plus
longue suite de "L" que l'on trouve dans la chaine est de 1 "L".

MACRO ( " LNJLSBBBABOPPPPPVMPPBBG " ; "H" ) = 0 parce que la plus
longue suite de "H" que l'on trouve dans la chaine est de 0 "H".


Voila, si vous avez une piste... En vous remerciant par avance.










Publicité
Poster une réponse
Anonyme