Trier à l'aide d'une macro
Résolu
noe2008
Messages postés
191
Statut
Membre
-
noe2008 Messages postés 191 Statut Membre -
noe2008 Messages postés 191 Statut Membre -
Salut les amis
j'ai une grande tache a traiter il s'agit de préparer 22 fichiers concernat les liste des élèves qui vont bénéficier du soutien pendant le 2 eme semestre dans les matières suivantes : math ; langue arabe et langue française chaque liste doit contenir les noms et les moyennes des élèves ayant une moyenne inférieure strictement à 5
la liste des élèves et les moyenne se trouvent dans la feuille " semestre " je veux les extraire les listes dans la feuille " soutien " par une macro
le classeur se trouve dans l'adresse ci-dessous
http://www.cjoint.com/c/FBfqC0hdqjP
merci infiniment
j'ai une grande tache a traiter il s'agit de préparer 22 fichiers concernat les liste des élèves qui vont bénéficier du soutien pendant le 2 eme semestre dans les matières suivantes : math ; langue arabe et langue française chaque liste doit contenir les noms et les moyennes des élèves ayant une moyenne inférieure strictement à 5
la liste des élèves et les moyenne se trouvent dans la feuille " semestre " je veux les extraire les listes dans la feuille " soutien " par une macro
le classeur se trouve dans l'adresse ci-dessous
http://www.cjoint.com/c/FBfqC0hdqjP
merci infiniment
A voir également:
- Trier à l'aide d'une macro
- Excel trier par ordre croissant chiffre - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Jitbit macro recorder - Télécharger - Confidentialité
- Logiciel pour trier les photos automatiquement - Guide
4 réponses
Bonjour,
Le code suivant devrait répondre à votre demande :
Le code suivant devrait répondre à votre demande :
Sub ElevesEnSoutien()
Dim DernLigne As Long
DernLigne = Sheets("semestre").Range("B" & Rows.Count).End(xlUp).Row
m = 6 'début de collage pour soutien
For i = 5 To DernLigne
'Français
Sheets("semestre").Select
If Range("AI" & i).Value >= 5 Then
Else
'Nom français
Sheets("semestre").Select
Range("B" & i).Select
Selection.Copy
Sheets("soutien").Select
Range("L" & m & ":M" & m).Select
ActiveSheet.Paste
'Moyenne français
Sheets("semestre").Select
Range("AI" & i).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("soutien").Select
Range("N" & m & ":O" & m).Select
ActiveSheet.Paste
End If 'Fin Français
'Maths
Sheets("semestre").Select
If Range("X" & i).Value >= 5 Then
Else
'Nom Maths
Sheets("semestre").Select
Range("B" & i).Select
Selection.Copy
Sheets("soutien").Select
Range("H" & m & ":I" & m).Select
ActiveSheet.Paste
'Moyenne Maths
Sheets("semestre").Select
Range("X" & i).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("soutien").Select
Range("J" & m & ":K" & m).Select
ActiveSheet.Paste
End If 'Fin Maths
'Arabe
Sheets("semestre").Select
If Range("P" & i).Value >= 5 Then
Else
'Nom Arabe
Sheets("semestre").Select
Range("B" & i).Select
Selection.Copy
Sheets("soutien").Select
Range("D" & m & ":E" & m).Select
ActiveSheet.Paste
'Moyenne arabe
Sheets("semestre").Select
Range("P" & i).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("soutien").Select
Range("F" & m & ":G" & m).Select
ActiveSheet.Paste
End If 'Fin Arabe
Sheets("semestre").Select
If Range("AI" & i).Value < 5 Or Range("X" & i).Value < 5 Or Range("P" & i).Value < 5 Then
m = m + 1
End If
Next i
End Sub
Bonjour a vous deux,
Theo.R:
les selects et activate sont a eviter car tres goumands en temps d'execution
neo2008: trois fichiers
https://www.cjoint.com/c/FBgkAwUzIbf
celui de Theo.R avec son temps d'execution
et deux autres avec temps d'execution qui peut etre ameliore un peu si vous trouvez que c'est encore trop long
le premier meme classement que Theo.R
le deuxieme un classement par matiere que je trouve plus logique
A vous de voir
Theo.R:
les selects et activate sont a eviter car tres goumands en temps d'execution
neo2008: trois fichiers
https://www.cjoint.com/c/FBgkAwUzIbf
celui de Theo.R avec son temps d'execution
et deux autres avec temps d'execution qui peut etre ameliore un peu si vous trouvez que c'est encore trop long
le premier meme classement que Theo.R
le deuxieme un classement par matiere que je trouve plus logique
A vous de voir
si vous ne trouvez pas de macro guidez moi par une formule
merci