Bonjour,
Je suis autodidacte en VBA et je n'ai pas trouvé de solution qui me convienne sur internet...
En gros, j'ai un certain nombre de taches chacune sur une ligne de la feuille excel et ce nombre peut varier par l'ajout ou la suppression de tache via des macros. De plus, ces taches peuvent changer de ligne en les déplaçant via macros également.
Je veux maintenant créer une macro afin de masquer certaines taches (et donc lignes) ou au contraire les réafficher. Le fait cliquer sur "masquer" pour une tache devra masquer les sous-taches qui sont juste en dessous.
Mon idée est de créer un control qui avec la macro associée va le faire. Il n'y a pas de problème pour le faire pour une tache donnée, je récupère la ligne du control par la code ci-dessous puis j'appelle la procédure MasquerTaches.
Le problème est que quand je créé une nouvelle tache (utilise un copier-coller de ligne), le control est copié sans le code. De plus, je ne connais pas le nom du nouveau control.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Private Sub CommandButton1_Click() Dim Pos As Integer Dim i As Integer Dim ligne As Integer Pos = CommandButton1.Top For i = 3 To Cells(1, 1).Value Step 'Cells(1, 1).Value est le nombre de taches If Cells(i, 1).Top > Pos Then Exit For Next i Call MasquerTaches(i-1) Exit sub
Voila, j'aimerais savoir si vous avez des idées, que ce soit en poursuivant dans ma voix ou avec une idée complètement nouvelle. J'espère que c'est clair...
En vous remerciant d'avance pour l'aide et le temps passé.
Partager