Macro pour chaine de carcatères Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Répondre
j
jef59
Jeune membre
Jeune membre
Messages : 46
Appréciation reçue : 1
Inscrit le : 19 décembre 2017
Version d'Excel : 2013 FR

Message par jef59 » 10 janvier 2018, 19:45

Bonsoir,
je cherche tout simplement à séparer les lettres d'un mot dans autant de cellules que le nombre de lettres du mot.
Par exemple si j'ai le mot 'mot' je veux séparer les lettres m,o,t et les mettre dans 3 cellules différentes.
Merci d'avance,
jef59
Avatar du membre
bigdaddy154
Membre impliqué
Membre impliqué
Messages : 1'204
Appréciations reçues : 47
Inscrit le : 5 mars 2014
Version d'Excel : 2010

Message par bigdaddy154 » 10 janvier 2018, 19:57

Bonsoir,

un essai voir si ça peut te convenir
jef59.xlsm
(19.87 Kio) Téléchargé 5 fois
1 membre du forum aime ce message.
j
jef59
Jeune membre
Jeune membre
Messages : 46
Appréciation reçue : 1
Inscrit le : 19 décembre 2017
Version d'Excel : 2013 FR

Message par jef59 » 10 janvier 2018, 20:08

Bonsoir bigdaddy154,
ça me parait très bien. Mais j'aimerai comprendre ce que tu as fais à partir de nb_lettre (ce qu'il y a au-dessus ça va).
Si tu peux me dire même en quelques lignes ce que tu as fait ce serait cool. Merci :)
Avatar du membre
bigdaddy154
Membre impliqué
Membre impliqué
Messages : 1'204
Appréciations reçues : 47
Inscrit le : 5 mars 2014
Version d'Excel : 2010

Message par bigdaddy154 » 11 janvier 2018, 13:57

Hello jef59,

alors voici une petite explication :

Private Sub CommandButton1_Click()
drligne = Range("a" & Rows.Count).End(xlUp).Row 'Calcule le nb de ligne à traiter dans la colonne A
colonne = 2 'Numero indiquant à partir de quelle colonne la décomposition du mot commencera
For i = 1 To drligne 'donc ici on boucle de la 1ere ligne jusqu'a la derniere ligne remplie dans la colonne A
nb_lettre = Len(Range("a" & i)) 'determine le nb de caractere inscrit dans la cellule
For Z = 1 To nb_lettre 'on boucle du 1 er caractere au dernier du mot en question
Cells(i, colonne) = Mid(Range("a" & i), Z, 1) 'on inscrit la lettre dans la cellule fonction mid equivalent a stxt dans les fonctions excel
colonne = colonne + 1 ' j'incremente la colonne pour la prochaine lettre
Next Z
colonne = 2 'je réinitialise la colonne a 2 pour la prochaine décomposition du nouveau mot
Next i
End Sub

En espérant que ça soit plus clair pour toi
1 membre du forum aime ce message.
j
jef59
Jeune membre
Jeune membre
Messages : 46
Appréciation reçue : 1
Inscrit le : 19 décembre 2017
Version d'Excel : 2013 FR

Message par jef59 » 11 janvier 2018, 17:39

bonjour bigdaddy154 merci bcp pour ton aide !
Répondre
  • Sujets similaires
    Réponses
    Vues
    Dernier message