Analyse combinatoire
#1
Aspirant XLPages

Inscription: 31/03/2008

Messages: 31

Système d'exploitation:
PC
Version Excel utilisée:
Excel 2003
Posté le : 03-06-2008 05h50
Bonjour à toutes et à tous
Dans le cadre de l'analyse combinatoire j'ai créé un programme permettant d'obtenir un arrangement quelconque (sans répétition) de 6 Majuscules parmi 26 (concaténation et valeur)
La procédure Epuration n'est pas obligatoire, elle permet simplement la remise à blanc des feuilles Table et Codes étant donné qu'il est possible d'exécuter plusieurs fois la procédure Paramètres sans remise à blanc des feuilles Table et Codes.
Le classeur Excel est joint
J'aimerais avoir l'avis d'un expert car si je pratique Excel je suis novice en Vba
Remerciements anticipés
Cordiales salutations et bonne journée
Pièce jointe:
zip Copie de Séquences 6 lettres.zip   [ Taille: 24.79 Ko - Téléchargements: 942 ]
Hors Ligne
Rapport   Haut 

Re: Analyse combinatoire
#2
Accro XLPages

Inscription: 23/05/2007
De Chamrousse

Messages: 309

Système d'exploitation:
PC
Version Excel utilisée:
2013
Posté le : 03-06-2008 08h55
Bonjour à tous,

En partant de ce principe :



[hr]
Image redimensionnée

[hr]

Tu pourrais remplacer :
120   Range("H8").Select
121   ActiveCell
.FormulaR1C1 "=VLOOKUP(Lettre_6,Position_6,2,0)"

par
120   Range("H8").Formula "=VLOOKUP(Lettre_6,Position_6,2,0)"

et aussi
Range("I8,J8").Select
Selection
.ClearContents

par
Range("I8,J8").ClearContents


Ce qui pourrait donner pour le code Epuration :
Option Explicit
Dim vRetour 
As String
Dim vCellule 
As Object
Sub Epuration
()
      
'*****FeuilleTable
1     Worksheets("Table").Activate
      '
Alphabets et Valeurs
2     Range
("A3:L28").ClearContents
3     Range
("A3").Select
      
'*****FeuilleCodes
4     Worksheets("Codes").Activate
      '
Lettres
5     Range
("A3:F3").ClearContents
      
'Alpha_&_Num
6    Range("G3:H8").ClearContents
      '
Alpha_concaténées_&_Num_cumulées
7    Range
("I8,J8").ClearContents
8    Range
("A3").Select
End Sub


à la place de :

Option Explicit
Dim vRetour 
As String
Dim vCellule 
As Object
Sub Epuration
()
      
'*****FeuilleTable
1     Worksheets("Table").Activate
      '
Alphabets
2     Range
("A3:A28,C3:C28,E3:E28,G3:G28,I3:I28,K3:K28").Select
3     Selection
.ClearContents
      
'Valeurs
4     Range("B3:B28,D3:D27,F3:F26,H3:H25,J3:J24,L3:L23").Select
5     Selection.ClearContents
6     Range("A3").Select
      '
*****FeuilleCodes
7     Worksheets
("Codes").Activate
      
'Lettres
8     Range("A3:F3").Select
9     Selection.ClearContents
      '
Alpha_&_Num
10    Range
("G3:G8,H3:H8").Select
11    Selection
.ClearContents
      
'Alpha_concaténées_&_Num_cumulées
12    Range("I8,J8").Select
13    Selection.ClearContents
14    Range("A3").Select
End Sub




[hr]
Image redimensionnée

[hr]


Mais je ne suis pas expert, c'est ce qui m'a sauté aux yeux

A+
Edité par JCGL le 04/06/2008 15:14:23


Cordialement
Hors Ligne
Rapport   Haut 

Re: Analyse combinatoire
#3
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 03-06-2008 20h55
Bonsoir Lotus27, JCGL, le Forum,

A ma connaissance, il n'y a pas d'expert ici, seulement des passionnés

A vrai dire, je n'ai pas bien saisi le sens de la question... :bof:

Cela dit, je continue sur la lancée de JCGL. Ce qui est valable pour Select, l'est aussi pour l'Activate :
Sub Epuration()
    
'*****FeuilleTable
    With Worksheets("Table")
        .Range("A3:A28,C3:C28,E3:E28,G3:G28,I3:I28,K3:K28").ClearContents
        '
Valeurs
        
.Range("B3:B28,D3:D27,F3:F26,H3:H25,J3:J24,L3:L23").ClearContents
    End With
    
'*****FeuilleCodes
    With Worksheets("Codes")
        '
Lettres
        
.Range("A3:F3").ClearContents
        
'Alpha_&_Num
        .Range("G3:G8,H3:H8").ClearContents
        '
Alpha_concaténées_&_Num_cumulées
        
.Range("I8,J8").ClearContents
    End With
End Sub


Cordialement,

NB : Heu... pour rappel JCGL, le bouton pour les balises Code VBA c'est Image redimensionnée (et non Image redimensionnée qui est réservé aux formules de feuille de calcul)...
Edité par myDearFriend! le 03/06/2008 21:46:25

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: Analyse combinatoire
#4
Accro XLPages

Inscription: 23/05/2007
De Chamrousse

Messages: 309

Système d'exploitation:
PC
Version Excel utilisée:
2013
Posté le : 03-06-2008 21h40
Bonjour à tous,
Salut Didier

Comme dit précédemment, je ne suis pas expert, tout juste "un tant soit peu compétent".

A++ Didier
A+ à tous


Cordialement
Hors Ligne
Rapport   Haut 

Re: Analyse combinatoire
#5
Aspirant XLPages

Inscription: 31/03/2008

Messages: 31

Système d'exploitation:
PC
Version Excel utilisée:
Excel 2003
Posté le : 04-06-2008 07h32
Bonjour à toutes et à tous

Ma question se scinde en deux questions :
Procédure paramètres
Création valeurs
Ligne 35 Ligne 52
Transcription en Vba des valeurs de la Feuille Mémo

Création décalage
Ligne 53 Ligne 94
Suppression des lettres doublées les arrangements se faisant sans répétition

J'aimerais avoir confirmation ou conseils pour ces deux opérations

Remerciements anticipés
Cordiales salutations Bonne journée
Hors Ligne
Rapport   Haut 

Re: Analyse combinatoire
#6
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 04-06-2008 22h35
Bonsoir Lotus27, JCGL, le Forum,

Bon... après avoir tenté une plongée dans ton projet, je dois malheureusement me rendre à l'évidence... je n'ai absolument rien compris.
J'en suis désolé Lotus27, mais visiblement ta question semble s'adresser particulièrement aux matheux et personnellement, j'ai un gros problème : je ne suis absolument pas matheux !

Si je me contente de survoler tout ça et si je me base uniquement sur le code VBA utilisé, je ne peux que répéter les remarques précédentes sur l'utilisation inutile des Activate de feuilles et Select de cellules et plages. Pour le reste, c'est hors de mes compétences.
Pour la partie allant de la ligne 35 à 52, j'imagine qu'il doit être possible de faire plus court, mais ça ne rendra pas la procédure plus limpide pour autant, bien au contraire.
Pour la partie allant de la ligne 53 à 94, mon incompréhension du sujet ne m'a pas permis d'analyser ce qu'il était possible de faire.

Désolé de ne pouvoir t'être d'un plus grand secours.

Cordialement,

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: Analyse combinatoire
#7
Aspirant XLPages

Inscription: 31/03/2008

Messages: 31

Système d'exploitation:
PC
Version Excel utilisée:
Excel 2003
Posté le : 05-06-2008 07h54
Bonjour,
Merci de toutes tes précisions sur vba car comme je l'ai dit je suis novice en la matière et il y a de quoi s'y perdre.
Quand au sujet analyse combinatoire il est vrai que je pensais pouvoir avoir confirmation sur mon raisonnement et sur l'utilisation vba.
Quoiqu'il en soit merçi encore de ton concours et du temps accordé.
Cordiales salutations & bonne journée
Hors Ligne
Rapport   Haut 

Re: Analyse combinatoire
#8
Accro XLPages

Inscription: 09/01/2008
De Montréal, Québec

Messages: 463

Système d'exploitation:
PC
Version Excel utilisée:
97 à 2016
Posté le : 14-06-2008 00h15
Bonjour,

J'ai téléchargé le classeur et je ne vois pas bien le but de l'exercice.
Les remarques précédentes sont fort pertinentes mais il me semble que le noyau du problème se situe dans la combinatoire.
Donc, s'agit-il de sortir tous les arrangements possible de six lettres parmi vingt-six ou quoi?

Aussi à quoi sert la feuille Mémo?

Serait-ce quelque chose comme :

Public Function Arrangements(ByVal m As LongAs Long) As Long

  Dim Fact 
As Long
  
  Fact 
1
  
Do Until p 0
    
    Fact 
Fact * (m)
    
1
    p 
1
    
  Loop

  Arrangements 
Fact
  
End 
Function


Cordialement,

Guy

Hors Ligne
Rapport   Haut 

Re: Analyse combinatoire
#9
Aspirant XLPages

Inscription: 31/03/2008

Messages: 31

Système d'exploitation:
PC
Version Excel utilisée:
Excel 2003
Posté le : 14-06-2008 11h02
Bonjour,
Tout d'abord merci de ta fonction car en vba je ne sais pas faire.
La feuille Mémo n'intervient pas la procédure elle sert simplement comme son nom l'indique à préciser
le détail des calculs.
Mais si ta fonction permet de calculer le nombre d'arrangements elle ne permet pas d'obtenir la concaténation et la valeur d'un arrangement quelconque.
Ma procédure paramètres le fait dans la feuille Codes.
J'aurais simplement aimé qu'un "passionné" me donne la véracité de mon raisonnement et peut-être la faire maigrir !
Car comme je l'ai déjà dit je suis toujours un "bleu"en vba
Encore merci Bonne journée
Cordialement
Hors Ligne
Rapport   Haut 

Re: Analyse combinatoire
#10
Accro XLPages

Inscription: 09/01/2008
De Montréal, Québec

Messages: 463

Système d'exploitation:
PC
Version Excel utilisée:
97 à 2016
Posté le : 14-06-2008 11h19
Bonjour,

J'ai bien potassé le code et les feuilles mais je n'aperçois toujours pas le but de l'exercice.

Que cherches-tu à faire au juste?
Produire des arrangements de lettres de l'alphabet?
Autre chose?

Hors Ligne
Rapport   Haut 


Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Qui consulte actuellement ce sujet ?   1 Utilisateur(s) anonymes