MACRO
ANTEVA
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
JE SOUHAITE FAIRE UNE MACRO dans EXCEL COMME CECI :
dans une cellule j'ai en 1er des espace, puis une serie de chiffres, puis des espaces, et encore une serie de chiffres comme ceci :
5608742 5610216 5610287
5610383 5610562 5610565
5610916 5611150 5610716
5608683 5609515 5609625
5609676 5609729 5609734
5609742 5609744 5609749
5609760 5609777 5609817
5609833 5601985 5602062
5602089 5602096 5602163
5602174 5602328 5603119
5607610 5608882 5609489
5609634 5609677 5609679
je souhaiterai recuperer chaque serie de chiffre et les mettre dans une cellule differente. mais ceci est pour plusieurs ligne.
merci de bien vouloir me sortir de ce petrin
anteva
JE SOUHAITE FAIRE UNE MACRO dans EXCEL COMME CECI :
dans une cellule j'ai en 1er des espace, puis une serie de chiffres, puis des espaces, et encore une serie de chiffres comme ceci :
5608742 5610216 5610287
5610383 5610562 5610565
5610916 5611150 5610716
5608683 5609515 5609625
5609676 5609729 5609734
5609742 5609744 5609749
5609760 5609777 5609817
5609833 5601985 5602062
5602089 5602096 5602163
5602174 5602328 5603119
5607610 5608882 5609489
5609634 5609677 5609679
je souhaiterai recuperer chaque serie de chiffre et les mettre dans une cellule differente. mais ceci est pour plusieurs ligne.
merci de bien vouloir me sortir de ce petrin
anteva
A voir également:
- MACRO
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Jitbit macro recorder - Télécharger - Confidentialité
- Macro maker - Télécharger - Divers Utilitaires
- Actiona macro - Télécharger - Divers Utilitaires
2 réponses
Bonjour,
https://www.commentcamarche.net/infos/25843-guide-d-utilisation-du-forum-de-commentcamarche-net/ n'est-ce-pas ?
Mais Excel est portable et, bien que nous soyons dans le forum Mac, quelqu'un saura peut-être vous aider.
Du point de vue macro, sans doute nécessaire pour analyser les cellules les unes après les autres, je n'ai pas du tout d'expérience.
Pour l'analyse d'une cellule, j'utiliserai les fonctions DROITE(texte;no_car) GAUCHE(texte;no_car) STXT(texte;no_depart;no_caractere). Ca devrait pouvoir vous être utile si la structure des cellules est constante (les nombres entre les espaces ont tous le même nombre de chiffres), ex :
" 12345 34567 56789 " est OK
" 1234 3456789 56789 " peut être plus difficile à traiter.
CNUM(texte) convertit un texte représentant un nombre en vrai nombre ; CTXT(nombre, decimale;no_separateur) arrondit un nombre au nombre de décimales spécifié et renvoie le résultat sous forme de texte avec ou sans virgule. Ces deux fonctions peuvent aussi vous servir.
Si ça peut vous servir de point de départ...
https://www.commentcamarche.net/infos/25843-guide-d-utilisation-du-forum-de-commentcamarche-net/ n'est-ce-pas ?
Mais Excel est portable et, bien que nous soyons dans le forum Mac, quelqu'un saura peut-être vous aider.
Du point de vue macro, sans doute nécessaire pour analyser les cellules les unes après les autres, je n'ai pas du tout d'expérience.
Pour l'analyse d'une cellule, j'utiliserai les fonctions DROITE(texte;no_car) GAUCHE(texte;no_car) STXT(texte;no_depart;no_caractere). Ca devrait pouvoir vous être utile si la structure des cellules est constante (les nombres entre les espaces ont tous le même nombre de chiffres), ex :
" 12345 34567 56789 " est OK
" 1234 3456789 56789 " peut être plus difficile à traiter.
CNUM(texte) convertit un texte représentant un nombre en vrai nombre ; CTXT(nombre, decimale;no_separateur) arrondit un nombre au nombre de décimales spécifié et renvoie le résultat sous forme de texte avec ou sans virgule. Ces deux fonctions peuvent aussi vous servir.
Si ça peut vous servir de point de départ...
Bonjour,
si le souhait concerne l'exemple précis, il est facile de créer la première ligne de formules puis de la recopier vers le bas,
il faut dans ce cas une régularité dans le nombre de caractères avant et après chaque espace.
Sinon il faut adapter la formule au cas par cas..
exemple, vous voulez obtenir ça:
http://imagik.fr/view-rl/34206
voici les formules à entrer :
http://imagik.fr/view-rl/34207
Explication de la formule dans la case B2
=sxt indique qu'il faut extraire des caractères d'une chaîne, $ verrouille la colonne de référence pour permettre la recopie partielle vers la droite, A indique la colonne, 2 indique la rangée; 1 indique la position du premier caractère à extraire; 7 indique le nombre de caractères à extraire.
Une fois que les cases B2, C2 et D2 sont renseignées, il suffit d'étendre les trois vers le bas.
Bonne chance
PS: notez que les nombres récupérés restent au format texte, et que pour les exploiter au format nombre il faudra les convertir, ce qui se fait par la formule =CNUM(b2) par exemple
si le souhait concerne l'exemple précis, il est facile de créer la première ligne de formules puis de la recopier vers le bas,
il faut dans ce cas une régularité dans le nombre de caractères avant et après chaque espace.
Sinon il faut adapter la formule au cas par cas..
exemple, vous voulez obtenir ça:
http://imagik.fr/view-rl/34206
voici les formules à entrer :
http://imagik.fr/view-rl/34207
Explication de la formule dans la case B2
=sxt indique qu'il faut extraire des caractères d'une chaîne, $ verrouille la colonne de référence pour permettre la recopie partielle vers la droite, A indique la colonne, 2 indique la rangée; 1 indique la position du premier caractère à extraire; 7 indique le nombre de caractères à extraire.
Une fois que les cases B2, C2 et D2 sont renseignées, il suffit d'étendre les trois vers le bas.
Bonne chance
PS: notez que les nombres récupérés restent au format texte, et que pour les exploiter au format nombre il faudra les convertir, ce qui se fait par la formule =CNUM(b2) par exemple