Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Figer les Volets

  • Initiateur de la discussion Initiateur de la discussion KTM
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

KTM

XLDnaute Impliqué
Bonjour chers tous
je voudrais par macro figer les volets dans cinquante feuilles .
j'ai utilisé le code ci-dessous mais une erreur me revient sur la ligne: .Range("F11").Select

VB:
Sub FigerVolet()
Dim T
Dim i As Long
Application.EnableEvents = False
Application.ScreenUpdating = False
    T = Array(51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, _
    70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100)
    For i = LBound(T) To UBound(T)
       With Worksheets(T(i))
    .Range("F11").Select
    ActiveWindow.FreezePanes = True
    End With
    Next i
    Application.ScreenUpdating = True
    Application.EnableEvents = True
End Sub
 
Bonjour KTM,
Je pense qu'il faut activer la feuille avant de vouloir figer les volets :
VB:
       With Worksheets(T(i))
            .Activate
            .Range("F11").Select
            ActiveWindow.FreezePanes = True
    End With
 
Bonjours a tout les deux
tu pourrais ajouter le retour au sheet de départ(celui sur le quel tu étais)
VB:
Sub FigerVolet()
    Dim T, i As Long, actifSheet As Worksheet
    Set actifSheet = ActiveSheet
    Application.EnableEvents = False
    Application.ScreenUpdating = False
    T = Array(51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, _
     70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100)
     For i = LBound(T) To UBound(T)
        With Worksheets(T(i))
            .Activate
            .Range("F11").Select
            ActiveWindow.FreezePanes = True
        End With
    Next i
    actifSheet.Activate
    Application.ScreenUpdating = True
    Application.EnableEvents = True
End Sub
attention tout de même à fonctionner avec un array ,il faut etre sur que les sheets 51 et 100 existent
ou alors ajouter un test d'existence
 
Re,
Par contre si toutes les feuilles existent, l'array est inutile :
VB:
     For i = 51 To 100
        With Worksheets(i)
            .Activate
            .Range("F11").Select
            ActiveWindow.FreezePanes = True
        End With
    Next i
 
re
@sylvanu ou tout simplement un test ( sheet.count VS i )

et en gardant l'array c'est pareil
if thisworkbook.sheets.count<=T(i )then
ou sans array
if thisworkbook.sheets.count<=i then


VB:
Sub FigerVolet()

    Dim T, i As Long, actifSheet As Worksheet
    Set actifSheet = ActiveSheet
    Application.EnableEvents = False
    Application.ScreenUpdating = False
   ' T = Array(51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, _
     70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100)
 'For i = LBound(T) To UBound(T)
 For i = 51 to 100
       if thisworkbook.sheets.count<=i then     
        With Worksheets(T(i))
            .Activate
            .Range("F11").Select
            ActiveWindow.FreezePanes = True
        End With
     end if   
 Next i
    actifSheet.Activate
    Application.ScreenUpdating = True
    Application.EnableEvents = True
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
406
Réponses
2
Affichages
1 K
Réponses
2
Affichages
884
  • Question Question
Réponses
3
Affichages
970
Réponses
1
Affichages
1 K
Réponses
3
Affichages
755
Réponses
9
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…