Liste/ Afficher masquer lignes = 0

Bonjour, je débute en excel et aprés avoir tourné un peu sur le forum j'aimerais vous faire part de mon problème : j'ai une liste d'étudiants que j'ai réussi à créer avec la "validation des données etc.." mais les étudiants ne participent pas à tous les cours, vu qu'il y a un tableau de moyenne forcément, dans certaines matières leur moyenne est égale à 0, j'ai donc réaliser une macro pour masquer les lignes qui sont égales à 0. Cependant la macro ne s'effectue qu'une seule fois ce qui veut dire que le tableau ne s'actualise que pour le premier étudiant, si je change l'étudiant dans la liste, le tableau ne se modifie pas si il a une matière en plus que le premier étudiant. J'aimerais donc des conseils pour modifier ma macro :

Sub Masque_lig() ' masque les lignes ou la valeur dans les cellules de la colonne C sont =0
Range("I35:J49").Select
For Each cellule In Selection
If cellule.Value = "0" Then cellule.EntireRow.Hidden = True
Next cellule
End Sub

Merci d'avance

Bonjour Florian,

Tu devrais anonymer ton fichier et le mettre en pj.

Il sera plus facile de te répondre.

Cordialement

Voila la pj :

19fichier.xlsm (87.32 Ko)

re,

Je te propose le code suivant à placer dans la feuille etudiant

Private Sub Worksheet_Change(ByVal Target As Range)
Dim cell, Plage As Range
If Not Intersect(Target, [A34]) Is Nothing Then
  Set Plage = Range("i35:i" & Range("i" & Rows.Count).End(xlUp).Row)
  For Each cell In Plage
    If cell = 0 Then
        cell.EntireRow.Hidden = True
    Else
        cell.EntireRow.Hidden = False
    End If
  Next cell
End If
Set Plage = Nothing
End Sub

J'ai remonté de deux lignes du choix de l'étudiant car en masquant des lignes pour cause 0 tu masquais aussi celle du choix de l'étudiant.

Bon courage pour la suite

Cordialement


Juste une précision.

Je viens de faire un test pour l'étudiant ARTHUR. Comme il n'appartient pas à la liste tu as une erreur dans la colonne I.

Deux possibilités

Pour que tes listes soient toujours à jour je te propose de mettre cette formule dans le gestionnaire de noms pour idetudiant et idinscrits

=DECALER(inscrits!$A$1;;;NBVAL(inscrits!$A:$A))

sinon il faut traiter l'erreur en colonne i

cordialement

20fichier01.xlsm (90.05 Ko)

Super merci beaucoup a toi c'est exactement ce que je cherchais !


Oui j'avais déjà remarqué cette erreur et je ne l'avais pas encore corrigé, merci beaucoup.

Rechercher des sujets similaires à "liste afficher masquer lignes"