Inversion d'un mot

Fermé
bleudazur - 14 nov. 2007 à 17:24
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 - 14 nov. 2007 à 22:42
Bonjour,

Une personne pourrait-elle m'aider à me dire quelle formule ( s'il en existe une, bien sûr) je dois utiliser sur Excel, pour faire l'inversion d'un mot, et ce , d'une cellule à l'autre.

Exemple: "arbre" doit devenir "erbra"

Ceci pourrait m'aider pour la recherche de mots, pour des mots croisés, par exemple.

Merci d'avance pour votre éventuelle réponse.

Bleudazur(f)

7 réponses

theegyptianrider Messages postés 335 Date d'inscription lundi 12 novembre 2007 Statut Membre Dernière intervention 16 novembre 2007 18
14 nov. 2007 à 17:27
Hello,

je doute que ce soit possible avec exel de faire ça "automatiquement"
0
bleudazur Messages postés 2 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 14 novembre 2007
14 nov. 2007 à 17:37
Hello,

Merci à theegyptianrider pour sa réponse.
Peut être as tu une autre solution à me proposer, via WORD, par exemple.
0
theegyptianrider Messages postés 335 Date d'inscription lundi 12 novembre 2007 Statut Membre Dernière intervention 16 novembre 2007 18
14 nov. 2007 à 17:38
Non désolé mais je ne pense pas!
0
Papou93 Messages postés 146 Date d'inscription mercredi 4 avril 2007 Statut Membre Dernière intervention 5 juin 2012 59
14 nov. 2007 à 20:25
Bonsoir bleudazur,

Ce que tu veux faire n'est pas réalisable avec une formule.
Par contre, si tu connais VBA pour Excel, tu peux tester cette macro :

Public Sub InverseMot(Adr As String)
Dim Mot As string,  Nmot As String
  Mot = Range(Adr).Value
  For n = Len(Mot) To 1 Step -1
    Nmot = Nmot + Mid(Mot, n, 1)
  Next
  Range(Adr).Value = Nmot
  
End Sub


L'appel à cette macro nécessite une adresse de cellule en paramètre :

Ex :
InverseMot "A1"


PS : il est possible, pour se rapprocher de l'usage d'une formule, de créer une fonction VBA qui effectuerait le même traitement, mais je ne maîtrise pas les fonctions VBA. Peut-être qu'un forumeur averti pourrait nous y aider ?

Cordialement.
0

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

Posez votre question
bleudazur Messages postés 2 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 14 novembre 2007
14 nov. 2007 à 20:56
Bonsoir ,

Merci pour vos réponses, et la proposition de papou93.
Bien que j'ai déjà entendu parler de VBA, je ne maitrise pas non plus cette fonction, mais je vais me renseigner.



Cordialement

Bleudazur
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 243
14 nov. 2007 à 21:12
Bonsoir papou93 et tout le monde,

Créer une fonction n'est pas plus difficile qu'une macro.
Pour reprendre ta macro papou93 voici ce que ça donne:
Function InverseMot(mot as String) as String
    Dim Nmot As String
    For n = Len(mot) To 1 Step -1
      Nmot = Nmot + Mid(mot, n, 1)
    Next
    InverseMot = Nmot
End Function


Déclaration avec Function, et déclaration des parametres entre les ().
Ces parametres seront accessibles en tant que variables, le type (as string) est facultatif mais c'est préférable de le spécifier.
Le retour de la fonction se fait avec: nom_de_la_fonction = valeur_à_retourner. Il peut y en avoir plusieurs à l'intérieur du code.

La déclaration d'une fonction personnalisée ne peut se faire que dans un module (dans VBA: clic droit dans la fentre 'projet' et 'Insertion / module'.

eric
0
Papou93 Messages postés 146 Date d'inscription mercredi 4 avril 2007 Statut Membre Dernière intervention 5 juin 2012 59
14 nov. 2007 à 22:23
Bonsoir aux participants,

Merci eriic pour ta précision.
Je savais que les fonctions étaient comparables aux macros, malgré quelques nuances subtiles comme le passage des paramètres.
Encore merci d'avoir éclairé ma lanterne, je vais pouvoir continuer à exploiter ces nouvelles connaissances.

Cordialement.
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 243
14 nov. 2007 à 22:42
Ca n'aura pas de diffultés pour toi, et tu verras, ça va t'ouvrir de nouveaux horizons.
Garde en tête qu'une fonction retourne toujours une valeur.
Et n'est pas réservée aux feuilles excel. Si tu as un calcul répétitif dans ton programme tu peux le faire par fonction. Ca allege et rend la lecture plus facile. Par contre ça consomme un plus en ressource donc y réflechir avant d'en mettre une dans une boucle de 100000 calculs... Si elle ne sert qu'au programme ajoute Private devant, elle n'apparaitra pas dans les fonctions personnalisées.
Bonne soirée
eric
0