Mise à jour des lignes dans VBA en cas d'insertion

Résolu/Fermé
Alyss - Modifié par Alyss le 18/02/2015 à 13:10
 Alyss - 18 févr. 2015 à 14:56
Bonjour,

J'ai créé un document dans lequel se trouve un tableau de questions auxquelles la réponse (colonne H) est soit O, soit N.
J'ai créé une macro VBA qui, en fonction de la réponse, m'affiche plus ou moins de questions (affiche ou masque des lignes), le questionnaire évoluant en fonction de ce que l'on répond.

If Target.Count > 1 Then Exit Sub '
If Target.Address = "$H$31" Then '
Select Case Target.Value
Case "N": Rows("41:50").Hidden = True
Case "O": Rows("41:50").Hidden = False
End Select
End If


Problème : je devrai fréquemment ajouter des lignes au-dessus du tableau, ce qui change le numéro de la ligne pour Target.Adress et, par conséquent, les numéros des lignes masquées ou affichées en fonction de la réponse.

Je désire que ces numéros se mettent automatiquement à jour si on insère une ligne, de façon à ne pas devoir chaque fois modifier les numéros un par un à chaque insertion, est-ce possible ?

J'espère avoir été assez claire...

PS : il s'agit d'excel 2010.
A voir également:

1 réponse

Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
18 févr. 2015 à 13:51
Bonjour,

Je vois deux moyens :
- soit tu passes en paramètre les numéros de ligne à afficher/masquer dans la ligne de ta question O/N (dans ton cas 41 et 50 en ligne 31) ;
- soit tu fais ton formulaire à l'aide d'un UserForm qui me semble plus indiqué.

A+
0
Merci pour la réponse ! Je vais tenter de me débrouiller avec le UserForm alors ;)
0