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

XL 2013 [Résolu] Macro que je n'arrive pas a modifier pour un tri aléatoire

bellenm

XLDnaute Impliqué
Bonjours amis excelien,

j'avais sur un classeur une liste de joueur que je pouvais trier aléatoirement. (Feuille TIRAGELISTING)

J'aimerais que ce style de classement soit mis également dans mon fichier TOURNOI2 sur la feuille "Joueurs", afin de diversifier l'ordre des classements pour d'autres compétitions.

J'ai donc essayer de modifier ce qui me semblai devoir l'être, depuis la macro pour la feuille "TIRAGELISTING" qui se nome: TirageNoms et de la copier sous TirageNomsAleatoire pour la feuille "Joueurs", mais cela ne fonctionne pas!

De plus que sur la feuille "TIRAGELISTING" il faut que lors du tri les informations dans les colonnes "C,D,E,F" soit également remis a côté du nom du joueur "B".

Merci pour vos aides ou infos.

Marc.
 

Pièces jointes

  • tournoi2.xlsm
    129.9 KB · Affichages: 44

bellenm

XLDnaute Impliqué
Solution trouvée,
Code:
Sub aleatoire()
'
' aleatoire Macro
'

'
    Range("B3:G42").Select
    ActiveSheet.Unprotect
    ActiveWorkbook.Worksheets("Joueurs").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Joueurs").Sort.SortFields.Add Key:=Range("C3:C42") _
        , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    ActiveWorkbook.Worksheets("Joueurs").Sort.SortFields.Add Key:=Range("G3:G42") _' colonne rajoutée avec =alea() dans les cellules
        , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    ActiveWorkbook.Worksheets("Joueurs").Sort.SortFields.Add Key:=Range("B3:B42") _
        , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    ActiveWorkbook.Worksheets("Joueurs").Sort.SortFields.Add Key:=Range("D3:D42") _
        , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Joueurs").Sort
        .SetRange Range("B3:G42")
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

Ce n'est peut être pas très correct mais sa fonctionne comme je voulais.

Merci quand même pour votre temp passé à me lire

a+ Marc
 

Discussions similaires

Réponses
0
Affichages
737
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…