Modifier une fonction d’inversion

ptéranodon Messages postés 465 Date d'inscription   Statut Membre Dernière intervention   -  
DjiDji59430 Messages postés 4278 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous ;)

j'ai la formule suivante qui inverse les mots qui ont un maximum de 6 lettres :

=DROITE(A1;1)&STXT(A1;NBCAR(A1)-1;1)&SI(NBCAR(A1)>2;STXT(A1;NBCAR(A1)-2;1);"")&SI(NBCAR(A1)>3;STXT(A1;NBCAR(A1)-3;1);"")&SI(NBCAR(A1)>4;STXT(A1;NBCAR(A1)-4;1);"")&SI(NBCAR(A1)>5;STXT(A1;NBCAR(A1)-5;1);"")&SI(NBCAR(A1)>6;STXT(A1;NBCAR(A1)-6;1);"")

Quelqu'un pourrait me le modifier pour qu'elle puisse fonctionner avec 11 lettres ?

Merci

Configuration: Windows Seven sur PC et Mac osX 10.4.10 Ipad 2
Camino

3 réponses

  1. DjiDji59430 Messages postés 4278 Date d'inscription   Statut Membre Dernière intervention   717
     
    Bonjour à tous,

    =DROITE(A1;1)&STXT(A1;NBCAR(A1)-1;1)&SI(NBCAR(A1)>2;STXT(A1;NBCAR(A1)-2;1);"")&SI(NBCAR(A1)>3;STXT(A1;NBCAR(A1)-3;1);"")&SI(NBCAR(A1)>4;STXT(A1;NBCAR(A1)-4;1);"")&SI(NBCAR(A1)>5;STXT(A1;NBCAR(A1)-5;1);"")&SI(NBCAR(A1)>6;STXT(A1;NBCAR(A1)-6;1);"")&SI(NBCAR(A1)>7;STXT(A1;NBCAR(A1)-n;1);"")& etc ....
    Tu ajoutes jusqu’à 11
    &SI(NBCAR(A1)>n;STXT(A1;NBCAR(A1)-n;1);""), n allant de 7 a 11

    Crdlmt
    0
  2. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Bonjour à tous les deux

    Comme elle est un peu lourde, tu pourrais tenter une fonction personnalisée (macro) nettement plus lisible
    Elle s'utilise comme une fonction excel
    Alt-F11 pour accéder au code (dans Module 1)
    Il te faudra enregistrer le fichier avec le type .xlsm (Fichier/enregistre sous/ Type etc ...)

    Option Explicit
    
    Public Function InverseMot(m As String, lm As Byte) As String
    If Len(m) <= lm Then
      InverseMot = StrReverse(m)
    Else
      InverseMot = m
    End If
    End Function

    https://mon-partage.fr/f/yBOHBNAY/

    Cdlmnt
    0
    1. ptéranodon Messages postés 465 Date d'inscription   Statut Membre Dernière intervention   4
       
      Merci ccm88 ;)
      Je n’ai pas accès aux macros (je suis sur un Ipad).

      Merci Djidji ;)

      Ca marche super mais j’ai un problème de tri.
      Quand je trie, certains mots à l’envers ne sont pas au bonne endroit.
      Il semble que ces mots ont un espace devant.
      Comment fait-on pour supprimer un espace devant une formule ?

      ecipsoH
      edairéM
      ediclA
      egèhplE
      enègolihP
      enèhtsoS
      epicnirP
      epraciloP
      eriognirG
      nilusrU
      nimixaM
      nohtagA
      rodilihP
      boJ
      cinordnA
      cirbA
      cirfluV
      civoduL
      cueirB
      deirfgeiS
      dlabihcrA
      0
  3. ptéranodon Messages postés 465 Date d'inscription   Statut Membre Dernière intervention   4
     
    3
    ptéranodon 2 - 1 août 2019 à 17:01
    Merci ccm88 ;)
    Je n’ai pas accès aux macros (je suis sur un Ipad).

    Merci Djidji ;)

    Ca marche super mais j’ai un problème de tri.
    Quand je trie, certains mots à l’envers ne sont pas au bonne endroit.
    Par exemple les "n" arrivent trop tôt dans le tri et le "b" trop tard.
    Il semble que ces mots ont un espace devant.
    Comment fait-on pour supprimer un espace devant une formule ?

    ecipsoH
    edairéM
    ediclA
    egèhplE
    enègolihP
    enèhtsoS
    epicnirP
    epraciloP
    eriognirG
    nilusrU
    nimixaM
    nohtagA
    rodilihP
    boJ

    cinordnA
    cirbA
    cirfluV
    civoduL
    cueirB
    deirfgeiS
    dlabihcrA
    0
    1. DjiDji59430 Messages postés 4278 Date d'inscription   Statut Membre Dernière intervention   717
       
      Essaye en faisant précéder ta formule par supprespace(ta formule)

      Crdlmt
      0
    2. ptéranodon Messages postés 465 Date d'inscription   Statut Membre Dernière intervention   4
       
      Comme ça ?

      SUPPRESPACE(=DROITE(A1;1)&STXT(A1;NBCAR(A1)-1………)

      Si oui quand je fais cela j’ai une alerte qui me dit de mettre une apostrophe devant = au tout début.
      (‘=)
      Mais ça ne fonctionne pas…
      0
    3. DjiDji59430 Messages postés 4278 Date d'inscription   Statut Membre Dernière intervention   717
       
      =SUPPRESPACE(DROITE(A1;1)&STXT(A1;NBCAR(A1)-1………)
      0