Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Traitement/Extraction de chaines de caractères

12 réponses
Avatar
Apitos
Bonjour =C3=A0 tous,

J'ai dans une feuille de calcul des chaines alphanum=C3=A9riques que j=E2=
=80=99aimerais traiter pour en extraire et composer des chiffres seulement =
pour les =C3=A9crire dans un fichier texte.

Voila un exemple des chaines =C3=A0 traiter =C3=A0 gauche, et le r=C3=A9sul=
tat voulu =C3=A0 droite :

012 39 M0 C1 =C3=A0 6 =3D> 012390
012 44 M2/6 =3D> 012442 - 012446
012 40 M6 =C3=A0 9 =3D> 012406 =E2=80=93 012407 =E2=80=93 012408 - 012409
012 43 M6 =C3=A0 0 =3D> 012436 =E2=80=93 012437 =E2=80=93 012438 =E2=80=93 =
012439 -012430
012 40 M6/7 =3D> 012406 - 012407

Merci d=E2=80=99avance.

10 réponses

1 2
Avatar
La Norme Fran
On Fri, 21 Oct 2016 03:29:10 -0700 (PDT), Apitos
wrote:
Bonjour à tous,
J'ai dans une feuille de calcul des chaines alphanumériques que j’aimerais traiter pour en extraire et composer des chiffres seulement pour les écrire dans un fichier texte.
Voila un exemple des chaines à traiter à gauche, et le résultat voulu à droite :
012 39 M0 C1 à 6 => 012390
012 44 M2/6 => 012442 - 012446
012 40 M6 à 9 => 012406 – 012407 – 012408 - 012409
012 43 M6 à 0 => 012436 – 012437 – 012438 – 012439 -012430
012 40 M6/7 => 012406 - 012407
Merci d’avance.

Tu ne dis pas quelle version de excel tu utilises
Sur la version 2013, il y a une nouvelle fonctionnalitée :
http://www.excel-exercice.com/excel2013/remplissage-instantane/
On lui montre comment faire et il apprend tout seul.
Avec des valeurs comme les tiennent, il faudra lui montrer 2 ou 3
exemples.
Ca évite de se taper les formules ou le VBA
C'est pas dynamique en cas de changement de valeur dans la cellule
d'origine mais c'est telement pratique.
--
« le politiquement correct ne proclame pas la tolérance ; il ne fait qu'organiser la haine. » (Jacques Barzun)
C'est une doctrine obligatoire, qui n'est en réalité que l'expression la plus autoritaire du conformisme
Avatar
La Norme Française c'est pas le FN
On Fri, 21 Oct 2016 12:50:27 +0200, La Norme Française c'est pas le FN
wrote:
On Fri, 21 Oct 2016 03:29:10 -0700 (PDT), Apitos
wrote:
Ca évite de se taper les formules ou le VBA
C'est pas dynamique en cas de changement de valeur dans la cellule
d'origine mais c'est telement pratique.

Et si t'as pas 2013 et que t'as des tonnes de données à traiter (pas
top secret), tu peux mettre tes données sur un cjoint et je te le
retourne par cjoint.
--
« le politiquement correct ne proclame pas la tolérance ; il ne fait qu'organiser la haine. » (Jacques Barzun)
C'est une doctrine obligatoire, qui n'est en réalité que l'expression la plus autoritaire du conformisme
Avatar
Apitos
Bonjour la Norme Francaise,
voici un exemple dans Excel 2007 :
http://www.cjoint.com/c/FJvlo3TIrXJ
Avatar
Jacquouille
Bonjour
Si tes cel sont identiques en nb de car, tu peux toujours commencer par
dégrossir comme ceci :
=GAUCHE(B3;6)&STXT(B3;7;1)
Cela te permettra de supprimer la lettre "M".
Jacques
" Le vin est au repas ce que le parfum est à la femme."
.
"Apitos" a écrit dans le message de groupe de discussion :
Bonjour la Norme Francaise,
voici un exemple dans Excel 2007 :
http://www.cjoint.com/c/FJvlo3TIrXJ
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
Avatar
Jacquouille
Opus, faut changer le 7 en 9
=GAUCHE(B3;6)&STXT(B3;9;1) et cela donnera 012 411 pour B3
Si c'est cela, ensuite, tu peux faire une multitude de SI pour compter les
car à mettre après ....
Jacques
" Le vin est au repas ce que le parfum est à la femme."
.
"Jacquouille" a écrit dans le message de groupe de discussion :
nucvld$dcp$
Bonjour
Si tes cel sont identiques en nb de car, tu peux toujours commencer par
dégrossir comme ceci :
=GAUCHE(B3;6)&STXT(B3;7;1)
Cela te permettra de supprimer la lettre "M".
Jacques
" Le vin est au repas ce que le parfum est à la femme."
.
"Apitos" a écrit dans le message de groupe de discussion :
Bonjour la Norme Francaise,
voici un exemple dans Excel 2007 :
http://www.cjoint.com/c/FJvlo3TIrXJ
---
L'absence de virus dans ce courrier électronique a été vérifiée par le
logiciel antivirus Avast.
https://www.avast.com/antivirus
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
Avatar
JièL
ou alors
=SUBSTITUE(B9;"M";"")
--
JièL simplificationniste
Le 21/10/2016 à 14:01, Jacquouille a écrit :
Opus, faut changer le 7 en 9
=GAUCHE(B3;6)&STXT(B3;9;1) et cela donnera 012 411 pour B3
Si c'est cela, ensuite, tu peux faire une multitude de SI pour compter
les car à mettre après ....
Jacques
" Le vin est au repas ce que le parfum est à la femme."
.
"Jacquouille" a écrit dans le message de groupe de discussion :
nucvld$dcp$
Bonjour
Si tes cel sont identiques en nb de car, tu peux toujours commencer par
dégrossir comme ceci :
=GAUCHE(B3;6)&STXT(B3;7;1)
Cela te permettra de supprimer la lettre "M".
Jacques
" Le vin est au repas ce que le parfum est à la femme."
.
"Apitos" a écrit dans le message de groupe de discussion :
Bonjour la Norme Francaise,
voici un exemple dans Excel 2007 :
http://www.cjoint.com/c/FJvlo3TIrXJ
---
L'absence de virus dans ce courrier électronique a été vérifiée par le
logiciel antivirus Avast.
https://www.avast.com/antivirus
---
L'absence de virus dans ce courrier électronique a été vérifiée par le
logiciel antivirus Avast.
https://www.avast.com/antivirus
Avatar
isabelle
bonjour Apitos,
voici un début de piste...
Sub test()
cl = 7
For Each c In Range("b3:b20")
n1 = Left(c, 6)
n2 = Mid(c, Application.Find("M", c) + 1, 1)
n3 = Right(c, 1)
If n2 = 0 Then
Cells(c.Row, cl) = n1 & i
cl = cl + 1
GoTo suivant
End If
If n3 = 0 Then
n3 = 9
For i = n2 To n3
Cells(c.Row, cl) = n1 & i
cl = cl + 1
Next
Cells(c.Row, cl) = n1 & 0
Else
For i = n2 To n3
Cells(c.Row, cl) = n1 & i
cl = cl + 1
Next
End If
suivant:
cl = 7
Next
End Sub
isabelle
Le 2016-10-21 à 06:29, Apitos a écrit :
Bonjour à tous,
J'ai dans une feuille de calcul des chaines alphanumériques que j’aimerais
traiter pour en extraire et composer des chiffres seulement pour les écrire
dans un fichier texte.
Voila un exemple des chaines à traiter à gauche, et le résultat voulu à
droite :
012 39 M0 C1 à 6 => 012390 012 44 M2/6 => 012442 - 012446 012 40 M6 à 9 =>
012406 – 012407 – 012408 - 012409 012 43 M6 à 0 => 012436 – 012437 – 012438 –
012439 -012430 012 40 M6/7 => 012406 - 012407
Merci d’avance.
Avatar
Apitos
Bonjour à tous,
Merci pour vos réponses.
Bon, voici un exemple, peut être il sera utile :
http://www.cjoint.com/c/FJvr3q83Q0J
Avatar
Apitos
Bonjour à tous,
Enfin après moult essais et codage de lignes, voici un exemple qui fon ctionne.
S'il y'a des rectifications à faire, je suis preneur ;)
Merci.
http://www.cjoint.com/c/FJwqXnSlMjt
Avatar
isabelle
bonjour Apitos,
il n'y a pas de résultat pour "MDS" ligne 20, pourquoi ?
isabelle
Le 2016-10-22 à 12:50, Apitos a écrit :
Bonjour à tous,
Enfin après moult essais et codage de lignes, voici un exemple qui fonctionne.
S'il y'a des rectifications à faire, je suis preneur ;)
Merci.
http://www.cjoint.com/c/FJwqXnSlMjt
1 2