Supprimer le ou les / en fin de chaine de caractère

Résolu/Fermé
Yoqui - 3 juin 2020 à 22:26
Yoki4205 Messages postés 9 Date d'inscription mercredi 3 juin 2020 Statut Membre Dernière intervention 5 juin 2020 - 5 juin 2020 à 14:19
Bonjour,
En A5, j'ai concatené A1, A2, A3, A4 (ce sont des prénoms) et je les ai séparés par des /. Je souhaiterais que si une ou plusieurs cellules sont vides alors pas de / après.
j'ai utilisé la formule :
==GAUCHE(A5;TROUVE(" / ";A5;TROUVE(" ";A5)+1)-1)
qui me supprime les 3 derniers espaces et / mais pas le / qui suit le 1er prénom en A1 lorsque A2;A3;A4 sont vides.
Merci d'avance de vous pencher sur mon problème et surtout de me faire part de vos connaissances pour le résoudre


Configuration: Windows / Firefox 76.0
A voir également:

8 réponses

via55 Messages postés 14432 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 21 juin 2024 2 713
5 juin 2020 à 11:04
Bonjour

Ton fichier avec me fonction personnalisée qui règle le problème
https://www.cjoint.com/c/JFfjdF3S1dP

Cdlmnt
Via
1
Yoki4205 Messages postés 9 Date d'inscription mercredi 3 juin 2020 Statut Membre Dernière intervention 5 juin 2020
5 juin 2020 à 12:23
Ouf, enfin !
C'est un double grand merci Via 55 car vous m'avez fait découvrir la fonction personnalisée qui jusqu'à présent me rebutait.
0
tontong Messages postés 2551 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 18 juin 2024 1 055
5 juin 2020 à 13:51
Bonjour,
Rien de surprenant!
Esttexte() teste si la cellule contient du texte. La formule qui cherche le prénom renvoie "" si elle n'en trouve pas. Hélas pour Excel "" est un texte vide, mais c'est un texte.
On peut écrire:
A5=A1&SI(ESTTEXTE(A2)*(A2<>"");" / ";"")&A2&SI(ESTTEXTE(A3)*(A3<>"");" / ";"")&A3&SI(ESTTEXTE(A4)*(A4<>"");" / ";"")&A4
Explication:
Quand il n'y a pas de prénom ESTTEXTE(A4) renvoie Vrai à cause du texte vide "" ; mais (A4<>"") renvoie Faux et Vrai*Faux= Faux.
1
via55 Messages postés 14432 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 21 juin 2024 2 713
3 juin 2020 à 23:38
Bonjour

Une possibilité avec une fonction personnalisée qui permet de concaténer une plage plus vaste si nécessaire sans avoir à refaire une formule de plus en plus complexe
https://www.cjoint.com/c/JFdvLLhfJ3P

Cdlmnt
Via
0
Yoki4205 Messages postés 9 Date d'inscription mercredi 3 juin 2020 Statut Membre Dernière intervention 5 juin 2020
4 juin 2020 à 06:41
merci beaucoup via55 mais je ne suis pas assez calée pour intégrer une fonction.
0
Raymond PENTIER Messages postés 58506 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 20 juin 2024 17 136
4 juin 2020 à 02:44
Bien le bonjour, ami Via !

Yoqui, tu as deux problèmes différents ; il te faut donc une formule en deux parties :
=SI(A2&A3&A4="";SUBSTITUE(A5;" / ";) ; GAUCHE(A5;TROUVE(" / ";A5;TROUVE(" ";A5)+1)-1) )
0

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

Posez votre question
Yoki4205 Messages postés 9 Date d'inscription mercredi 3 juin 2020 Statut Membre Dernière intervention 5 juin 2020
Modifié le 4 juin 2020 à 07:30
Merci beaucoup Raymond.
En recopiant la formule en A5 ca m'affiche "0" mais si je la mets en A6 Ca Marche et supprime bien les / et espace en fin de chaine, sauf que si A1,A2,A3,A4 sont remplies, elle supprime le contenu de la cellule A3 et A4.
Encore un petit coup de pouce s'il vous plait ?
0
tontong Messages postés 2551 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 18 juin 2024 1 055
4 juin 2020 à 13:44
Bonjour,
Le plus simple serait peut-être de ne pas insérer " / "lors de la concaténation quand il n'y en a pas besoin?
A5=A1&SI(ESTTEXTE(A2);" / ";"")&A2&SI(ESTTEXTE(A3);" / ";"")&A3&SI(ESTTEXTE(A4);" / ";"")&A4
0
Yoki4205 Messages postés 9 Date d'inscription mercredi 3 juin 2020 Statut Membre Dernière intervention 5 juin 2020
4 juin 2020 à 15:01
Merci Tontong.
dommage la formule me donne " 0 " en A5.
J'avais pensé à cette possibilité de ne pas insérer " / " lors de la concaténation quand il n'y en a pas besoin, mais j'avais échoué pourtant ça me semblait être aussi une piste intéressante.
Mais je ne comprends toujours pas pourquoi j'ai un " 0 " qui s'affiche.

Comme la formule de Raymond me donne aussi " 0 ", j'ai regardé le format de la cellule mais elle est en standard, est-ce logique ? ou le problème est ailleurs ?
cdlt
0
tontong Messages postés 2551 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 18 juin 2024 1 055
4 juin 2020 à 15:55
Il faut nous joindre un fichier en utilisant mon-partage.fr ou Cjoint.com.
Cela nous donnera une chance de comprendre pourquoi les formules donnent 0.
0
Yoki4205 Messages postés 9 Date d'inscription mercredi 3 juin 2020 Statut Membre Dernière intervention 5 juin 2020 > tontong Messages postés 2551 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 18 juin 2024
5 juin 2020 à 05:53
https://www.cjoint.com/c/JFfdZU4DufM
Bonjour tontong
Ci-joint le fichier demandé, en espérant que je ne me soit pas trompée dans la procédure.
Votre formule fonctionne très bien pour un tableau, tel que je vous l'ai présenté initialement mais pas pour mon tableau ci-joint. car pour simplifier mes explications j'ai omis de vous préciser que la concaténation des cellules des colonnes E, F, G, H, sont des formules qui extraient les prénoms des cellules A, B, C, D. Désolée, je ne pensais pas que ça pouvait avoir une incidence sur la formule finale colonne I.
Les colonnes E, F, G, H ne me sont pas indispensables. Compte tenu de mes faibles connaissances en Excel, ça me semblait plus compréhensible de décomposer en créant des colonnes "prénoms" pour ensuite les concaténer en colonne I, mais si vous avez une solution pour concaténer directement en colonne I tous les prénoms des colonnes A,B,C,D en les séparant par des " / " ou pas si cellules vides, je suis très preneuse.
Merci d'avance
0
Yoki4205 Messages postés 9 Date d'inscription mercredi 3 juin 2020 Statut Membre Dernière intervention 5 juin 2020
5 juin 2020 à 14:19
Formidable tontong ! et en plus c'est une formule et surtout j'ai des explications. Je progresse ! je progresse ! grace à vous tous.
1* 1000 mercis
0