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 ! :oops:

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

Statistiques des forums

Discussions
312 305
Messages
2 087 077
Membres
103 455
dernier inscrit
saramachado