Bonsoir

Dans un tableau situé dans une feuille appelée "classe" je veux remplir un tableau où seront notés les 3 meilleurs de toutes les classes. Les résultats sont dans une autre feuille nommé "toutes"

J'ai donc crée le code suivant pour un niveau et le sexe F. Problème dans le tableau seule la deuxième fonctionne, pour la première et la troisième rien ne s'écrit

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Sub class_niveau()
 
Application.ScreenUpdating = False
Sheets("toutes").Select
Range("A1").Select
 
Do
 
ActiveCell.Offset(1, 0).Select
num_classement = ActiveCell.Value
 
If ActiveCell.Value = "" Then
Sheets("Classe").Select
Application.ScreenUpdating = True
Exit Sub
End If
 
If num_classement = 1 Then ActiveCell.Offset(0, 4).Select
    sexe = ActiveCell.Value
    If sexe = "F" Then ActiveCell.Offset(0, 1).Select
        n_classe = ActiveCell.Value
        If n_classe = "3EMEA" Or n_classe = "3EMEB" Or n_classe = "3EMEC" Or n_classe = "3EMED" Then
        ActiveCell.Offset(0, -3).Select
        nom = ActiveCell.Value
        ActiveCell.Offset(0, 1).Select
        prenom = ActiveCell.Value
        Range("Classe!R13").Value = nom & "     " & prenom
 
End If
If num_classement = 2 Then ActiveCell.Offset(0, 4).Select
    sexe = ActiveCell.Value
    If sexe = "F" Then ActiveCell.Offset(0, 1).Select
        n_classe = ActiveCell.Value
        If n_classe = "3EMEA" Or n_classe = "3EMEB" Or n_classe = "3EMEC" Or n_classe = "3EMED" Then
        ActiveCell.Offset(0, -3).Select
        nom = ActiveCell.Value
        ActiveCell.Offset(0, 1).Select
        prenom = ActiveCell.Value
        Range("Classe!R14").Value = nom & "     " & prenom
End If
If num_classement = 3 Then ActiveCell.Offset(0, 4).Select
    sexe = ActiveCell.Value
    If sexe = "F" Then ActiveCell.Offset(0, 1).Select
        n_classe = ActiveCell.Value
        If n_classe = "3EMEA" Or n_classe = "3EMEB" Or n_classe = "3EMEC" Or n_classe = "3EMED" Then
        ActiveCell.Offset(0, -3).Select
        nom = ActiveCell.Value
        ActiveCell.Offset(0, 1).Select
        prenom = ActiveCell.Value
        Range("Classe!R15").Value = nom & "     " & prenom
End If
 
Loop
 
End Sub
petite précision si j'enlève les deux dernières conditions la première s'exécute.
De même si j'enlève les deux premières, la troisième s’exécute