Masquer une plage de cellules vides

  • Initiateur de la discussion Initiateur de la discussion Upinfo
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

U

Upinfo

Guest
Bonjour
Voila, je me lance: https://www.cjoint.com/c/IDcsb1D4qTz
Je veux que quand je choisis "A" dans la liste déroulante A2; les plages de lignes vides (colores en orange) seront masques. Quand je choisis "B" dans la liste déroulante A2; les plages de lignes vides (colores en bleu) seront masques. Quand je choisis "A" dans la liste déroulante A2; les plages de lignes vides (colores en violet) seront masques.
D'avance merci.
 

Pièces jointes

re
désolé, mais j'ai du mal à comprendrele rapport avec le début du sujet,
les chiffres de même couleur?(rouge, verte,bleue)
sur quelle action tu veux masquer les lignes vides?
quid des couleurs des lignes?
voilà de quoi masquer toues les lignes vides
Sub toutvide()
drlg = dernièrelg(Sheets(1), 1, 5)
With Sheets(1)
Set zone = .Range(.Cells(5, 2), .Cells(drlg, 10))
For Each lg In zone.Rows
If testvide(lg) = True Then lg.EntireRow.Hidden = True
Next
End With
End Sub
 
Ok peut-être que je me suis mal exprimé au début.
En fait, j'ai ce tableau.
Quand je choisis parmi les A, B et C, je veux seulement que les lignes comportant des chiffres s'affichent, les lignes vides soient masquées.
Ex: quand je choisis A, il ne s'affiche que les lignes avec les chiffres en vert, B avec les chiffres en rouge, etc...
Espérant avoir répondu a ta question.
 
Bonjour Upinfo, sousou,

Voyez le fichier joint.

Les lignes vides sont colorées par une MFC sur les colonnes A:J entières :
Code:
=(LIGNE()>4)*($A1<>"")*NON(SOMMEPROD(N($B1:$J1<>"")))
La liste de validation en A2 affiche/masque ces lignes par cette macro :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$A$2" Then Exit Sub
[K3] = IIf([A2] = "Masquer", "=(A3="""")+SUMPRODUCT(N(B3:J3<>""""))", True) 'critère
Range("A2:J" & Rows.Count).AdvancedFilter xlFilterInPlace, [K2:K3] 'filtre avancé
End Sub
A+
 

Pièces jointes

Dernière édition:
bonsoir job75 et upinfo
Bon j'espère que ce coup sera meilleur
Même chose que première version, mais avec la couleur des textes et non celle des lignes
Si c'est cela ca prouve une fois de plus la citation ci-dessous! Si non....
 

Pièces jointes

Bonjour Upinfo, sousou, le forum,

Fichier (2) avec le code pour filtrer les couleurs de polices :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Range, coul
If Intersect(Target, [A2]) Is Nothing Then Exit Sub
If [A2] = "" Then Rows.Hidden = False: Exit Sub
Set r = Intersect(UsedRange, Rows("5:" & Rows.Count))
If r Is Nothing Then Exit Sub
coul = Switch([A2] = "A", 255, [A2] = "B", 12611584, [A2] = "C", 5287936)
Application.ScreenUpdating = False
r.EntireRow.Hidden = True
For Each r In r
    If r <> "" Then If r.Font.Color = coul Then r.EntireRow.Hidden = False
Next
End Sub
Bonne journée.
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
868
Retour