Bonjour,
J'aurais besoin d'un peu d'aide sur une macro.
Je souhaite masquer les lignes 12 à 19 lorsque la cellule B3 = Trimestrielle. Si la cellule B3= Mensuelle, alors conserver toutes les lignes existantes.
Ma macro ne s'exécute pas pas et je n'ai pas de message d'erreur, je ne sais pas d'où provient le problème.
Quelqu'un pourrait-il m'aider?
Un grand merci par avance pour l'aide apportée
Private Sub Worksheet_Change(ByVal Target As Range)
'
If Target.Address = "$B$3" And Target.Value = "Trimestrielle" Then
Rows("12:19").EntireRow.Hidden = True
Else
Rows("12:19").EntireRow.Hidden = False
End If
End Sub
NON Marcel problème par rapport au #post4
tu as dit :
"Remarque : je ne te conseille pas la macro de #4 car elle va s'exécuter à chaque modification du contenu d'une cellule de la feuille et en plus elle risque de modifier la hauteur de tes lignes."
Pourrais-tu me dire ce qui ne vas pas dans la solution que j'ai proposé.
Pour mon évolution, ça m'intéresse lol
"Hélas, je ne vois pas comment être plus clair puisque j'ai déjà décrit les deux points qui me chagrinent. "
Je ne vois pas bien la différence d'exécution entre ton code et le mien.
Et techniquement ça m'intéresse pour évoluer ...
Mais si tu ne sais pas, c'est pas grave
C'est pas que je ne sais pas, c'est que je ne peux que répéter ce que j'ai déjà dit :
- le code à l'intérieur de la macro va s'exécuter à chaque modification du contenu de n'importe quelle cellule de la feuille,
- elle risque de modifier la hauteur des lignes (si jamais il décide d'utiliser des lignes d'une hauteur différente de la hauteur codée en dur dans la macro).
Franchement, je ne vois pas quoi dire de plus.
Et ce n'est que mon propre avis personnel à moi, et donc ça n'engage que oim !
NON Marcel, c'est faux et ta macro fait la même chose. J'ai testé les deux lolo
Mais pas grave ..; ne perdons pas notre temps et pour moi, c'est l'heure du dodo
C'est pourtant pas compliqué :
- quelle que soit la cellule modifiée dans la feuille, tu vas passer dans ta macro et modifier la hauteur des lignes,
- si l'utilisateur change la hauteur des lignes, ta macro va remettre la hauteur à 19,5.
Si tu n'as toujours pas compris, ben dommage, je ne peux pas faire mieux.
@+
Tu as bien fait d'insister : je viens de regarder ce que j'ai posté en #2, et j'ai vu que je m'étais gouré en postant la macro en #2...
Tu as raison, ma macro fait la même chose : lors de la modification d'une cellule quelconque de la feuille on passe aussi systématiquement dans ma macro.
Et en plus mon code démasque les lignes quand il ne faudrait pas les démasquer !!! (erreur que ne commet pas ton code !)
Du coup j'ai édité #10...
Donc je corrige et remplace par ceci :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
'
If Target.Address = "$B$3" Then Rows("12:19").EntireRow.Hidden = (Target.Value = "Trimestrielle")
End Sub