Masquage/affichage lignes

drop91

XLDnaute Junior
Bonjour,
Voici mon problème :
sur mon fichier excel j'ai une feuille nommé "parametres" ou se trouve une liste de noms agentxx
ce que je recherche c'est lorsque j'efface un nom de la plage (a5-a22) de la feuille parametres,
la ligne de l'agent soit masquée sur la feuil1 & feuil2 seulement.


Merci d'avance pour vos infos :)
 

Pièces jointes

  • Classeur1.xls
    19.5 KB · Affichages: 58
  • Classeur1.xls
    19.5 KB · Affichages: 56
  • Classeur1.xls
    19.5 KB · Affichages: 63

DoubleZero

XLDnaute Barbatruc
Re : Masquage/affichage lignes

Bonjour, drop91, le Forum,

En attendant mieux... une suggestion avec ce code.

Code:
Option Explicit
Sub Supprimer_masquer()
    Dim toto
    Dim c As Range
    With Application: .ScreenUpdating = False: .EnableEvents = False: End With
        toto = Selection
        With Sheets("Feuil1")
            Set c = .Columns(1).Find(toto)
            If Not c Is Nothing Then c.Offset(, 26) = 1: c.EntireRow.Hidden = True: c.Offset(, 26) = "":
        End With
        With Sheets("Feuil2")
            Set c = .Columns(1).Find(toto)
            If Not c Is Nothing Then c.Offset(, 26) = 1: c.EntireRow.Hidden = True: c.Offset(, 26) = "":
        End With
        Selection = ""
        With Application: .EnableEvents = True: .ScreenUpdating = True: End With
End Sub

Attention : ne pas supprimer la valeur d'une cellule autrement que par bouton.

A bientôt :)
 

DoubleZero

XLDnaute Barbatruc
Re : Masquage/affichage lignes

Re-bonjour,

Un nouveau code obligeant l'utilisateur à utiliser le bouton :

Code:
Option Explicit
Sub Supprimer_masquer()
    Dim toto
    Dim c As Range
    With Application: .ScreenUpdating = False: End With
        Sheets("Parametres").Unprotect Password:=""
        toto = Selection
        With Sheets("Feuil1")
            Set c = .Columns(1).Find(toto)
            If Not c Is Nothing Then c.Offset(, 26) = 1: c.EntireRow.Hidden = True: c.Offset(, 26) = "":
        End With
        With Sheets("Feuil2")
            Set c = .Columns(1).Find(toto)
            If Not c Is Nothing Then c.Offset(, 26) = 1: c.EntireRow.Hidden = True: c.Offset(, 26) = "":
        End With
        Selection = ""
        Sheets("Parametres").Protect Password:=""
    With Application: .ScreenUpdating = True: End With
End Sub

A bientôt :)
 

Pièces jointes

  • 00 - drop91 - Supprimer_masquer.xls
    71.5 KB · Affichages: 42

drop91

XLDnaute Junior
Re : Masquage/affichage lignes

Bonjour, tout d'abord merci pour la réponse,
c'est bien ce qu'il me faut sauf que je n'ai pas la possibilité de remettre un autre nom dans les cellules vide (donc de remettre la ligne sur feuil1 & feuil2).
C'est un oubli de ma part sur les précisions, je m'en excuse. Y a t'il un moyen de le faire, merci.
 
Dernière édition:

DoubleZero

XLDnaute Barbatruc
Re : Masquage/affichage lignes

Re-bonjour,

... c'est bien ce qu'il me faut sauf que je n'ai pas la possibilité de remettre un autre nom dans les cellules vide (donc de remettre la ligne sur feuil1 & feuil2)... Y a t'il un moyen de le faire...

Je crains de ne pas comprendre.

Une valeur de l'onglet "Parametres" est effacée : la ligne de chaque onglet ("Feuil1" et "Feuil2") comportant ladite valeur est masquée (ce que font les codes des #2 et #3).

La valeur est effacée avant d'être remplacée par une autre : qu'advient-il, alors, des valeurs mentionnées en onglets "Feuil1" et "Feuil2" :confused: ?

A bientôt :)
 

drop91

XLDnaute Junior
Re : Masquage/affichage lignes

En fait il s'agit de gérer la présence d'apprentis, pendant 6 mois ils sont 18, pendant ces 6 mois quelque uns s'en vont d'autre
Restent, puis il y a de nouveau arrivant qui remplacent Les anciens.
Au final avec la feuille paramètres, je voudrais Inséré des apprentis ou les enlevé, et le résultat du masquage ne se fera que sur
La feuil1 & feuil2, j'espère avoir été plus clair.
Vous remerciant de votre patience
 
Dernière édition:

DoubleZero

XLDnaute Barbatruc
Re : Masquage/affichage lignes

Re-bonjour,

Je ne comprends pas davantage :( ! D'autres membres d'XLD, peut-être :D.

Si "Agent 1" est supprimé de A5, onglet "Parametres" : la ligne correspondant à "Agent 1", dans les deux autres onglets est masquée.

Si "Agent 1" est remplacé par "toto" dans l'onglet "Parametres" : que faut-il faire de "Agent 1", dans les deux autres onglets ? Remplacer la valeur "Agent 1" par la valeur "toto" ?

A bientôt :)
 

drop91

XLDnaute Junior
Re : Masquage/affichage lignes

en fait dans la feuil1 et feuil2 je recopie ce qu'il y a dans la feuille parametres, si agent5 s'en va, j'efface agent5 sur A9 je masque la ligne A9 sur feuil1 & feuil2.
Si par la suite j'ai "toto" qui arrive j'inscris toto sur A9 de la feuille parametres, et toto apparait sur la ligne A9 de feuil1 & feuil2 donc s'il n'y a pas de nom sur une ligne je masque, si j'inscris un nom je démasque.
voila merci.
 

DoubleZero

XLDnaute Barbatruc
Re : Masquage/affichage lignes

Re-bonjour,

Une nouvelle tentative avec ce code :

VB:
Option Explicit
Sub Mettre_à_jour_masquer_si()
    Dim o As Worksheet, i As Long
    Application.ScreenUpdating = False
    Sheets("Parametres").Range("a5:a22").Copy Destination:=Sheets("Feuil1").Range("a5")
    Sheets("Parametres").Range("a5:a22").Copy Destination:=Sheets("Feuil2").Range("a5")
    For Each o In Worksheets
        If o.Name <> "Parametres" Then
            For i = Cells(Rows.Count, "a").End(xlUp).Row To 5 Step -1
                If Range("a" & i) <> "" Then  o.Rows(i).EntireRow.Hidden = False Else: o.Rows(i).EntireRow.Hidden =  True
            Next
        End If
    Next
    Application.ScreenUpdating = False
End Sub

A bientôt :)
 

Pièces jointes

  • 00 - drop91 - Supprimer_masquer V2.xls
    76 KB · Affichages: 41

drop91

XLDnaute Junior
Re : Masquage/affichage lignes

Super, c'est exactement ce que j'attendais, par contre lors de la création du fichier j'ai un problème de débordement de la plage de sélection (voir fichier joint).
j'ai repris votre fichier puis j'applique mes données, par contre j'ai un débordement sur les cellules A23-A30 les valeurs vide ou remplis sont pris en compte et retransmis sur feuil1 & feuil2 malgré que la plage de sélection soit seulement de A5-A22.
pourtant je n'ai pas rajouté d'autres formules, et je ne vois pas ou est le problème.

En tout cas merci beaucoup.
 

Pièces jointes

  • Copie de 00 - drop91 - Supprimer_masquer V3.xls
    88.5 KB · Affichages: 44

DoubleZero

XLDnaute Barbatruc
Re : Masquage/affichage lignes

Bonjour, drop91, le Forum,

Le problème de débordement est dû au fichier déposé en #1, lequel ne comportait aucune valeur en dessous de A22.

Or, la disposition des données du fichier déposé en #10 est différente.

Ci-après, une nouvelle version, avec macro événementielle (le bouton, devenant inutile, est supprimé) et prise en considération des nouvelles informations.

A bientôt :)
 

Pièces jointes

  • 00 - drop91 - Supprimer_masquer V3.xls
    85.5 KB · Affichages: 38
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 813
dernier inscrit
kaiyi