Fonction Excel inversion de texte

Résolu
zoslex Messages postés 18 Date d'inscription mardi 27 mai 2003 Statut Membre Dernière intervention 14 mars 2006 - 27 sept. 2005 à 11:23
 kendavros - 10 mars 2013 à 17:37
Bonjour,

Je cherche à créer une fonction sous Excel dans l'objectif d'inverser une chaîne de caractère. Exemple : "azerty" => "ytreza".

La fonction CHERCHER recherche un caractère de la gauche vers le droite dans Excel. Existe-il l'équivalant de droite à gauche ?

Merci d'avance,

ZosleX

5 réponses

cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
27 sept. 2005 à 12:07
Salut,
A défaut de connaitre une formule sous Excel voici une petite fonction perso à mettre dans l'éditeur de code de ta feuille ou classeur excel peut importe

Exemple d'utilsation: MsgBox InverseChars("abcdefghijklmnopqrstuvwxyz")


Public Function InverseChars(MaChaine As String) As String


Dim sTmp As String
Dim i As Integer

For i = 0 To Len(MaChaine) - 1
sTmp = sTmp & Mid$(MaChaine, Len(MaChaine) - i, 1)
Next

InverseChars = sTmp

End Function


Si la réponse te conviens merci de l'accepter
3
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
27 sept. 2005 à 15:21
Bonjour,

Voici la Function Inverser.Pour l'utiliser, tu place du texte (par
exemple en A1, A2) et en B1 tu mets =Inverser(A1), en B2
=Inverser(A2) etc...



Function Inverser(ChaineDepart) As String

' Retourne son argument, inversé

Dim i As Integer, LongueurChaine As Integer

Inverser = ""

LongueurChaine = Len(ChaineDepart)

For i = LongueurChaine To 1 Step -1

Inverser = Inverser & Mid(ChaineDepart, i, 1)

Next i

End Function



jpleroisse



Si une réponse vous convient, cliquez Réponse Acceptée.
3
zoslex Messages postés 18 Date d'inscription mardi 27 mai 2003 Statut Membre Dernière intervention 14 mars 2006
27 sept. 2005 à 21:58
Merci.

La réponse donnée par jpleroisse est environ 20% plus rapide que celle de Willi.

ZosleX
0
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
27 sept. 2005 à 22:27
Je pense que cela vient de la
jpleroisse part directement de la fin de la chaine et ne calcule qu'une seule fois sa longeur
alors que moi dans ma boucle je recherche à chaque fois la longeur de ma chaine que je soustrait à i
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
VB dans Excel 2010

Function Inverser(ByVal Chaine$)
Inverser = StrReverse(Chaine)
End Function

... pour la mémoire des générations futures

Kendavros
0
Rejoignez-nous