trier

R

ric

Guest
bonjour,

j'ai une liste d'élèves(tout un niveau de classe), chaque élève a 5 choix mais ne peut en faire qu'un. A partir de cette liste ou je coche l'activité désirée je voudrais établir une liste d'élève par activité. (et c'est la que je bloque, car je n'arrive pas a faire une liste avec les noms en dessous des uns et des autres dans chaque activité)

merci pour votre aide précieuse
 

ChTi160

XLDnaute Barbatruc
Salut ric
bonjour andré
une interprétation en pièce jointe a adapter biensur
[file name=Tri_20050919142433.zip size=8209]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Tri_20050919142433.zip[/file]
 

Pièces jointes

  • Tri_20050919142433.zip
    8 KB · Affichages: 30
R

ric 54

Guest
re

merci [file name=Classeur1_20050919144719.zip size=1827]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur1_20050919144719.zip[/file]
 

Pièces jointes

  • Classeur1_20050919144719.zip
    1.8 KB · Affichages: 17

Hervé

XLDnaute Barbatruc
Bonjour ric, andré, chti


je profite de ce post pour montrer un truc à l'ami chti, truc qui m'a été donné par @+thierry (merci)

Chti, on peut utiliser les tableaux array directement dans une boucle for each, au lieu de les initialiser avant et de boucler dessus, ensuite, via un for to

Ainsi ton code donnerai ceci :

Sub trie()
Dim derlgn As Byte, Col As Byte, C As Byte, L As Byte
Dim tabtemp As Variant
Dim item As Variant

With Worksheets('Feuil1')

    derlgn = .Range('B100').End(xlUp).Row
    tabtemp = .Range(.Cells(2, 2), .Cells(derlgn, 3))
   
   
For Col = 5 To 10
       
For Each item In Array('A', 'B', 'C', 'D', 'E')
           
For L = 1 To UBound(tabtemp, 1)
               
If tabtemp(L, 2) = item Then
                    derlgn = .Cells(100, Col).End(xlUp).Row + 1
                    .Cells(derlgn, Col) = tabtemp(L, 1)
               
End If
           
Next L
            Col = Col + 1
       
Next item
   
Next Col
       
End With
End Sub

l'intéret se trouve dans l'élimination d'une variable, et (peut etre)un traitement plus rapide.

voilà, c'etait la minute : 'j'ai appris quelque chose, je vais en faire profiter les copains' sponsorisé par hervé

salut
 

ChTi160

XLDnaute Barbatruc
bonsoir le Fil
Salut andré

Hervé je te remercie
effectivement très pratique et on gagne en espace Lol
moi tu sais des cours particuliers je suis preneur c'est quand tu veux Lol
Merci encore demain je fais tourner pour le Fun comme dirait @+Thierry
 

ChTi160

XLDnaute Barbatruc
Salut ric 54

j'ai mis du temps à retrouver le fil Lol
en pièce jointe une autre version

[file name=Transfert_Act.zip size=9809]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Transfert_Act.zip[/file]
 

Pièces jointes

  • Transfert_Act.zip
    9.6 KB · Affichages: 25

Gael

XLDnaute Barbatruc
Bonjour Ric, Jean-Marie, André, Hervé,

Uns solution dans le fichier joint avec des formules. La mise à jour se fait automatiquement.

J'ai ajouté un contrôle de validation pour éviter qu'un étudiant ne saisisse 2 choix avec données validation et la formule:

=NB.SI($B2:$F2;'x')<=1

@+

Gael [file name=Activites.zip size=5589]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Activites.zip[/file]

Message édité par: Gael, à: 20/09/2005 20:39
 

Pièces jointes

  • Activites.zip
    19.9 KB · Affichages: 28
  • Activites.zip
    19.9 KB · Affichages: 29
  • Activites.zip
    19.9 KB · Affichages: 27

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 330
Membres
103 187
dernier inscrit
ebenhamel