begin process at 2012 02 17 09:13:13
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

VBA

 > 

Associer chaque caractere d'un mot a une variable différente


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Associer chaque caractere d'un mot a une variable différente

jeudi 23 septembre 2004 à 13:58:15 | Associer chaque caractere d'un mot a une variable différente

sanaria

Bonjour à tous,

Voila, j'aurais voulu savoir comment associer le caractere 1 d'un mot a une variable 1, le caractere 2 a une variable 2 etc pour un mot contenu dans une textbox.

Merci d'avance.

jeudi 23 septembre 2004 à 14:06:16 | Re : Associer chaque caractere d'un mot a une variable différente

yomm

Membre Club
le plus simple je pense est de faire ceci:


dim Toto() as string

redim toto(len(textbox1.text))

for i = 1 to len(textbox1.text)
toto(i-1) = mid(textbox1.text,i,1)
next


tu auras donc un tableau dont chaque ligne contient 1 caractère de ton textbox...

il y a surement autrement mais c'est la première idée qui me vient à l'esprit étant donné que tu ne peux pas utiliser la fonction Split dans ce cas précis...

@+

Yomm

yommvb@ifrance.com

Et que la source soit avec toi!!!!!
jeudi 23 septembre 2004 à 14:10:25 | Re : Associer chaque caractere d'un mot a une variable différente

yomm

Membre Club
je viens de tester mon code, pour que tout soit vraiment correcte prend plutot cela :

Dim Toto() As String
Dim i As Integer

ReDim Toto(Len(Text1.Text)-1)

For i = 1 To Len(Text1.Text)
Toto(i - 1) = Mid(Text1.Text, i, 1)
Next


pour récupérer le premier caractère : Toto(0)
pour le second : Toto(1)
(....)
pour le dernier: Toto(Len(Text1.Text)-1)

voilà @+

Yomm

yommvb@ifrance.com

Et que la source soit avec toi!!!!!
jeudi 23 septembre 2004 à 14:10:45 | Re : Associer chaque caractere d'un mot a une variable différente

sanaria

Merci de ta réponse rapide. J'ose de demander encore qq minutes de ton temps pour m'expliquer plus précisement comment cela fonctionne car je suis un parfait débutant et j'essaye de découvrir le maximum par moi meme mais certaines choses me dépasse.

J'aimerais savoir :
- quel commande correspond a quel action ds ton code
- dans quelle variable va se mettre chaque caractere
- comment fonctionne la fonction split
jeudi 23 septembre 2004 à 14:11:47 | Re : Associer chaque caractere d'un mot a une variable différente

sanaria

Tu m'a devancé ;) Merci, si tu peu détailler ce serais génial, merci !
jeudi 23 septembre 2004 à 14:57:06 | Re : Associer chaque caractere d'un mot a une variable différente

yomm

Membre Club
Réponse acceptée !
ok...
donc voici en détail le fonctionnement:

Dim Toto() As String
Ici toto, est un tableau dynamique...cela permet de définir sa taille au cours du code...c'est lui qui va stocker tes caractères....
Dim i As Integer
est juste là pour la boucle for....rien d'important

ReDim Toto(Len(Text1.Text)-1)
comme je l'ai dit juste avant il faut donner la taille de ton tableau toto....
donc voici l'explication:
redim : équivaudrait à peut prêt à définition de la tailler
info : suivit de preserve ton tableau sera redimmensionné mais les lignes garderont leur valeur...

donc on disait:
Redim Toto donc là, je dis quel est le tableau que je redimmensionne...
ensuite, entre ( ) tu dois donner la taille <=> le nombre de lignes....
prenons un exemple : dans ton textbox tu as : [blue]maman

maman faisant 5 caractère tu dois déclarer un tableau de 5 lignes <> Redim Toto(5)
Mais : ton texte ne fera pas forcément 5 caractères d'où la commande:
[blue]len(Text1.Text)
pour savoir commbien tu as de caractères dans ta textbox...
et pourquoi [blue]-1
??? Parce que ton tableau commance à la ligne 0
donc pour 5 caractère tu as : 0,1,2,3,4...

donc voilà pour l'explication de [blue]ReDim Toto(Len(Text1.Text)-1)


maintnant la boucle FOR
maintenant que ton tableau a une taille suffisante pour chaque caractère de ton texte, il faut lui mettre les caractères...
[blue]For i = 1 To Len(Text1.Text)[blue] : ça c'est pour allez du premier caractère au dernier....
[blue]Toto(i - 1) = Mid(Text1.Text, i, 1)
donc la coupons suivant le signe =
[blue]Toto(i - 1)
: là, je renseigne mon tableau et je lui me le caractère à la ligne [blue]i -1 [blue]... pourquoi i-1 ??? car je commence ma boucle For à i=1 (soit le premier caractère du texte) , mais comme je l'ai dit avant, ton tableau commence à la ligne 0 d'où si i=1 => 1-1 =0 (j'écris bien à la première ligne de mon tableau...et ainsi de suite jusqu'à i = 5 => 5-1=4 dernière ligne de mon tableau dans le cas de "maman" qui faisait 5 caractères)

maintenant:
[blue]Mid(Text1.Text, i, 1)
, Mid permet de récupérer une chaine de caractère dans un chaine....
son fonctionnement est le suivant :Mid(LaChaine, DebutDeLaSousChaine, NombreDeCaractèresALire)
Ici , Mid(Text1.Text, i, 1) signifie que , dans mon textbox, je vais récupérer à la position i un unique caractère....

et ainsi de suite

donc pour lire le nième caractère tu fais : Toto(n-1)

Voilà, la fonction split permet de coupé une chaine de caractère selon une autre chaine:
si tu prends la chaine maman et que tu fais Split("maman","a")

tu te retrouveras avec un tableau de 3 lignes contenant :
m
m
n

voilà @+

[blue]Yomm


yommvb@ifrance.com

Et que la source soit avec toi!!!!!
jeudi 23 septembre 2004 à 15:13:55 | Re : Associer chaque caractere d'un mot a une variable différente

sanaria


((Merci beaucou ;)


Cette discussion est classée dans : variable, mot, caractere, associer, différente


Répondre à ce message

Sujets en rapport avec ce message

trouver un mot [ par Torzak ] comment faire pour savoir si un mot est present dans une phrase elle meme contenue dans une variable.exemplepublic mavariable as stingmavariable = "ce trouver un mot [ par Torzak ] comment faire pour savoir si un mot est present dans une phrase elle meme contenue dans une variable.exemplepublic mavariable as stingmavariable = "ce Premier caractere a rechercher [ par PetiteBille ] PetiteBille d'amooouur!Petite bille possede 2 text box, l'un text1 et l'autre text2Petite bille ecrit un mot dans text1, un mot qui commence par une v HELP ME ! textbox !! [ par Titant ] comment supprimer un mot plus petit ke 3 caractere ds un textboxpar exemple g une list de motaaaabbbbccc...Bref et quand je click sur une command sa m Variable et chaine de caractere [ par moktin ] Bonjour, Voila, je voudrais utilise le contenu d'une variable pour faire appelle a une variable qui a ce nom.Exemple :Dim var as stringDim texte as st Pointer vers une variable à partir d'un mot [ par Scientophage ] Je vais expliquer par une exemple : J'ai une Variable (Variable1) qui contient "Varaible2" Je voudrais que cette variable soit égale au co création automatique de variable [ par Syl59 ] Bonjour à tous, voilà sur quoi je me creuse la tête depuis un bon petit moment dejà : je veux créer une variable d'un type que j'aurais predefini.Pour Nombre de caractere dans une variable [ par SOCGEN77 ] Mon problème concerne les chaine de caractères. J'ai une variable. J'aimerai que cette variable fasse au minimum 10 caractères quoi qu'il arrive.Merci VBA variable a chaine de caractere [ par la_bavaroise ] Bonjour a tous,voivi ma question: je suis en train de créer une macro pour qu'elle puisse automatiquement me détecter des fautes de données dans une f macro présence d'un mot dans une chaine de caractere [ par funkay91 ] Bon peut etre que ca va vous paraitre simple mais j'arrive pas à faire un petit trucJ'ai une Cellule excel      ->dedans il y a une chaine de caracter


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,290 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales