Mise en forme conditionnelle afin de masquer ou faire apparaitre une ligne

jogrub

XLDnaute Nouveau
Bonsoir à tous
Je fais appel à vous pour résoudre la difficulté suivante:
J'ai une liste de choix avec soit OUI soit NON
En cas de réponse positive je souhaite que la ligne suivante apparaisse ; donc lorsque la réponse est négative elle resterait masquée !
Est ce possible ?
Merci par avance pour vos avis

Cordialement,
 

hoerwind

XLDnaute Barbatruc
Re : Mise en forme conditionnelle afin de masquer ou faire apparaitre une ligne

Bonsoir,

Une MFC (mis en forme conditionnelle) ne permet pas de masquer ou d'afficher une ligne, il faut nécessairement faire appel à une macro.

Probablement qu'avec un exemple en pièce jointe et une explication complémentaire ta question deviendra plus claire.
 

jogrub

XLDnaute Nouveau
Re : Mise en forme conditionnelle afin de masquer ou faire apparaitre une ligne

Bonsoir hoerwind,
Je te remercie pour ta réponse . Pour une meilleur compréhension de ma demande je joins un exemple.
Etant précisé qu'il y a une série de questions et je n'ai repris que celle qui me pose problème.
A savoir que si la réponse est OUI je souhaite que la seconde question apparaisse ; dans le cas contraire je souhaiterai qu'elle soit masquée.
Merci d'avance pour votre aide à tous
Jogrub

NB: je n'ai pas actualisé mon profil mais je précise que je travaille sous excel 2010
 

Pièces jointes

  • Exemple pour forum.xlsx
    29.6 KB · Affichages: 145
  • Exemple pour forum.xlsx
    29.6 KB · Affichages: 136
  • Exemple pour forum.xlsx
    29.6 KB · Affichages: 122

Victor21

XLDnaute Barbatruc
Re : Mise en forme conditionnelle afin de masquer ou faire apparaitre une ligne

Bonsoir.

Sans VBA, à part avec une MFC, ou une formule conditionnelle, je ne vois pas.
 

Pièces jointes

  • mfc.xls
    36.5 KB · Affichages: 225
  • mfc.xls
    36.5 KB · Affichages: 195
  • mfc.xls
    36.5 KB · Affichages: 188

DoubleZero

XLDnaute Barbatruc
Re : Mise en forme conditionnelle afin de masquer ou faire apparaitre une ligne

Bonjour, le Fil, le Forum,

Un essai avec ce code :
Code:
Sub Lignes_masquer_si_NON()
Dim c As Range
    For Each c In Range("a1:a1000")
        If c.Offset(, 1) = "NON" Then c.Offset(2, 1).EntireRow.Hidden = True
    Next
End Sub
A bientôt :)
 

DoubleZero

XLDnaute Barbatruc
Re : Mise en forme conditionnelle afin de masquer ou faire apparaitre une ligne

Re-bonjour,

Une autre suggestion, dans le fichier joint, avec une procédure événementielle.

A bientôt :)
 

Pièces jointes

  • 00 - jogrub - Lignes masquer si....xls
    36.5 KB · Affichages: 352

Staple1600

XLDnaute Barbatruc
Re : Mise en forme conditionnelle afin de masquer ou faire apparaitre une ligne

Bonsoir

Une façon de voir ce que voyait Fo_rum regardant 00, regardée plus tôt par l'agrafe
(à n'utiliser que le jour du réveillon (plutôt après quelques verres)

Code:
Option Explicit
Option Compare Text
Private Sub ToggleButton1_Click()' éviter de cliquer sur le Toggle plusieurs fois de suite
Dim Rc As Range
Application.ScreenUpdating = False
With ToggleButton1
.Caption = IIf(.Caption = "Cacher", "Afficher", "Cacher")
For Each Rc In Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row)
Rc.EntireRow.Hidden = Rc = "NON" = IIf(.Caption = "Cacher", False, True)
Next
End With
End Sub


PS:A ne pas utiliser dans la vrai vie.

NB: Message à caractère purement humoristique :)
 

Efgé

XLDnaute Barbatruc
Re : Mise en forme conditionnelle afin de masquer ou faire apparaitre une ligne

Bonjour à tous :),
une version sans connaitre le nombre de "sous questions" et surtout pour souhaiter à tous de bonnes fêtes.
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plg As Range, C As Range, M
If Target.Count <> 1 Then Exit Sub
Set Plg = Range("B3").SpecialCells(xlCellTypeSameValidation)
M = Split(Plg.Address, ",")
If Not Intersect(Target, Plg) Is Nothing Then
    If Target.Address = M(UBound(M)) Then
        Rows(Target.Row + 2 & ":" & Cells(Rows.Count, 2).End(xlUp).Row - 2).Hidden = Target.Value <> "OUI"
    Else
        For Each C In Plg
            If C.Row > Target.Row Then
                Rows(Target.Row + 2 & ":" & C.Row - 2).Hidden = Target.Value <> "OUI"
                Exit For
            End If
        Next C
    End If
End If
End Sub
Cordialement
 

Pièces jointes

  • Lignes_masquer(3).xls
    39.5 KB · Affichages: 125
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 497
Messages
2 088 994
Membres
104 000
dernier inscrit
dinelcia