Excel : formule pour filtrer

Fermé
rolletb Messages postés 25 Date d'inscription mercredi 15 septembre 2004 Statut Membre Dernière intervention 20 mai 2019 - 15 sept. 2004 à 13:48
purrofixe Messages postés 490 Date d'inscription dimanche 14 mars 2004 Statut Membre Dernière intervention 12 septembre 2007 - 28 sept. 2004 à 15:09
Bonjour

Je recherche une formule qui détecte certains caractères afin de supprimer certains de ces caractères. Je vais essayer de m'expliquer plus clairement sur un exemple
Je travaille sur des nomenclatures longues que je veux retravailler
Ex
dans une cellule j'ai le texte suivant "d:\mesdocs\nomen1\production\retouche
J'ai une liste de 150 lignes de ce type sachant qu'elles n'ont pas toute la même arborescence. Je voudrais une formule qui me permette si le nombre de "\" est supérieur à4 de supprimer les caractères devant le dernier "\"
dans mon exemple, il ne resterait que "\retouche"

Je ne sais pas comment compter les \ dans un SI ni comment supprimer une partie de caractères (excel propose de définir un nombre de caractères à supprimer que je ne connais pas)

J'espère ne pas être trop confus

Merci d'avance pour vos réponses
A voir également:

14 réponses

purrofixe Messages postés 490 Date d'inscription dimanche 14 mars 2004 Statut Membre Dernière intervention 12 septembre 2007 94
15 sept. 2004 à 16:03
Bonjour,
Je suis sur votre problème.
Vous dites: "\" est supérieur à 4 de supprimer les caractères devant le dernier "\", oui d'accord mais dans votre exemple il y a 4 "\", donc pas plus que!
Merci de votre réponse.
Salutations
Jean-Pierre
0
rolletb Messages postés 25 Date d'inscription mercredi 15 septembre 2004 Statut Membre Dernière intervention 20 mai 2019
15 sept. 2004 à 20:45
Bonsoir
Pardon, effectivement dans mon exemple il y en a que 3. Je vousdrais avec 4 mais j'appliquerai le raisonnement élaboré avec 3. Ici je voudrais qu'il ne reste que :
\retouche

D'avance merci pour votre aide
0
rolletb Messages postés 25 Date d'inscription mercredi 15 septembre 2004 Statut Membre Dernière intervention 20 mai 2019
15 sept. 2004 à 21:11
Bonsoir
Pardon, effectivement dans mon exemple il y en a que 3. Je vousdrais avec 4 mais j'appliquerai le raisonnement élaboré avec 3. Ici je voudrais qu'il ne reste que :
\retouche

D'avance merci pour votre aide
0
purrofixe Messages postés 490 Date d'inscription dimanche 14 mars 2004 Statut Membre Dernière intervention 12 septembre 2007 94
15 sept. 2004 à 22:10
Bonsoir rolletb,
Merci pour la précision.
En résumé, votre demande :
Si entre 1 et 4 "\" >> résultat
-d:\docs\nom\prod\retouche >> d:\docs\nom\prod\retouche
Si plus que 4 "\"
- d:\docs\nom\prod\retouche >> \retouche


Salutations
Jean-Pierre
0

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

Posez votre question
rolletb Messages postés 25 Date d'inscription mercredi 15 septembre 2004 Statut Membre Dernière intervention 20 mai 2019
16 sept. 2004 à 00:11
Bonsoir
En fait plus précisemment
Si plus de 4 "\" -->\retouche si la fin de l'arborescence fini par retouche (comme dans l'exemple)
Sinon ente "1" et "4", ne pas toucher la chaine de caractères

Merci pour votre aide
0
purrofixe Messages postés 490 Date d'inscription dimanche 14 mars 2004 Statut Membre Dernière intervention 12 septembre 2007 94
16 sept. 2004 à 15:31
Bonjour rolletb,
Je n'ai pas touvé de solution en utilisant les fonctions disponibles (ou combinaisons de fonctions). Il faudrait passer par une macro, là il n'y a aucun problème pour un connaisseur.
J'ai pensé à une autre solution qui passe par une petite manipulation très simple. En principe: convertir les données délimitées sous forme de tableau et avec une petite fonction du style SI() en combinaison avecNB.SI(), STXT() et DROITE(), cela devrait faire l'affaire.
Je teste la chose, le détail suivra..
Salutations
Jean-Pierre
0
purrofixe Messages postés 490 Date d'inscription dimanche 14 mars 2004 Statut Membre Dernière intervention 12 septembre 2007 94
16 sept. 2004 à 20:10
Bonjour rolletb,
J’admets que vos données se trouvent dans la colonne A et depuis la ligne 2 et suivantes.
La procédure :
- Sélectionner la plage de données (expl : A2 :A8)
- Copier/Coller sur une nouvelle feuille, début cellule B1
- Barre d’outils : Données/Convertir
- Choix :Délimité, puis Suivant
- Activer : Autre et entrer le signe "\" dans le carrée, puis Suivant
- Sous destination : sélectionner le texte, puis le pointeur sur cellule « C1 »
- Vous avez sous Destination : =$C$1
- Clic sur terminer
- La colonne « A » est libre pour y inscrire la fonction adéquate.
- Formule à copier/coller dans la cellule A1:
=SI(NBVAL(C1:S1)>5; CONCATENER("\";CHOISIR(NBVAL(C1:S1);C1;D1;E1;F1;G1;H1;I1;J1;K1;L1;M1;N1;O1;P1;Q1;R1;S1));B1)
- Faites glisser pour étendre la formule
- Il vous reste à copier le résultat à l’endroit de votre choix ou ce qui est mieux : à l’endroit de votre choix dans la première cellule vous mettez l’adresse de la cellule résultat (expl : votre choix <Feuil1, cellule B2> l’adresse <=Feuil2!A1>.
Vous pouvez me contacter directement si nécessaire.
Bonne chance

Salutations
Jean-Pierre
0
merci pour la réponse, je vais essayer la solution donnée

Merci bien
0
purrofixe Messages postés 490 Date d'inscription dimanche 14 mars 2004 Statut Membre Dernière intervention 12 septembre 2007 94
18 sept. 2004 à 14:06
Bonjour rolletb,
Est-ce que cela fonctionne?
J'ai supposé que le travail doit se répéter pour chaque nouvel enregistrement, alors j'ai préparé une macro qui fait le travail.
Vous pouvez me contacter directement si nécessaire.
Salutations
Jean-Pierre
0
bonjour

Merci pour votre réponse mais je reste coincé : lorsque je recopie la formule en a1 j'ai quelque soit le nombre de "\" le premier sous répertoire qui apparait
ex tes\tes2\test\teesste\testera\point donne tes\test2

je sui aussi coincé pour la macro afin d'automatiser le "données convertir" car je ne vois pas comment automatiser le choix du teste vu qu il es différent. En tous cas merci pour la solution et bon bon week-end
0
purrofixe Messages postés 490 Date d'inscription dimanche 14 mars 2004 Statut Membre Dernière intervention 12 septembre 2007 94
18 sept. 2004 à 17:18
Bonjour rolletb,
Merci de la réponse, J'ai testé chez moi est tout est parfait.
Avez-vous suivi scrupuleusement la marche à suivre!
Questions:
-sur la nouvelle feuille votre chemin dans B1 se trouve sous forme de tableau et occupe les cellules C1, C2 etc : OUI ou NON
-dans la cellule A1 vous avez recopié la formule y compris le signe = : OUI ou NON.
Vous pouvez me joindre directement, vous inscrit n'est ce pas.
Salutations
Jean-Pierre
0
purrofixe Messages postés 490 Date d'inscription dimanche 14 mars 2004 Statut Membre Dernière intervention 12 septembre 2007 94
18 sept. 2004 à 17:33
Hello rolletb,
En relisant votre message vous parlez de répertoire qui apparait
ex tes\tes2\test\teesste\testera\point donne tes\test2
.
Dans la marche à suivre il faut impérativement suivre le point: Choix :Délimité, puis Suivant ; sous assistant conversion, sous type de données d'origine choisir Délimité (dans aucun cas Largeur fixe).
Allez un peut de persévérence, cela va marché.

Salutations
Jean-Pierre
0
rolletb Messages postés 25 Date d'inscription mercredi 15 septembre 2004 Statut Membre Dernière intervention 20 mai 2019
27 sept. 2004 à 18:59
bonsoir

Désolé pour la réponse tardive mais j'ai toujours le même problème : je résume ma procédure. je prends ma ligne en b1 puis convertir --> délimité autre \ -->sélectionne c1 en destination : J'obtiens
0
rolletb Messages postés 25 Date d'inscription mercredi 15 septembre 2004 Statut Membre Dernière intervention 20 mai 2019
27 sept. 2004 à 19:01
bonsoir

Ca y est ça marche, je ne sais pas si c'est possible, je sais je suis pénible mais je voudrais en fait afficher les 2 derniers répertoires. Est ce possible ? En tout cas, merci pour la solution
Sinon j'ai encore un petit problème. Une de mes cellules compte le nombre de \. Lorsque le nombre de \ est égal à 3; je voudrais trouver le maximum de 3 cellules ; si il est egal à 4 je voudrais le max de 4 cellules et ainsi de suite sachant que le nombre de \ varie.
Est ce possible ?
Sinon puis je vous envoyer mon fichier xls à une adresse pour vérifier que j'ai bien entré la bonne formule ?
Désolé du dérangement et d'avance merci
rolletb
0
purrofixe Messages postés 490 Date d'inscription dimanche 14 mars 2004 Statut Membre Dernière intervention 12 septembre 2007 94 > rolletb Messages postés 25 Date d'inscription mercredi 15 septembre 2004 Statut Membre Dernière intervention 20 mai 2019
28 sept. 2004 à 15:09
Bonjour rolletb,
Pour afficher les 2 répertoires, il vous suffit de remplacer la formule existante par la nouvelle :
=SI(NBVAL(C1:S1)>5;CONCATENER("\";CHOISIR((NBVAL(C1:S1)-1);C1;D1;E1;F1;G1;H1;I1;J1;K1;L1;M1;N1;O1;P1;Q1;R1;S1);"\";CHOISIR(NBVAL(C1:S1);C1;D1;E1;F1;G1;H1;I1;J1;K1;L1;M1;N1;O1;P1;Q1;R1;S1));B1)
Pour le petit problème des \ ce n’est pas clair pour moi et petit plus m’aiderait à comprendre !
Bonne semaine.

Salutations
Jean-Pierre
0
purrofixe Messages postés 490 Date d'inscription dimanche 14 mars 2004 Statut Membre Dernière intervention 12 septembre 2007 94
27 sept. 2004 à 23:09
Bonsoir rolletb,
Merci pour le message.
Cela marche comme vous dites, c'est parfait. De plus en attendant j’ai élaboré une petite macro pour le travail répétitif, si vous voulez, vous pouvez me joindre directement, vous êtes inscrit n'est ce pas.
Pour ce soir je vais mettre les puces sous la couverture.
Je regarderai votre demande demain.
Bye

Salutations
Jean-Pierre
0
rolletb Messages postés 25 Date d'inscription mercredi 15 septembre 2004 Statut Membre Dernière intervention 20 mai 2019
27 sept. 2004 à 23:21
Bonsoir

Merci pour les réponses. Effectivement je serais très intéressé par la macro, par contre je ne sais pas comment communiquer directement
Bonsoir et encore merci
roletb
0
purrofixe Messages postés 490 Date d'inscription dimanche 14 mars 2004 Statut Membre Dernière intervention 12 septembre 2007 94
27 sept. 2004 à 23:23
Bonsoir rolletb,
Vous dites: Est ce possible ?
Sinon puis je vous envoyer mon fichier xls à une adresse pour vérifier que j'ai bien entré la bonne formule ?

Ok, sous mon pseudo peut-être!

Salutations
Jean-Pierre
0
rolletb Messages postés 25 Date d'inscription mercredi 15 septembre 2004 Statut Membre Dernière intervention 20 mai 2019
27 sept. 2004 à 23:34
En fait, pour la formule ce n 'est plus necessaire que je l'envoie puisqu'elle fonctionne par contre il me faudrait en fait les deux derniers répertoires (je sais je suis un peu pénible).
Pour le "est ce possible", je voulais savoir si ma condition sur la fonction MAX était possible :
3 \ --> 3 cellules pour calculer le max
4 \ --> 4 cellules
(j'arrive à compter le nombre de\)
ainsi de suite......................
Ci-joint mon adresse pour la macro rolletb@nomade.fr
Tous mes remerciements pour le travail effectué
bertrand
0