Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

combinaison de lettres

264 views
Skip to first unread message

Claudy

unread,
Jul 20, 2002, 11:12:14 AM7/20/02
to
Bonjour à tous,
je recherche dans votre forum, le moyen de trouver toutes les combinaisons
aléatoires de 1 à 16 lettres.
Exemple( pour 3 lettres):
abc
bca
cba
acb
bac
cab

Cerise sur le gâteau:
Dans la liste des combinaisons, retirer celles qui sont correctement
orthographiées!

Merci d'avance
Cl@udy


Denis Michon

unread,
Jul 20, 2002, 11:52:10 AM7/20/02
to
Bonjour Claudy,


Voici un exemple :

Voici le nombre de combinaisons possibles à partir
de 5 lettres regroupés dans une chaîne de 3 caractères.

Il s'agit d'étirer la procédure pour le nombre de caractères désirés.

Pour ce qui est : retirer celles qui sont correctement
orthographiées!

Aucune idée de ce que cela veut dire !!!


------------------------------
Sub Combinaison()

Dim t()

Application.ScreenUpdating = False

'Tu choisis les lettres que tu veux et le nombre
'que tu veux aussi. Il doit y avoir de boucle que de lettres
'pour avoir le nombre total de combinaisons possibles.

t = Array("A", "B", "C", "D", "E")

For A = 0 To UBound(t)
x = x + 1
Range("A" & x) = t(A)

For b = 0 To UBound(t)
x = x + 1
Range("A" & x) = t(A) & t(b)

For c = 0 To UBound(t)
x = x + 1
Range("A" & x) = t(A) & t(b) & t(c)
Next
Next
Next

End Sub
---------------------------

Salutations!


"Claudy" <wem...@skynet.be> a écrit dans le message de news: 3d397db3$1$221$ba62...@news.skynet.be...

sabatier

unread,
Jul 20, 2002, 12:02:56 PM7/20/02
to
moi je comprends que cela veut dire les combinaisons qui représentent un
nom commun de notre vocabulaire...
am I right? claudy will say us soon
jps

Denis Michon

unread,
Jul 20, 2002, 12:34:49 PM7/20/02
to
Bonjour JPS,

Si tu dis vrai , et bien, c'est un problème pour toi !

un gars érudit , connaissant la langue française .

Salutations!


"sabatier" <jps...@wanadoo.fr> a écrit dans le message de news: 3D3989B0...@wanadoo.fr...

Frédéric Sigonneau

unread,
Jul 20, 2002, 2:51:36 PM7/20/02
to
Bonjour,

Au moins 4 macros pour faire des combinaisons/permutations à cette adresse :

http://perso.wanadoo.fr/frederic.sigonneau/Tris.htm

Celle de Myrna Larson pourrait, je pense, te convenir.
Pour retirer des combinaisons renvoyées celles qui correspondent à des mots du
dictionnaire correctement orthographiés (y compris les verbes conjugués), tu
peux te servir de la correction orthographique d'Excel, par exemple dans une
petite fonction personnalisée :

Function MotExiste(Mot$)
MotExiste = Application.CheckSpelling(Mot)
End Function

(fonctionne avec Excel 2002, à vérifier pour les versions antérieures)

FS
--
Frédéric Sigonneau [né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau

Claudy a écrit :

Denis Michon

unread,
Jul 20, 2002, 3:47:34 PM7/20/02
to
Bonjour Frédéric,

La fonction motexiste(mot$) fonctionne bien sous excel 2000

Voici la liste (partiel) des mots que le dictionnaire Excel a retenu de
ma petite procédure.


A
AA
AAB
AAD
AB
ABA
ABC
ABE
AC
ACB
ACD
ACE
AD
ADA
ADC
ADE
AE
AEB
AEC
AED
B
BAA
BAC
BAE
BBA
BBC
BBE
BC
BCB
BCD
BCE
BDA
BDC
BDE
BEA
BEC
BEE
C
CA
CAB
CAC
CAD
CB
CBB
CBD
CC
CCB
CCC
CCD
CCE
CD


Maintenant si JPS était assez généreux pour en donner une définition !!!

;-))


Salutations!


"Frédéric Sigonneau" <frederic....@wanadoo.fr> a écrit dans le message de news: 3D39B138...@wanadoo.fr...

Claudy

unread,
Jul 20, 2002, 4:10:33 PM7/20/02
to
Re bonsoir,
Merci à tous...
Je teste et je vous répond plus tard....Merci.

Cl@udy

Denis Michon <denis....@cgocable.ca> a écrit dans le message :
q7j_8.1571$gM.1...@charlie.risq.qc.ca...

sabatier

unread,
Jul 20, 2002, 5:14:25 PM7/20/02
to
bof, bof, denis...

sabatier

unread,
Jul 20, 2002, 5:23:43 PM7/20/02
to
ben, je voudrais bien mais il parle en quoi le dictionnaire excel?
passe pour BAC, BEC, BEE, CAB, CAC (et encore), CCE (et encore (bis))
mais le reste?????????
jps

GeeDee

unread,
Jul 20, 2002, 6:17:57 PM7/20/02
to
Bonsoir,
il me semblait avoir posté jeudi soir
> Gael <alg...@club-internet.fr> a écrit ...
> Comment puis-je générer l'affichage de toute les combinaisons possible
d'une série ?
> Toute aide serait vraiment la bienvenue. Merci.

une proc récursive pour explorer les combinaisons
comme je ne la voie pas sur le forum
revoici ma proposition :
"===========================================
un petite proc récursive.... ça conviendrai ?
attention le résultat correspond à Factorielle(Nb caractères)
pour 16 caractères !!!! ====> 20922789888000 combinaisons
Excel risque d'etre un peu court !!!!
meme à 200 combinaisons par secondes ;-))))

en A1 une chaine de texte
au-dela de 8 caractères (40320 conbinaisons) tu peux allumer une cigarette,
ou commencer à lire le journal !!!!

les anagrammes se retrouvent en colonnes consécutives (10000 anagrammes par
colonne !!!)
"************* ici la procedure ************
Public pile() As Integer, mot as String, debut as String, partiel() As
String
Public ligne as Integer, colonne as Integer
Sub anagramme()
On Error Resume Next
mot = Cells(1, 1).Value
orig = mot
debut = ""
ligne = 1: colonne = 2
n = Len(mot)
ReDim pile(n), partiel(n)
s20:
If Len(mot) = 1 Then GoTo s40
debut = debut + Left(mot, 1)
p = p + 1
partiel(p) = mot
mot = Right(mot, Len(mot) - 1)
GoTo s20
s40:
ligne = ligne + 1
ecrire = debut & mot
If ligne > 10000 Then ligne = 1: colonne = colonne + 1
Cells(ligne + 1, colonne + 1).Value = ecrire
Application.StatusBar = colonne-2 & "x10000 + " & ligne
i = 2
s50:
mot = partiel(p)
p = p - 1
If Len(debut) = 1 Then GoTo s70
debut = Left(debut, Len(debut) - 1)
GoTo s80
s70:
debut = ""
s80:
pile(i) = pile(i) + 1
If pile(i) < i Then GoTo s110
pile(i) = 0
i = i + 1
If i > n Then Exit Sub
GoTo s50
s110:
mot = Right(mot, Len(mot) - 1) + Left(mot, 1)
GoTo s20
End Sub

@+ Modeste geedee

Denis Michon <denis....@cgocable.ca> a écrit dans le message :
KGf_8.1562$gM.1...@charlie.risq.qc.ca...

0 new messages