Toute fonction Excel qui inversera une chaîne?

16

Existe-t-il des fonctions Excel intégrées qui inverseront une chaîne?

mindless.panda
la source
vous devriez choisir la réponse avec strReverse
Max Hodges

Réponses:

9

Il n'y a pas de fonction intégrée à ma connaissance, mais vous pouvez créer votre propre fonction personnalisée.

Tout d'abord - créez un nouveau module:

  1. Entrez dans VBA (appuyez sur Alt + F11)
  2. Insérez un nouveau module (Insertion> Module)

Deuxièmement - collez la fonction suivante dans votre nouveau module ( référence ):

Function Reverse(Text As String) As String
    Dim i As Integer
    Dim StrNew As String
    Dim strOld As String
    strOld = Trim(Text)
    For i = 1 To Len(strOld)
      StrNew = Mid(strOld, i, 1) & StrNew
    Next i
    Reverse = StrNew
End Function

Vous devriez maintenant pouvoir utiliser la fonction Inverser dans votre feuille de calcul

quickcel
la source
62

La réponse actuellement acceptée est un mauvais moyen d'inverser une chaîne, surtout quand il y en a une intégrée dans VBA, utilisez plutôt le code suivant (devrait agir de la même façon mais exécuter beaucoup plus rapidement):

Function Reverse(str As String) As String
    Reverse = StrReverse(Trim(str))
End Function
Grant Peters
la source
@ n00b - "comment créer un module" n'était pas la question. :) Cette solution est beaucoup plus efficace / plus rapide / plus facile, même si je ne sais pas pourquoi a TRIMété ajoutée, car aucun espace supplémentaire n'a été spécifié dans la question. Pour les ensembles de données "énormes", supprimez-les TRIMsi vous n'en avez pas besoin.
ashleedawg