Anagramme sur excel

Résolu/Fermé
dmxs291 Messages postés 11 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 29 septembre 2015 - 8 sept. 2013 à 02:00
dmxs291 Messages postés 11 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 29 septembre 2015 - 11 sept. 2013 à 13:44
Bonsoir, je voudrais savoir si on peut saisir une série de lettres sur excel et faire apparaitre tout les anagrammes possibles qu'ils aient un sens ou non. Si oui veillez me donner le procédé à suivre S.V.P, MERCI !
A voir également:

6 réponses

Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
8 sept. 2013 à 18:11
Bonjour
C'est un sujet récurrent, qui à eu beaucoup de réponses. Des intervenants très compétents sur ce site pourront vous proposer des solutions très performantes, mais en attendant, je peux vous proposer bien modestement une solution (qui informatiquement parlant, n'est pas des plus performantes, mais elle à le mérite de fonctionner).
Saisissez les caractères à permuter en A1 (maximum 12 caractères), puis cliquez sur le bouton. Il est évident que, plus il y a de caractères, plus le temps de recherche des permutation sera long.
Essayez en attendant de meilleures propositions.
https://www.cjoint.com/c/CIishRLh5pr
bonne soirée
cdlt
2
Raymond PENTIER Messages postés 58395 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 096
8 sept. 2013 à 18:24
... avec macro, comme annoncé dans mes trois messages.
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
8 sept. 2013 à 18:40
Bonsoir Raymond
Oui bien sûr avec macro. En Excel, ce serait peut-être faisable, mais compliqué à mettre en oeuvre.
Raymond, j'ai vu dans de précédents posts que vous ne pratiquiez pas le VBA, mais vu votre maîtrise d'Excel et sans vouloir vous jeter des fleurs, je ne doute pas un instant que vous apporteriez des solutions pratiques à des problèmes qui ne peuvent se résoudre que par le VBA.
Alors Raymond, le VBA, c'est pour quand?
Bien amicalement
0
Raymond PENTIER Messages postés 58395 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 096
8 sept. 2013 à 18:46
Tous mes neurones sont occupés, et saturés ; il ne m'en reste plus suffisamment pour attaquer une nouvelle activité ; et VBA, c'en est vraiment une !
Autant j'étais fana du Basic, au temps du DOS, autant je n'ai jamais vraiment adhéré à Visual Basic, malgré diverses tentatives.
Mais je te remercie de ton attention !
0
Raymond PENTIER Messages postés 58395 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 096
Modifié par Raymond PENTIER le 8/09/2013 à 05:20
Bonjour.

Si on peut ? Avec une macro écrite en VBA, peut-être ...

Avec les méthodes classiques, je crains qu'il n'y ait aucune autre méthode que celle que tu utilises avec un papier et un crayon !
Excel ne peut alors te servir
1) qu'à calculer le nombre de résultats possibles, à savoir
=PERMUTATION(NBCAR(A1);NBCAR(A1))
et si A1 contient "zut" le résultat du calcul est 6 (à savoir zut-ztu-utz-uzt-tzu-tuz)
Mais si A1 contient "cinq" il y a déjà 24 possibilités ; si A1 contient "douze" il y a 120 solutions ... et quand on arrive à "cordialement" c'est 479 001 600 anagrammes qu'il faut trouver !
2) qu'à écrire tout cela proprement

C'est bien, la retraite ! Surtout aux Antilles ... :-)
☻ Raymond ♂
1
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
8 sept. 2013 à 19:45
Bonjour à tous

Avec mon vieil excel 2003 je ne peux pas ouvrir le fichier de frenchie83 ....
Une autre proposition peut être différente mais toujours VBA
https://www.cjoint.com/?3IitOSd1E7H

Bonne fin de journée ... et bon après midi à Raymond (le veinard)
1
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
8 sept. 2013 à 20:32
Bonsoir ccm81
Pour le plaisir de partager
Voici en version 2000, tout d'abord, je tiens à préciser que mon travail relève de la bidouille, donc pas comparable avec votre travail de Pro, mais bon, ça fonctionne. Quant à la présentation, elle est différente, puisque je mets chaque résultat de permutation dans la même cellule, ce qui me permet de remplir plusieurs colonnes dans le cas où le nombre de caractères à traiter implique un résultat supérieur aux nombres de lignes max.
Pour le fonctionnement, en A1, on met les caractères à permuter sans séparateur, puis on clique sur le bouton.
Un jour où j'aurai le temps, je m'amuserai à le refaire.
bonne soirée
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
8 sept. 2013 à 20:34
Zut, j'ai oublié
https://www.cjoint.com/?CIiunYSVhiJ
mais c'est avec excel 97, ça doit marcher avec 2000
0
dmxs291 Messages postés 11 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 29 septembre 2015
8 sept. 2013 à 14:03
C'est justement ce que je veux faire avec Excel mais j'ai pas l'habitude de l'utiliser conséquence je n'y comprend pas grand chose. Je veux juste programmer Excel de tel sorte que si je tape un mot, il me donne sur une liste toutes les anagrammes possibles.
0

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

Posez votre question
Raymond PENTIER Messages postés 58395 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 096
8 sept. 2013 à 14:26
Je crois que tu n'as pas lu (ou compris) ce que j'ai écrit ... alors je résume :
Presqu'impossible ...
... sauf si tu connais le langage VBA, pour créer une macro.
0
Raymond PENTIER Messages postés 58395 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 096
8 sept. 2013 à 14:30
Cette demande a déjà été formulée dans le forum, et d'après mes souvenirs personne n'avait pu proposer une solution classique.
0
dmxs291 Messages postés 11 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 29 septembre 2015
8 sept. 2013 à 14:43
D'accord je vois, bah merci quand même !
0
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 856
9 sept. 2013 à 01:54
Bonsoir à tous,

Il est tout à fait possible de résoudre ton problème sans passer par VBA.

Il "suffit" de générer les permutations dans l'ordre lexicographique en partant, par exemple, d'un algo kivabien (celui que j'ai utilisé vient du livre de Berstel, Pin et Pocchiola : Mathématiques et informatiques) et de le transposer en Excel/feuille de calcul.

Naturellement, tout ce qui est combinatoire explose rapidement et le nombre d'anagrammes devient inexpoitable.
J'ai donc limité le nombre de lettres à 8 (40 320 permutations quand même).

Ensuite, j'ai travaillé sur les indices (de 1 à 8) pour lister les permutations de 12345678 à 87654321.
A partir de là, il suffit d'utiliser la fonction INDEX() pour avoir l'équivalent alphabétique des permutations.

Les formules ne sont cependant pas simples puisqu'elles font le travail d'un algo.
Voici donc un classeur https://www.cjoint.com/c/CIjbU1S01km qui liste les anagrammes d'un mot de 8 lettres.
Pour des raisons de taille, je n'ai gardé que les 40 premières lignes. Il faudra recopier vers le bas (jusqu'en 40322) pour avoir un tableau complet.

Il faudra le modifier un peu pour qu'il fonctionne avec des mots de longueurs inférieures.

Cordialement
0
Raymond PENTIER Messages postés 58395 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 096
9 sept. 2013 à 02:39
Un seul mot : Bravo !
dmxs291 va pouvoir s'occuper ...
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
9 sept. 2013 à 10:19
Peux tu mettre en ligne ton classeur au format excel 2003, je suis curieux de voir la "bête"
Merci
0
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 856
9 sept. 2013 à 14:57
Bonjour ccm81,

j'ai du remanier mes formules pour qu'elles passent en version 97/2003 (trop de niveaux d'imbrication).
J'ai quand même des messages d'erreur quand je change de format à l'enregistrement mais je ne vois pas de problème quand j'ouvre le fichier xls ainsi généré.
A toi de me dire si ça fonctionne chez toi.

J'ai ajouté des commentaires pour rendre compréhensibles les formules.

Cordialement

https://www.cjoint.com/?CIjo4ccNeVI
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
9 sept. 2013 à 17:32
Bonjour JvDo

Merci d'avoir adapté (et envoyé) le fichier au format 2003
C'est vraiment sympa d'avoir pris la peine d'expliquer la démarche
Je n'ai pas d'erreur, ni à l'ouverture, ni après un F9, ni à l'enregistrement, donc de ce côté là tout va bien
Il ne me reste plus qu'à décortiquer la bête, et là, il y a apparemment du travail!

Bonne fin de journée

Cordialement
0
dmxs291 Messages postés 11 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 29 septembre 2015
11 sept. 2013 à 13:44
Merci à tout les intervenants, j'ai trouvé ce que je voulais, vous êtes vraiment des petits génies, merci encore et bonne journée !
0