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

supprimer dernier caracteres

  • Initiateur de la discussion Initiateur de la discussion maval
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

maval

XLDnaute Barbatruc
Bonjour

Dans ma colonne "A" j'ai une liste de nom finissant par des guillemets comme ceci ...Les Abymes"
J'ai mis se code
Code:
Sub SupprCaractA()

Dim Nc, Cel As Range
    For Each Cel In Range("a1:a1000")
        Cel.Value = Trim(Cel.Value)
        Nc = Len(Cel)
        Cel.Value = Left(Cel, Nc - 1)
    Next Cel
End Sub
j'ai un message d'erreur " Argument ou appel de procédure incorrect"

Je vous remercie de votre aide

Cordialement

max
 
Bonjour le fil, le forum

@maval
Tu veux absolument passer par VBA?

Sinon essaie avec ces modis
Sub SupprCaractA_bis()
Dim Nc&, Cel As Range
For Each Cel In Range("a1:a1000")
Cel.Value = VBA.Trim(Cel.Value)
Nc = VBA.Len(Cel)
Cel.Value = VBA.Left(Cel, Nc - 1)
Next Cel
End Sub
 
Bonjour Staple

je te remercie mais j'ai toujours un message d'erreur " Argument ou appel de procédure incorrect" alors qu'il supprime bien le dernier caractère

@+

max
 
Re

Chez moi ton code produit aussi une erreur

Est-ce qu'il y a d'autres " dans le contenu des cellules de la colonne A?

Si non, tu peux faire comme cela aussi
VB:
Sub SupprCaractA_Ter()
Range("A1", Cells(Rows.Count, 1).End(3)).Replace """", "", 2, 1
End Sub
 
Re,

Avec se code sa fonctionne, je ne comprend pas pourquoi alors que je n'ai que cette colonne dans mon classeur?
Mystère de l'informatique.

Je te remercie et te souhaite une bonne journée

Max
 
Re

Bonjour Gardien de Phare 😉
C'est justement ce que je viens de réaliser 😉
(je suis encore dans les brumes du sommeil, et le café n'est pas encore passé dans la cafetière)
VB:
Sub SupprCaractA_OK()
Dim C As Range, X$
For Each C In Range("a1:a1000")
If Len(C) > 0 Then
X = Trim(C): C.Value = Left(X, Len(X) - 1)
End If
Next
End Sub
 
Re

Cela fonctionne aussi (si pas de formules dans la colonne A)
VB:
Sub SupprCaractA_OKbis()
Dim C As Range, X$
For Each C In Columns(1).SpecialCells(xlCellTypeConstants, 2)
X = Trim(C): C.Value = Left(X, Len(X) - 1)
Next
End Sub
 
Bonjour,

Suite au code pour supprimer le dernier caractère je voudrais ajouter un underscore au mot composé. je sais qu'il faut ajouter "Replace "_" " mais j’essaye depuis hier sans résultat ?

je vous remercie de votre aide.
 
Bonjour le fil, le forum

@maval
En guise d'exemple, pour adaptation au fichier réel (que je te laisse faire)
VB:
Sub test_sans_fichier_joint_par_le_demandeur()
Dim mot_composé$
mot_composé = "Jean-Marie" & Chr(34)
MsgBox Replace(Replace(mot_composé, Chr(34), ""), "-", "_")
End Sub
 
Bonsoir,
Qu'est-ce que tu n'arrive pas à faire ? Ce que l’Agrafe t'a proposé supprime les double-quotes (") exprimées par chr(34) et remplace les tirets (-) par des underscore (_). Peut-être qu'avec un petit fichier représentatif des données d'origine et du résultat attendu, ce serait plus simple, peut-être...
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
897
Réponses
14
Affichages
1 K
  • Question Question
XL 2019 Code VBA
Réponses
12
Affichages
882
Réponses
5
Affichages
958
G
Réponses
13
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…