Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Membre du Club
    Formule tri alphabétique dans une seule et même cellule
    Bonjour,

    J'essaie de faire un truc depuis ce matin sans y arriver.

    J'ai une cellule avec à l'intérieur une succession de lettres dans le désordre. J'aimerai trier les lettres de cette cellule par ordre alphabétique et que le résultat se retrouve dans une seule cellule. Le tout via des formules.

    Exemple :
    cellule initiale A1 = HGTIOEKLC
    cellule résultat B1 = CEGHIKLOT

    Contraintes :
    - Je ne souhaite pas utiliser la souris pour arriver au résultat. Le résultat doit apparaître sans l'intervention humaine, avec des formules prédéfinies qui permettent d'obtenir le résultat immédiatement quand la cellule initiale est modifiée.
    - Je ne souhaite pas utiliser de macro pour arriver au résultat. Uniquement par formules. (En macro j'y arrive, ici ce n'est pas l'objectif)
    - Je souhaite intégrer ce système à une base de données Excel. Je peux donc exploiter seulement les colonnes pour faire mes formules. Chaque ligne contiendra une cellule résultat en fonction de sa cellule initiale.

    Mise à part ces contraintes, tout est permis.

    J'ai déjà tenté la décomposition par colonne de la cellule par la formule STXT. J'ai donc 1 lettre par colonne. Mais après je n'arrive pas à remettre tout dans une seule cellule et dans l'ordre alphabétique. Je bloque.

    Quelqu'un a-t-il une idée svp ?

  2. #2
    Responsable
    Office & Excel

    Salut.

    Heureusement que tu es en Office 365 ... : =JOINDRE.TEXTE("";VRAI;TRIER(STXT(A1;LIGNE(INDIRECT("a1:a" & NBCAR(A1)));1)))



    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    Vous avez apprécié la réponse? =>
    ---------------

  3. #3
    Membre du Club
    GE-NIAL ! exactement ce que je voulais ! Merci infiniment.

    Effectivement heureusement que je suis en O365 je peux maintenant compter cette formule au panthéon des formules qui ont changé ma vie juste après le recherchex

  4. #4
    Responsable
    Office & Excel

    Note bien que le "a1:a" utilisé avec Indirect est du texte et tu peux garder "a1:a" quelle que soit la cellule qui contient les lettres à trier.




    Dans l'illustration ci-dessus, "a1:a" est juste utilisé avec NBCAR(C3) dans INDIRECT pour induire la matricielle qui doit "boucler" autant de fois qu'il y de caractères dans la cellule testée.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    Vous avez apprécié la réponse? =>
    ---------------

###raw>template_hook.ano_emploi###