Séparer les composants d'un mot sur excel

Résolu
younessiam Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   -  
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour tout le monde
je travaille sur un tableau excel ,et je me demande si qq un peut m'aider par une fonction sur excel qui va me permettre de séparer les composants d'un mot par / ou .
merci infiniment
A voir également:

8 réponses

Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
Bonsoir
un peu vague comme question... vous voulez passer de quoi à quoi?
à vous lire
crdlmnt
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Bonsoir

Qu'appelles tu les "composants d'un mot" ? un mot est composé de lettres, tu veux séparer les lettres ?

Précise ce que tu veux en donnant un exemple

Cdlmnt


0
younessiam Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
je vous remerci d'avance
je vais réexpliquer
j'ai une série qui commence par exepmle par ARKJDH1000000YR et qui doit se terminer par ARKJDH2000000YR
donc j'ai introduit la fonction et j'ai incrémenter jusqu'àrriver à la dernière série
ma question est ce qu'il ya un moyen pour introduire le symbole / entre les caractères de chaque série càd la première série devient A/R/K/J/D/H/1/0/0/0/0/0/0/Y/R jusqu'à la dernière A/R/K/J/D/H/2/0/0/0/0/0/0/Y/R

merci infiniment
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Re

Possible avec une fonction personnalisée à mettre dans l'éditeur VBA
Faire ALT+ F111 pour ouvrir editeur puis Insertion puis Module et copier-coller le code suivant et fermer l'éditeur :
Function sepcar(plage As Range)
mot = plage.Value
For n = 1 To Len(mot) * 2 Step 2
mot = Left(mot, n) & "/" & Right(mot, Len(mot) - n)
Next
sepcar = Left(mot, Len(mot) - 1)
End Function


La fonction s'utilise comme n'importe quelle fonction Excel avec la syntaxe :
=sepcar(adresse de la cellule du mot à decouper)

Cdlmnt
0

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

Posez votre question
younessiam Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
merci infiniment via55
Je vais essayer et je vais voir si j'arriverai hhh, parce que je suis débutant en informatique

A bientot
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Tu vas y arriver ce n'est pas sorcier
Si jamais tu n'y arrive pas postes un exemple allégé et anonymé de ton fichier sur cjoint.com et reviens indiquer ici le lien fourni, j'appliquerai la macro à ton fichier

Cdlmnt
0
younessiam Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
0
younessiam Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Je vous remercie infiniment via55
vous etes tres gentil
0
younessiam Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
bonsoir
vouvez vous m'envoyer un vidéo expliquant comment fonctionne une macro
merciii
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Re

Je ne dispose de vidéo !
une macro est un programme que tu écris en VBA (Visual Basic) dans l'éditeur de Excel pour créer une fonction personnalisée ou des procédures qu'exécutera excel
Voir déjà la fiche CCM qui présente l'éditeur :
https://www.commentcamarche.net/faq/37089-vba-premiers-pas-dans-l-editeur-microsoft-visual-basic-for-applications

Après en faisant quelques recherches sur le web tu peux trouver différents tutoriels ou exercices pour débuter

En ce qui concerne la fonction personnalisée que j'ai créé pour ton fichier, si tu fais ALT + F11 tu ouvres l'Éditeur et tu accèdes aux lignes de la macro :

Function sepcar(plage As Range)
mot = plage.Value
For n = 1 To Len(mot) * 2 Step 2
mot = Left(mot, n) & "/" & Right(mot, Len(mot) - n)
Next
sepcar = Left(mot, Len(mot) - 1)
End Function


explications :
La variable plage est définie comme une plage de cellules ( range) elle correspond à l'adresse de la cellule que tu rentres dans la formule =sepcar() dans la feuille
la variable mot récupère la valeur se trouvant dans cette plage
La boucle For Next boucle de 2 en 2 (step2) depuis 1 jusqu'à un nombre correpondant à la longueur du mot x par 2 (puisque cette longueur va doubler avec l'ajout des /)
a chaque étape de la boucle on prend les n caractères à gauche du mot (left(mot,n)), on y ajoute un / (&"/") puis on rajoute la partie droite du mot de la longueur du mot - les n caractères de gauche (Right(mot, Len(mot) - n))
Une fois la boucle effectuée on renvoi dans sepcar (ce qui va être affiché dans la cellule de la formule) le mot en prenant tous les caractères à gauche -1 car le dernier caractère ajouté a été un / qu'il faut donc éliminer (Left(mot, Len(mot) - 1))

Cdlmnt
0