OVH Cloud OVH Cloud

modification d'une cellule

3 réponses
Avatar
Pascal Manach
Bonsoir,


Je souhaite transformer le contenu de plusieurs cellules en ne conservant
que les 3 premiers éléments.

EX: 524 CSBL seuls les 3 chiffres m'intéresse.

Existe t-il une solution ?

Merci pour votre aide.


Pascal

3 réponses

Avatar
Philippe.R
Bonjour Pascal,
Sans recours à VBA, dans une colonne voisine, les données supposées en colonne A et étant de préférence
regroupées dans une plage continue :
=gauche(a2;3)
à recopier pour toutes les cellules concernées
Pour ne conserver que les valeurs et pas la formule, au choix :
1) sur place :
copier la plage de formules Edition / Collage spécial / Valeurs
2) sur la colonne d'origine :
Copier / selection de la première cellule de la plage à transformer / Edition / Collage spécial /
Valeurs

Avec VBA, dans un module ordinaire :

sub garde_a_gauche
for each c in selection
c.value=left(c.value,3)
next c
end sub

lancer l'execution par le menu / Outils / Macro / Macros en la selectionnant dans la liste
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002

"Pascal Manach" a écrit dans le message de
news:%
Bonsoir,


Je souhaite transformer le contenu de plusieurs cellules en ne conservant
que les 3 premiers éléments.

EX: 524 CSBL seuls les 3 chiffres m'intéresse.

Existe t-il une solution ?

Merci pour votre aide.


Pascal





Avatar
Philippe.R
Re,
Concernant la solution avec VBA, je préciserai que la procédure est appliquée à l'ensemble des cellules
sélectionnées lorsqu'elle est lancée, sans possibilité de retour en arrière par Ctrl+Z ; donc prudence
en en testant sur une copie par exemple.
--
Amicales Salutations

"Philippe.R" a écrit dans le message de
news:
Bonjour Pascal,
Sans recours à VBA, dans une colonne voisine, les données supposées en colonne A et étant de
préférence

regroupées dans une plage continue :
=gauche(a2;3)
à recopier pour toutes les cellules concernées
Pour ne conserver que les valeurs et pas la formule, au choix :
1) sur place :
copier la plage de formules Edition / Collage spécial / Valeurs
2) sur la colonne d'origine :
Copier / selection de la première cellule de la plage à transformer / Edition / Collage spécial /
Valeurs

Avec VBA, dans un module ordinaire :

sub garde_a_gauche
for each c in selection
c.value=left(c.value,3)
next c
end sub

lancer l'execution par le menu / Outils / Macro / Macros en la selectionnant dans la liste
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002

"Pascal Manach" a écrit dans le message de
news:%
Bonsoir,


Je souhaite transformer le contenu de plusieurs cellules en ne conservant
que les 3 premiers éléments.

EX: 524 CSBL seuls les 3 chiffres m'intéresse.

Existe t-il une solution ?

Merci pour votre aide.


Pascal









Avatar
Ricky [MVP]
Bonjour *Pascal Manach* (et tous les lecteurs)
| Bonsoir,
| Je souhaite transformer le contenu de plusieurs cellules en ne
| conservant que les 3 premiers éléments.
| EX: 524 CSBL seuls les 3 chiffres m'intéresse.
| Existe t-il une solution ?
| Merci pour votre aide.
| Pascal


Autre méthode
En utilisant une colonne intermédiaire qui contient la fonction suivante :

=GAUCHE(A2;TROUVE(" ";A2)) où on considère que la source est en A2 et que l'on retient tout ce qui se trouve avant l'espace
Ensuite Copier cette colonne et écraser les valeurs originales par Collage spécial / Valeurs

--
Ricky [MVP] Visitez les faq....
http://www.faqoe.com http://faq.ms.word.free.fr
http://dj.joss.free.fr/faq.htm http://www.excelabo.net
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm