OVH Cloud OVH Cloud

Séparer texte selon le nombre d'éspace avant le texte

20 réponses
Avatar
Zorojunior
Bonjour,

pourriez vous SVP m'aider sur ce sujet ?
j'ai une colonne qui contient des données en texte mais pas le même type de données, (Classe thérapeutique / produit / fournisseurs / dosage) et pour distinguer chaque type il y a un nombre d’espace avant le texte Ex:
_infectiologie
__Amlodapine
___Sanofi
____comprimé
_____50 mg
"_" = espace

maintenant je veux renvoyer chaque types vers une colonne donc :
le texte après un espace vers la colonne B
le texte après deux espaces vers la colonne C
le texte apres trois espaces vers la colonne D


d'avance merci

10 réponses

1 2
Avatar
Michd
Avec quelques retouches pour l'esthétisme!
Version : .xls
https://www.cjoint.com/c/HEvvXSEGxvi
MichD
Avatar
zorojunior
Le lundi 21 Mai 2018 à 23:51 par Michd :
Avec quelques retouches pour l'esthétisme!
Version : .xls
https://www.cjoint.com/c/HEvvXSEGxvi
MichD
Dear MichD, it's perfect, le résultat sur le fichier global est impressionnant, y a juste un petit bémol concernant les chiffres, en resultat le fichier doit garder uniquement les chiffres de la ligne en jaune, c'est le chiffre qui correspond au dernier item (item "Forme" sur le tableau initial). car les chiffres des autres items sont des sous totaux.
t'es un génie my friend
Avatar
Michd
Regarde ce classeur : https://www.cjoint.com/c/HEwmV1QbFji
MichD
Avatar
zorojunior
Le mardi 22 Mai 2018 à 14:48 par Michd :
Regarde ce classeur : https://www.cjoint.com/c/HEwmV1QbFji
MichD
quand je remplace l'onglet Initial par le bon onglet , la macro ne copie que l'entête,
ci joint fichier au complet
https://www.cjoint.com/c/HEwoZbwVCDF
d'avance merci
Avatar
Michd
Voici le dernier fichier exemple : HEwsrDGkoki_Problème-de-classement-Format-xls.xls
Tu copies ce qui est dans le module2 dans un module standard de ton classeur.
ATTENTION
A) Dans ton classeur, tu dois avoir un onglet de feuille portant le nom "Résultat". C'est dans cette
feuille que s'afficheront les résultats. La feuille où se retrouvent tes données doit avoir le nom
de "initial".
B ) Pour exécuter la macro, Raccourci clavier : Alt + F8 , tu choisis la macro "test1" et tu cliques
sur le bouton exécuter.
La macro fonctionne bien à partir de l'échantillon que tu as fourni. Cependant, je ne suis pas sûr
de cette macro pour 31000 lignes. Tu as beaucoup d'exceptions dans la séquence des données de la
feuille "initial". Cependant, moi, mon travail sur ce problème s'arrête ici.
MichD
Avatar
Michd
Désolé, l'adresse de ton fichier est ici : https://www.cjoint.com/c/HEwsOthlbvi
MichD
Avatar
Michd
Dans le fichier que tu as publié, dans la feuille "initial", tu n'as aucune cellule en A qui est en
couleur. Ce que tu m'as demandé, c'est de m'occuper seulement des lignes qui étaient en couleur.
Comme il n'y en a pas, tu n’as aucun résultat.
De plus, dans mon fichier, la procédure est basée sur la "COULEUR" que tu as employée et non sur
n'importe quelle couleur. La valeur décimale de la couleur est définie ici dans la procédure :
With LeCellFormat
.Clear
'La couleur des cellules colorées
.Interior.Color = 13431551 <========== End With
MichD
Avatar
zorojunior
Le mardi 22 Mai 2018 à 23:22 par Michd :
Dans le fichier que tu as publié, dans la feuille "initial",
tu n'as aucune cellule en A qui est en
couleur. Ce que tu m'as demandé, c'est de m'occuper seulement des lignes
qui étaient en couleur.
Comme il n'y en a pas, tu n’as aucun résultat.
De plus, dans mon fichier, la procédure est basée sur la
"COULEUR" que tu as employée et non sur
n'importe quelle couleur. La valeur décimale de la couleur est
définie ici dans la procédure :
With LeCellFormat
.Clear
'La couleur des cellules colorées
.Interior.Color = 13431551 <========== End With
MichD
Merci MichD tu as fait le plus difficile maintenant quant à la condition pour remplir les chiffres au lieu de prendre la couleur es que on peut prendre le nombre des espaces avant l’item comme condition car il est identique pour chaque item
Avatar
Michd
Voici le résultat que tu attendais. Cela fonctionne pour l'échantillonnage que tu as publié. Sauf,
en appliquant cela sur plus de 30,000, il se peut que les données contiennent des cas de figure que
la procédure n'a pas prévus... à tester!
https://www.cjoint.com/c/HExcgL3uf4i
Pour traiter l'ensemble des données, cela peut prendre un certain temps, sûrement plus d'une
seconde!
;-)
MichD
Avatar
zorojunior
Le mercredi 23 Mai 2018 à 04:13 par Michd :
Voici le résultat que tu attendais. Cela fonctionne pour
l'échantillonnage que tu as publié. Sauf,
en appliquant cela sur plus de 30,000, il se peut que les données
contiennent des cas de figure que
la procédure n'a pas prévus... à tester!
https://www.cjoint.com/c/HExcgL3uf4i
Pour traiter l'ensemble des données, cela peut prendre un certain temps,
sûrement plus d'une
seconde!
;-)
MichD
Dear MichD
le résultat est plus que parfait, c'est plus propre que je souhaitais.
je ne sais pas comment te remercie, tu m'as fait économiser des semaines de travail.
Merci du fond du cœur.
1 2