Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Déplacer des caractères

piep14

XLDnaute Occasionnel
Bonjour,

Dans ma cellule, j'ai du texte de ce genre : FERRIERE BOCHARD (LA)
Moi, j'ai besoin de déplacer le (LA) en début de phrase pour obtenir
LA FERRIERE BOCHARD

Si vous avez des idées, je suis preneur

Merci
 

piep14

XLDnaute Occasionnel
Re : Déplacer des caractères

Je pense pourtant pas être loin avec ceci :
=SUBSTITUE(E18; "(LA)"; "LA " & SUBSTITUE(E18; "(LA)"; " "; 1); 1)
Mais je me retrouve avec deux fois le nom de la ville
 

piep14

XLDnaute Occasionnel
Re : Déplacer des caractères

Ceci marche
=SUBSTITUE(SUBSTITUE(E18; "(LA)"; "LA " & SUBSTITUE(E18; "(LA)"; " "; 1); 1);SUBSTITUE(E18; "(LA)"; "LA " & SUBSTITUE(E18; "(LA)"; " "; 1); 1);"LA "&SUBSTITUE(E18;"(LA)";" ";1);1)

Mais ca me semble être un peu une usine à gaz !
 

piep14

XLDnaute Occasionnel
Re : Déplacer des caractères

J'ai voulu tenter pour remplacer LE LA LES L
mais ca ne marche plus

=SI(ESTNUM(TROUVE("(LA)";E18;1)); SUBSTITUE(SUBSTITUE(E18;"(LA)";"LA "&SUBSTITUE(E18;"(LA)";" ";1);1);SUBSTITUE(E18;"(LA)";"LA "&SUBSTITUE(E18;"(LA)";" ";1);1);"LA "&SUBSTITUE(E18;"(LA)";" ";1);1); SI(ESTNUM(TROUVE("(LE)";E18;1));SUBSTITUE(SUBSTITUE(E18;"(LE)";"LE "&SUBSTITUE(E18;"(LE)";" ";1);1);SUBSTITUE(E18;"(LE)";"LE "&SUBSTITUE(E18;"(LE)";" ";1);1);"LE "&SUBSTITUE(E18;"(LE)";" ";1); SI(ESTNUM(TROUVE("(L )";E18;1));SUBSTITUE(SUBSTITUE(E18;"(L )";"L'"&SUBSTITUE(E18;"(L )";" ";1);1);SUBSTITUE(E18;"(L )";"L'"&SUBSTITUE(E18;"(L )";" ";1);1);"L'"&SUBSTITUE(E18;"(L )";" ";1); SI(ESTNUM(TROUVE("(LES)";E18;1));SUBSTITUE(SUBSTITUE(E18;"(LES)";"LES"&SUBSTITUE(E18;"(LES)";" ";1);1);SUBSTITUE(E18;"(LES)";"LES"&SUBSTITUE(E18;"(LES)";" ";1);1);"LES"&SUBSTITUE(E18;"(LES)";" ";1))))))))
 

piep14

XLDnaute Occasionnel
Re : Déplacer des caractères

Presque. Ca marche pour l' la et le.
Par contre, pour LES, il renvoi ES (sans le L devant)

S'il trouve rien, on peut afficher le texte d'origine ?
 
Dernière édition:

Paf

XLDnaute Barbatruc
Re : Déplacer des caractères

re,

modification pour prendre en compte "Les":
=DROITE(SUBSTITUE(A1;")"; );NBCAR(A1)-CHERCHE("(";A1)-1) & " "& GAUCHE(A1;CHERCHE("(";A1)-1)

A+

Edit: il faut que je modifie encore, si la cellule ne comporte pas de (Le) (La) ou (Les) on a #VALEUR!


Re edit :
Cette fois, ça doit être bon:
=SI(ESTERR(CHERCHE("(";A1));A1;DROITE(SUBSTITUE(A1;")"; );NBCAR(A1)-CHERCHE("(";A1)-1) & " "& GAUCHE(A1;CHERCHE("(";A1)-1))

A re +
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : Déplacer des caractères

Bonsoir piep14, le forum,

Si le texte est en A2 formule en B2 :

Code:
=SI(ESTNUM(TROUVE("(";A2));STXT(A2;TROUVE("(";A2)+1;NBCAR(A2)-TROUVE("(";A2)-1)&" "&GAUCHE(A2;TROUVE("(";A2)-2);T(A2))
Deux conditions :

- texte entre parenthèses à la fin du texte étudié

- un espace devant la 1ère parenthèse.

Fichier joint.

Mes meilleurs voeux à tous pour 2014.

Edit : salut Paf

A+
 

Pièces jointes

  • Classeur(1).xls
    25 KB · Affichages: 49
  • Classeur(1).xls
    25 KB · Affichages: 52
  • Classeur(1).xls
    25 KB · Affichages: 60

david84

XLDnaute Barbatruc
Re : Déplacer des caractères

Bonsoir,
à tester :
Code:
=SUBSTITUE(DROITE(A1;NBCAR(A1)-(CHERCHE("(";A1)-1)-1)&" "&GAUCHE(A1;CHERCHE("(";A1)-1);")";"")
A+
Bonsoir Gérard et bonne année à toi aussi !
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Déplacer des caractères

Bonsoir à tous_______________________________EDITION: Bonsoir job75


Une autre possibilité
Données/Convertir Séparateur : (
(deux fois suite en cliquant sur Colonne non distribuée sur les colonnes idoines)
et ensuite un concaténation de ce style
=SUBSTITUE(B1&" "&C1;")";"") puis recopie vers le bas


PS: si besoin, le tout "macroitisé" avec VBA
 

Pièces jointes

  • tdc1.jpg
    65 KB · Affichages: 120
  • tdc1.jpg
    65 KB · Affichages: 120
  • tdc2.jpg
    62.3 KB · Affichages: 80
  • tdc2.jpg
    62.3 KB · Affichages: 82
Dernière édition:

job75

XLDnaute Barbatruc
Re : Déplacer des caractères

Re,

Une variante si le texte entre parenthèses n'a que 2 ou 3 lettres :

Code:
=SI(DROITE(A2)=")";SUPPRESPACE(SUBSTITUE(SUBSTITUE(DROITE(A2;5)&" "&GAUCHE(A2;NBCAR(A2)-5);"(";);")";));T(A2))
Fichier (2).

A+
 

Pièces jointes

  • Classeur(2).xls
    25 KB · Affichages: 42
  • Classeur(2).xls
    25 KB · Affichages: 50
  • Classeur(2).xls
    25 KB · Affichages: 52
Dernière édition:

piep14

XLDnaute Occasionnel
Re : Déplacer des caractères


Il reste un détail, et c'est parfait, pour le L', ca fait un espace après, et forcément, c'est un cas où il ne faut pas
 

job75

XLDnaute Barbatruc
Re : Déplacer des caractères

Re, salut Jean-Marie et David,

Ah oui, pour le L' (apostrophe) :

Code:
=SI(ESTNUM(TROUVE("(";A2));STXT(A2;TROUVE("(";A2)+1;NBCAR(A2)-TROUVE("(";A2)-1)&REPT(" ";DROITE(A2;2)<>"')")&GAUCHE(A2;TROUVE("(";A2)-2);T(A2))
Fichier (3).

A+
 

Pièces jointes

  • Classeur(3).xls
    25.5 KB · Affichages: 61
  • Classeur(3).xls
    25.5 KB · Affichages: 58
  • Classeur(3).xls
    25.5 KB · Affichages: 62
Réactions: Paf

Discussions similaires

Réponses
6
Affichages
527
Réponses
3
Affichages
436
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…