Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Tri dans le désordre

  • Initiateur de la discussion Initiateur de la discussion natorp
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

natorp

XLDnaute Barbatruc
Bjr à toutes et tous

J'ai cette macro qui fait un tri dans l'ordre croissant :

Code:
Sub Macro4()
    Rows("9:9").Select
    Range("C9").Activate
    Selection.Sort Key1:=Range("A9"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, _
        DataOption1:=xlSortNormal
    Range("C9").Select
End Sub

Est-il possible de la modifier pour qu'elle fasse un tri dans le désordre, qu'il n'y est plus d'ordre du tout, au hasard ?

Merci de votre attention, cordialement,

Gérard
 
Re : Tri dans le désordre

Bonjour.
Mettez la Formula = "=RAND()" sur la colonne qui suit la dernière de UsedRange, triez dessus puis supprimez la.

Non ça ne va pas. Je n'avais pas vu que vous ne classez qu'une ligne horizontalement.
Si possible, insérez une ligne devant, mettez y "=RAND()", triez les 2 ligne sur la 1ère puis supprimez celle ci.
Cordialement.
 
Dernière édition:
Re : Tri dans le désordre

Laurent,

tu es tout proche, sauf que le nombre de cellule concerné en ligne 9 peut varier et s'il y a des blancs, ils se mélangent avec le reste,
du coup il faudrait pouvoir dire à la macro :
"je sélectionne les cellules de la ligne 8 à 9 jusqu'à la dernière cellule "9" trouvée" et non pas Rows("8:9").Select

est-ce possible ?

Merci, Gérard

merci également à Danreb
 
Re : Tri dans le désordre

Bonsour®
sans autre info que le code ci-dessus ...???
Orientation:=xlLeftToRight
sourire
vite fait alors...
Code:
 Sub Chaos() '
 Dim N As Integer, temp As Variant, i As Integer, x As Integer, y As Integer
 '********************************
 ' à -------adapter selon ligne concernée
 Dim ligne As Double
 ligne = 9
'********************************
 N = Cells(ligne, Cells.Columns.Count).End(xlToLeft).Column
 For i = 1 To N
      x = 1 + Int(Rnd() * N)
      y = 1 + Int(Rnd() * N)
      temp = Cells(ligne, x).Formula
      Cells(ligne, x).Formula = Cells(ligne, y).Formula
      Cells(ligne, y).Formula = temp
 Next
 
 End Sub
 
Re : Tri dans le désordre

Ouah, ça à l'air d'être ça...

Modeste : est-ce que vous pouvez m'assurer avec ce code qu'une valeur ne peut pas se retrouver à la même place lorsque l'on active la macro ?

Merci beaucoup... Gérard
 
Re : Tri dans le désordre

Re, comme le dit modeste geedee: sans autre info que le code ci-dessus ...???
que l'on peut interpréter comme ceci:
sans fichier joint ... ???

Beaucoup de choses sont possibles en utilisant les macros .......... mais un problème correctement expliqué, c'est déjà les 3/4 de la solution

à+
Philippe
 
Re : Tri dans le désordre

Merci Laurent et tu as raison, ainsi que modeste

A partir de l'onglet partie1 j'ai besoin de générer 2 autres onglets pour lesquels les joueurs en "nord" ne bougent pas
faire un roulement des joueurs "ouest", faire un roulement des joueurs "sud", faire un roulement des joueurs "est"
chaque joueur ne devant pas se rencontrer plus d'une fois
mais comme les tables dépendent du nombre d'inscrit, le nombre de cellules dans chaque ligne peut varier

voilà j'espère avoir été clair ???

Merci beaucoup de votre aide, Gérard
 

Pièces jointes

Re : Tri dans le désordre

Re,
voilà j'espère avoir été clair ???

Merci beaucoup de votre aide, Gérard
Effectivement c'est beaucoup plus clair mais assez éloigné du problème posé au départ

J'avoue mon incompétence en ce qui concerne le problème pris dans son entièreté

il te reste à attendre le passage d'un ténor


à+
Philippe
 
Re : Tri dans le désordre

Bonsour®
Ouah, ça à l'air d'être ça...

est-ce que vous pouvez m'assurer avec ce code qu'une valeur ne peut pas se retrouver à la même place lorsque l'on active la macro ?
c'est bien là ce que l'on appelle hasard...
il n'y a rien de certain... sourire...
pour eviter ceci on pourrait envisager une rotation, mais ce ne serait plus du hasard !
de même une combinaison des deux méthodes ne permettrait pas de lever le doute.
 
Re : Tri dans le désordre

Bonsour®
question : combien y-a-t-il de tours ???
  • nbr de tours= nombre de joueurs ==> probleme de carré latin (sudoku par exemple)
  • elimination directe ==> rencontres de tennis
  • rencontres pondérées ==> tournoi d'échecs
  • sinon probleme de combinaisons ==> loto, tierce
    =COMBIN(N,4) pour 8 joueurs => 70 tables différentes
 
Re : Tri dans le désordre

Merci à vous

Modeste : Nb de parties : 3, avec le "nord" qui ne bouge plus après la 1ère partie
il faut faire tourner "ouest", "sud" et "est" de façon à ce que personne ne se rencontre plus d'une fois

David : je suis impatient de regarder le fichier de Roger, je suis au boulot et je ne peux pas lire les versions 2010, je verrais ce soir à la maison,

Bonne journée, Gérard
 
Re : Tri dans le désordre

Bonsour®
Nb de parties : 3, avec le "nord" qui ne bouge plus après la 1ère partie
il faut faire tourner "ouest", "sud" et "est" de façon à ce que personne ne se rencontre plus d'une fois

Analyse :
A 4 par table , aprés le premier tour, chacun des joueurs (O,E,S) doit etre réparti séparement vers 3 tables différentes ,
ce qui fait un minimum de 4 tables ou 16 joueurs.

Sauf à faire intervenir des joueurs complémentaires ou d'une 5eme table(20 joueurs au total), en trois tours certains des joueurs de ces 4 tables seront amenés à se rencontrer plusieurs fois.

Pour satisfaire ces contraintes certains joueurs devront attendre pour faire leur 3 tours,
et chaque joueur ne rencontrera pas tout les autres.
L'algorithme très dépendant du nombre total de joueurs est compliqué à généraliser...


:-(
m'étant orienté vers une solution style carré latin, je passe la main...
désolé...
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
XL 2021 listbox
Réponses
18
Affichages
740
Réponses
17
Affichages
1 K
B
  • Question Question
Réponses
2
Affichages
776
Benjy51190
B
Réponses
6
Affichages
1 K
Réponses
11
Affichages
969
O
  • Résolu(e)
Microsoft 365 tri des lignes
Réponses
3
Affichages
607
L
Réponses
9
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…