Supprimer tous les caractères non désirés d'une chaîne de caractères

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 976 fois - Téléchargée 48 fois

Contenu du snippet

Cette fonction retire tous les caractères non désirés d'une chaîne de caractères (Comme les espaces par exemple).

Ex d'appel : RemoveChar("Ceci Est Un Test", " ")
Retour : CeciEstUnTest

A+
Fabian

Source / Exemple :


Public Function RemoveChar(strString As String, strCharacter As String) As String
    Dim intPosition As Integer
    intPosition = 1
    
    While intPosition < Len(strString) And InStr(intPosition, strString, strCharacter) <> 0
        RemoveChar = RemoveChar & Mid(strString, intPosition, _
                                            InStr(InStr(intPosition, strString, strCharacter), strString, strCharacter) - intPosition)
        intPosition = InStr(intPosition, strString, strCharacter) + 1
    Wend
    
    RemoveChar = RemoveChar & Right(strString, Len(strString) - intPosition + 1)
End Function

A voir également

Ajouter un commentaire Commentaires
Messages postés
117
Date d'inscription
lundi 23 octobre 2000
Statut
Membre
Dernière intervention
12 août 2009

je crois voir un truc plus simple ... mais peut-être me trompe-je ...
Public Function Replace(expr, car1, car2)
I = InStr(expr, car1)
Do While I > 0
expr = Left(expr, I - 1) & car2 & Right(expr, Len(expr) - I - Len(car1) + 1)
I = InStr(expr, car1)
Loop
Replace = expr
End Function

Cordialement
Messages postés
36
Date d'inscription
vendredi 5 octobre 2001
Statut
Membre
Dernière intervention
6 février 2009

Tu as tout à fait raison Mercury. Le seul hic est que REPLACE n'existe pas en VBA. Je pense donc que cela peut servir à ceux qui font du VBA.

Et merci pour ta note

PS: N'hésitez pas à me corriger si je me trompe.
Messages postés
329
Date d'inscription
jeudi 3 janvier 2002
Statut
Membre
Dernière intervention
7 octobre 2005

Est-ce qu'un simple REPLACE ne serait pas plus simple à utiliser ?

Mais bon, le but est d'apprendre, et ta fonction peut être utile pour les "puristes" du VB ;-)

Un petit 6/10 me semble honnête.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.