Stockage de caractere dans une boucle for

tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 - 20 août 2005 à 16:21
tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 - 21 août 2005 à 13:30
voila, en faite, j'ai une inputbox, l'utilisateur rentre son texte, et j'aimerais stocké chaque lettre dans une variable différente, mais je n'y arrive pas,... voici mon code :

text = inputbox("texte...")
nbrc = len(text)

for a = 1 to nbrc

cara = left(text, nbrc)
next


voila, mais comment stocker chaque lettre dans une variable différente, vu que je suis dans une boucle...

j'espere avoir été claire,
Merci !

11 réponses

tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 33
20 août 2005 à 16:22
Au faite, en vbs siouplait !

;)
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
20 août 2005 à 16:38
Salut
Le début est bon (lol) :
monTexte = inputbox("texte...")
nbrc = len(monTexte)

-1- D'abord, il faut préparer un tableau qui accueillera chaque lettre :
Dim Tableau() As String

-2- Dimensionner le tableau en fonction de la longueur du texte :
Redim Tableau(nbcr)

-3- Découper chaque lettre vers le tableur :
For r = 1 To nbrc
Tableau(r) = Mid(monTexte, r, 1)
Next r

Ensuite, tu auras chaque lettre dans Tableau(1) ... Tableau(x) où x = UBound(Tableau)(UBound dernier index du tableau, donc longueur du texte)

Pour info, "Left" (gauche) prend les caractères situés à gauche du texte

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
0
tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 33
20 août 2005 à 16:58
Merci, mais chez moi ça ne marche pas (je n'ai pas vb6):
indice en dehors de la plage...

Mais bon, pas grave ;)

mais au faite, je voudrais les stocker dans une VARIABLE différente...


MERCI QUAND MEME !
;)
0
tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 33
20 août 2005 à 17:10
au faite, tu à raison, mon code est faux, voici le nouveau code :

'inputbox
text = inputbox("texte...")
'conte le nombre de caracteres renvoyes
nbrc = len(text)

'la boucle s'execute autant de fois qu'il ya de caracteres
for a = 1 to nbrc
'chaque caracteres est récupéré à chaque boucle
cara = mid(text, a, 1)
next


et j'aimerais donc stoquer chaque caracteres dans une variable différente en dehors de la boucle.
par exemple si l'utilisateur tape : "abc", la lettre "a" est stoquer dans une variable en dehors de la boucle, la lettre "b" de meme, etc...

Capiche? lol

Merci!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
20 août 2005 à 17:38
La réponse de jack (avec un tableau) est la meilleure, à mon avis, qu'on puisser te donner.
Que ce soit vbs, vba, vb6 ou vb.net, il n'y a aucun moyen de créer des variables (autres que tableau) en dynamique comme tu sembles le souhaiter.

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 33
20 août 2005 à 18:02
Bon, bah dommage alors, ps grave!
mais en tout cas, le tableau ne marche pas chez moi!
(en vbs, sans vb6...)

Merci quand meme!
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
20 août 2005 à 18:34
Désolé, les tableaux, ça marche aussi en vbs. Le tout est de déclarer les variables au bon endroit et surtout de les typer correctement.

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 33
20 août 2005 à 19:11
Ouai mais moi je peux déclarere que des variants é sinon copier coller ça marche pas alors j'aimerais un autre code...

MERCI!
0
pjcleder Messages postés 183 Date d'inscription jeudi 4 février 2010 Statut Membre Dernière intervention 16 septembre 2011 11
21 août 2005 à 12:44
PAT

dim tableau(100) , longueur,i


n = inputbox("Veuillez saisir une chaine de caractères")


longueur = len(n)


for i= 1 to longueur
tableau(i) = mid(n,i,1)
next

Ce code marche. Je l'ai testé. N'oublie PAS DE DECLARER TON TABLEAU !
0
pjcleder Messages postés 183 Date d'inscription jeudi 4 février 2010 Statut Membre Dernière intervention 16 septembre 2011 11
21 août 2005 à 12:48
PAT

le message Indice en dehors de la plage signifie que tu n'as pas défini la capacité de ton tableau.
Dans mon exemple, j'ai déclaré un tableau de capacité 100
0
tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 33
21 août 2005 à 13:30
Ok, mais après l'inputbox rien ne s'execute...
Je pense que ça vienr de chez moi...
Mais sinon, je viens d'y penser, je pourrais les stoquer dans des fichiers txt temporaire, mais le probleme c'est que je n'arrive pas a les créer et a les ecrire dans le meme code...

MERCI EN TOUT CAS !
0
Rejoignez-nous