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

XL 2013 Supprimer caractères

maval

XLDnaute Barbatruc
Bonjour,
j'ai une liste de nom comme ceci
59 001 - ABANCOURT (*) et j'aimerai avoir ceci 59 001 - Abancourt
Je joint mon fichier je vous remercie d'avance
Max
 

Pièces jointes

  • ESSAIE.xlsx
    8.7 KB · Affichages: 11

soan

XLDnaute Barbatruc
Inactif
Bonjour maval, excfl,

je te propose 2 solutions :

* fichier "ESSAI v1"

formule en B5 (déjà tirée vers le bas jusqu'en B25) :

=SUBSTITUE(A5;" (*)";"")

note bien qu'il y a 1 espace avant la parenthèse gauche de l'argument ancien_texte pour éviter que cet espace reste en fin de chaîne de caractères après la substitution : ça ferait un caractère supplémentaire en trop !



* fichier "ESSAI v2"

cette fois, il n'y a qu'une seule colonne ; fais Ctrl e ➯ travail effectué !

j'ai utilisé la méthode des tableaux ➯ ça sera très rapide, même sur plusieurs milliers de lignes.

VB:
Sub Essai()
  Dim n&: n = Cells(Rows.Count, 1).End(3).Row: If n < 5 Then Exit Sub
  Dim T, i&: n = n - 4: T = [A5].Resize(n)
  For i = 1 To n
    T(i, 1) = Replace$(T(i, 1), " (*)", "")
  Next i
  Application.ScreenUpdating = 0: [A5].Resize(n) = T
End Sub



merci de me dire quelle méthode tu as préférée ; perso, je te conseille le 2ème fichier.

si besoin, tu peux demander une adaptation.
à te lire pour avoir ton avis.



EDIT : grâce au post #4 de sylvanu, je me suis rendu compte que j'ai zappé les minuscules ! les nouvelles versions corrigées des fichiers sont dans mon post #5 ; cliquer sur CE LIEN.

soan
 

Pièces jointes

  • ESSAI v1.xlsx
    8.9 KB · Affichages: 2
  • ESSAI v2.xlsm
    14.3 KB · Affichages: 5
Dernière édition:

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Maval, Excfl, Soan,
Un essai par formule avec :
VB:
=SUBSTITUE(GAUCHE(A5;CHERCHE(" - ";A5)+3)&MINUSCULE(STXT(A5;CHERCHE(" - ";A5)+4;1000));"(*)";"")

59 001 - ABANCOURT (*) donne 59 001 - Abancourt avec le respect majuscules/minuscules.
 

Pièces jointes

  • ESSAIE.xlsx
    9.2 KB · Affichages: 4

soan

XLDnaute Barbatruc
Inactif
Bonjour sylvanu,

tu as raison ! excfl et moi, on a zappé les minuscules !

nouvelles versions de mes 2 fichiers précédents :

* fichier "Essai v3"

formule en B5 (déjà tirée vers le bas jusqu'en B25) :

=NOMPROPRE(SUBSTITUE(A5;" (*)";""))



* fichier "Essai v4"

même utilisation : Ctrl e ➯ travail effectué !

(toujours avec la méthode très rapide des tableaux)

VB:
Sub Essai()
  Dim n&: n = Cells(Rows.Count, 1).End(3).Row: If n < 5 Then Exit Sub
  Dim T, i&: n = n - 4: T = [A5].Resize(n)
  For i = 1 To n
    T(i, 1) = WorksheetFunction.Proper(Replace$(T(i, 1), " (*)", ""))
  Next i
  Application.ScreenUpdating = 0: [A5].Resize(n) = T
End Sub



@maval : bien sûr, mes 2 fichiers précédents sont devenus inutiles !

soan
 

Pièces jointes

  • ESSAI v3.xlsx
    8.9 KB · Affichages: 2
  • ESSAI v4.xlsm
    14.4 KB · Affichages: 4

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…