Bonjour,

Je possède un document dans lequel j'aimerais bien empêcher la libération des volets car je veux que les deux premières lignes soient toujours visibles.
La protection du classeur n'est pas une solution envisageable :/

J'ai essayé différents moyens, notamment l'utilisation de ce code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 If ActiveWindow.FreezePanes = False Then
  With ActiveWindow
  .SplitColumn = 0
  .SplitRow = 2
  End With
  ActiveWindow.FreezePanes = True
  End If
  End Sub
Ce code permet de refiger les deux premières lignes lorsqu'un utilisateur libère les volets.
Malheureusement, si l'utilisateur se trouvait déjà sur une des cellules des deux premières lignes et qu'il scrolle avant de cliquer sur une autre cellule alors les deux lignes figées ne sont plus les deux premières lignes de la feuille :S

J'ai essayé un autre code trouvé dans un forum permettant de bloquer l'utilisation de la fonction libérer les volets:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Private Sub Worksheet_Activate()
 CommandBars(1).Controls(9).Controls(7).Enabled = False
End Sub
Mais ce code n'a pas l'air de fonctionner dans mon cas/je l'ai probablement mal utilisé car la fonction libérer les volets est toujours active :(

Je sous ouvert à toute proposition permettant de résoudre mon problème.

Par avance, merci