Comment supprimer des 0 dans une chaîne de caractères

Fermé
CAGNIUN Messages postés 7 Date d'inscription samedi 7 novembre 2020 Statut Membre Dernière intervention 9 novembre 2020 - 7 nov. 2020 à 17:11
CAGNIUN Messages postés 7 Date d'inscription samedi 7 novembre 2020 Statut Membre Dernière intervention 9 novembre 2020 - 9 nov. 2020 à 15:55
SVP aidez moi à supprimer des 0 dans:

PCMF0000458 ou GB0007895 ou AFR0047

8 réponses

CAGNIUN Messages postés 7 Date d'inscription samedi 7 novembre 2020 Statut Membre Dernière intervention 9 novembre 2020 1
9 nov. 2020 à 12:52
Exemple j'ai AFRD000450 et je veux avoir AFRD450

DREF00602 va devenir DREF602
1
fabul Messages postés 39681 Date d'inscription dimanche 18 janvier 2009 Statut Modérateur Dernière intervention 14 février 2025 5 486
Modifié le 7 nov. 2020 à 17:14
Salut,

Avec Ctrl+H

Désolé, je répondais pour un fichier texte.

Excel je sais pas.
0
m@rina Messages postés 21541 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 16 février 2025 11 399
7 nov. 2020 à 17:40
Bonjour

Si, si, ça va bien marcher aussi avec Ctrl+H ! ;))
Du fait que c'est de l'alphanumérique, et donc du texte.

m@rina
0
Mazzaropi Messages postés 1985 Date d'inscription lundi 16 août 2010 Statut Contributeur Dernière intervention 24 mai 2023 71
7 nov. 2020 à 19:58
Cagnion,Bonjour.

Les données présentées sont considérées comme du texte dans des feuilles de calcul Excel.

Il y a plusieurs façons dans Excel de faire ce dont vous avez besoin.

Étant donné que vous n'avez pas expliqué comment ces données se trouvent dans votre feuille de calcul et comment vous voulez que le remplacement soit effectué, il est difficile d'aider avec précision.

Passons à quelques suggestions.

a) Suggestion correcte du noble collègue fabul. (salutations du Brésil)
Sélectionnez ces données et appuyez sur CTRL + H.
Tapez simplement 0 dans la première option et appuyez sur Modifier.
Triés.

b) Si vos données sont dans la cellule A1, fais le:
B1 ---> =SUBSTITUE (A1; "0"; "")
Triés.

c) Il est possible de faire fonctionner un code VBA sans écrire de formules dans les cellules.
Si c'est ce que tu veux, je suis sûr qu'il y aura un autre collègue qui pourra vous aider.

Donnez-nous un modèle de votre feuille de calcul pour nous aider à vous aider.

J'espère avoir aidé.

Cordialement,
------
Belo Horizonte, MG - Brasil.
Marcílio Lobão
0
CAGNIUN Messages postés 7 Date d'inscription samedi 7 novembre 2020 Statut Membre Dernière intervention 9 novembre 2020 1
Modifié le 9 nov. 2020 à 08:34
Bonjour et merci pour vos apports

ceci "B1 ---> =SUBSTITUE (A1; "0"; "")" marche vraiment. Mais s'il y a un "0" à la fin de la chaine ça le supprime aussi; ce que je ne veux pas. Car je veux concerver les "0" de la fin de la chaine dans la cellule.

Encore merci pour l'expertise.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 424
9 nov. 2020 à 08:07
SUBSTITUE retire bien tous les 0 d'un texte comme le code est écrit ici
Donnez nous quelques exemples complets de vos textes qu'on puisse voir le problème
à vous lire
0

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

Posez votre question
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 424
9 nov. 2020 à 13:27
et quel est l'argument en règle générale qui permet de choisir les 0 à éliminer
en attendant plus de précisions voyez avec, pour les cas précis que vous citez
=SUBSTITUE(SUBSTITUE(B3;"000";"");"00";"")
qui va retirer les 0 s'ils sont par deux , multiple de deux, trois ou multiple de 3, ou par 5 ou multiple de 5, mais conserver les 0 seuls
à vous lire
crdlmnt
0
tontong Messages postés 2571 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 12 février 2025 1 060
9 nov. 2020 à 13:55
Bonjour,
D'une façon plus générale utiliser une fonction Texte() pou accéder à un format sans 0 au début. À vérifier:
=GAUCHE(A1;CHERCHE(0;A1;1)-1)&TEXTE(DROITE(A1;NBCAR(A1)-CHERCHE(0;A1;1)+1);"standard")
0
CAGNIUN Messages postés 7 Date d'inscription samedi 7 novembre 2020 Statut Membre Dernière intervention 9 novembre 2020 1
9 nov. 2020 à 15:55
Merci Expert!

Ce code aussi marche parfaitement pour mon travail.
0
CAGNIUN Messages postés 7 Date d'inscription samedi 7 novembre 2020 Statut Membre Dernière intervention 9 novembre 2020 1
9 nov. 2020 à 13:57
l'argument qui permet à éliminer les 0 à supprimer: ces 0 sont entre les lettre et les chiffres

Exemple ERAT0004500: c'est les "000" qui sont entre T et 4 que je veux éliminer.

Merci expert car ta formule marche seulement je viens de repérer "00" à la fin d'une chaine de caractères à conserver.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 424
9 nov. 2020 à 15:26
alors je n'ai plus que ça, qui ne fonctionnera pas dans tous les cas:
=SUBSTITUE(SUBSTITUE(SUBSTITUE(A1;"0000";"");"000";"");"00";"")&SI(DROITE(A1;2)="00";"00";"")
cas à éliminer :
  • le nombre de 0 à éliminer entre les deux données est inférieure à 2 (pas de solution) ou supérieur à 4 (dans ce cas il faut rajouter un SUBSTITUE avec "00000"

=SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(A1;"00000";"");"0000";"");"000";"");"00";"")&SI(DROITE(A1;2)="00";"00";"")
  • les 0 inclus dans la deuxième partie à conserver avant la fin du code sont plus de un (exemple ....6002)

au delà il faudra sûrement passer par VBA mais ce n'est pas de mon ressort
bonne chance crdlmnt
0
tontong Messages postés 2571 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 12 février 2025 1 060
9 nov. 2020 à 15:54
avez- vous vérifié la proposition du#8?
=GAUCHE(A1;CHERCHE(0;A1;1)-1)&TEXTE(DROITE(A1;NBCAR(A1)-CHERCHE(0;A1;1)+1);"standard")
0
CAGNIUN Messages postés 7 Date d'inscription samedi 7 novembre 2020 Statut Membre Dernière intervention 9 novembre 2020 1
9 nov. 2020 à 15:53
Merci Expert!
ça marche bien maintenant hein
0