XL 2013 (RESOLU) Efface automatiquement le contenu d'une cellule en fonction d'une autre cellule

chaelie2015

XLDnaute Accro
Bonsoir Forum
VB:
Private Sub Worksheet_Change(ByVal Target As Range)

   If Not IsEmpty(Range("K11")) Then
      Range("K12:K25").EntireRow.Hidden = False
                If Not IsEmpty(Range("K13")) Then
                   Shapes("bouton_Imprimer").Visible = True
               Else
                    Shapes("bouton_Imprimer").Visible = False
              End If
    Else
        Range("K12:K25").EntireRow.Hidden = True
        Shapes("bouton_Imprimer").Visible = False
   End If


End Sub
Ce code réagit aux changements dans les cellules K11 et K13. Si K11 contient des données, il affiche les lignes de K12 à K25 et rend visible le bouton "bouton_Imprimer" si K13 n'est pas vide.
Si K11 est vide, il masque les lignes de K12 à K25 et rend invisible le bouton "bouton_Imprimer".
Est-il possible d'ajouter a ce code la fonctionnalité qui efface automatiquement le contenu de la cellule K13 lorsque je supprime le contenu de la cellule K11?
Merci
 
Solution
B
Bonsoir Forum
VB:
Private Sub Worksheet_Change(ByVal Target As Range)

   If Not IsEmpty(Range("K11")) Then
      Range("K12:K25").EntireRow.Hidden = False
                If Not IsEmpty(Range("K13")) Then
                   Shapes("bouton_Imprimer").Visible = True
               Else
                    Shapes("bouton_Imprimer").Visible = False
              End If
    Else
        Range("K12:K25").EntireRow.Hidden = True
        Shapes("bouton_Imprimer").Visible = False
   End If


End Sub
Ce code réagit aux changements dans les cellules K11 et K13. Si K11 contient des données, il affiche les lignes de K12 à K25 et rend visible le bouton "bouton_Imprimer" si K13 n'est pas vide.
Si K11 est vide, il masque les lignes de K12 à...

Gégé-45550

XLDnaute Accro
B
Bonsoir Forum
VB:
Private Sub Worksheet_Change(ByVal Target As Range)

   If Not IsEmpty(Range("K11")) Then
      Range("K12:K25").EntireRow.Hidden = False
                If Not IsEmpty(Range("K13")) Then
                   Shapes("bouton_Imprimer").Visible = True
               Else
                    Shapes("bouton_Imprimer").Visible = False
              End If
    Else
        Range("K12:K25").EntireRow.Hidden = True
        Shapes("bouton_Imprimer").Visible = False
   End If


End Sub
Ce code réagit aux changements dans les cellules K11 et K13. Si K11 contient des données, il affiche les lignes de K12 à K25 et rend visible le bouton "bouton_Imprimer" si K13 n'est pas vide.
Si K11 est vide, il masque les lignes de K12 à K25 et rend invisible le bouton "bouton_Imprimer".
Est-il possible d'ajouter a ce code la fonctionnalité qui efface automatiquement le contenu de la cellule K13 lorsque je supprime le contenu de la cellule K11?
Merci
Bonsoir,
à tester en fin de procédure :
VB:
If Not Intersect(Target, Range("K11")) is Nothing Then
    If Range("K11")="" Then Range("K13")=""
End if
Cordialement
 

TooFatBoy

XLDnaute Barbatruc
Bonjour,

Je souhaite généraliser ce code, chaque fois que je modifie la cellule K11, le contenu de la cellule K13 sera automatiquement effacé.
Pour que ça fonctionne à chaque fois que tu vides le contenu de la cellule K11 de ta feuille, il te suffit de mettre le code de l'ami Gégé-45550 en début de macro Worksheet_Change.

VB:
Private Sub Worksheet_Change(ByVal Target As Range)
'
    If Not Intersect(Target, Range("K11")) is Nothing and Range("K11")="" Then Range("K13")=""

' ici la suite du code de la macro

End Sub
 

Discussions similaires

Statistiques des forums

Discussions
315 096
Messages
2 116 174
Membres
112 677
dernier inscrit
Justine11