XL 2016 Sommaire dynamique avec onglet masqué

  • Initiateur de la discussion Initiateur de la discussion RH_FFF
  • 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 !

RH_FFF

XLDnaute Nouveau
Bonjour à tous,

j'ai inséré cette macro qui fonctionne bien pour créer un sommaire dynamique:
Private Sub Worksheet_Activate()
[A6:A100].ClearContents
For i = 2 To Sheets.Count
nf = Sheets(i).Name
ActiveSheet.Hyperlinks.Add Anchor:=Cells(i + 6, 1), Address:="", SubAddress:="'" & _
nf & "'" & "!A1", TextToDisplay:=nf
Next i
[A6:A100].Sort Key1:=Range("A6"), Order1:=xlAscending, Header:=xlGuess
End Sub

Cependant, dans mon classeur, j'ai un onglet (feuil2) qui est masqué et que je ne souhaite pas faire apparaître dans le sommaire.
Auriez-vous une piste de réflexion?
En vous remerciant les experts.
 
Bonjour,

VB:
Private Sub Worksheet_Activate()
Dim i As Integer
Dim Nf As String
    [A6:A100].ClearContents
    For i = 2 To Sheets.Count
        If Sheets(i).Name <> "Feuil2" Then
            Nf = Sheets(i).Name
            ActiveSheet.Hyperlinks.Add Anchor:=Cells(i + 6, 1), Address:="", SubAddress:="'" & _
            Nf & "'" & "!A1", TextToDisplay:=Nf
        End If
    Next i
    [A6:A100].Sort Key1:=Range("A6"), Order1:=xlAscending, Header:=xlGuess
End Sub
Cordialement.
 
Bonjour à tous
Sans connaitre le(s) nom(s) de la / des feuille(s) masquée(s)
VB:
Private Sub Worksheet_Activate()
Dim i As Integer
Dim Nf As String
    [A6:A100].ClearContents
    For i = 2 To Sheets.Count
        If Sheets(i).Visible = True Then
            Nf = Sheets(i).Name
            ActiveSheet.Hyperlinks.Add Anchor:=Cells(i + 6, 1), Address:="", SubAddress:="'" & _
            Nf & "'" & "!A1", TextToDisplay:=Nf
        End If
    Next i
    [A6:A100].Sort Key1:=Range("A6"), Order1:=xlAscending, Header:=xlGuess
End Sub
Cordialement
 
Bonjour le fil

Si Black is Black alors True is True
Subséquemment, on peut se contenter d'écrire
VB:
Private Sub Worksheet_Activate()
Dim i As Integer
Dim Nf As String
    [A6:A100].ClearContents
    For i = 2 To Sheets.Count
        If Sheets(i).Visible Then
            Nf = Sheets(i).Name
            ActiveSheet.Hyperlinks.Add Anchor:=Cells(i + 6, 1), Address:="", SubAddress:="'" & _
            Nf & "'" & "!A1", TextToDisplay:=Nf
        End If
    Next i
    [A6:A100].Sort Key1:=Range("A6"), Order1:=xlAscending, Header:=xlGuess
End Sub
Ca ne change pas grand chose
Mais cela me permet de passer ici pour saluer Efgé 😉
 
Bonjour à tous, Salut JM 🙂
True is true, I agree
Profitons en pour nous mettre à l'abris du célèbre utilisateur qui modifie l'ordre des onglets 😉

Code:
Private Sub Worksheet_Activate()
Dim i As Integer
Dim Nf As String
Dim Sh As Worksheet
i = 7
    [A6:A100].ClearContents
    For Each Sh In ThisWorkbook.Worksheets
        If Sh.Visible And Sh.Name <> Me.Name Then
            Nf = Sh.Name
            i = i + 1
            ActiveSheet.Hyperlinks.Add Anchor:=Cells(i, 1), Address:="", SubAddress:="'" & _
            Nf & "'" & "!A1", TextToDisplay:=Nf
        End If
    Next Sh
    [A6:A100].Sort Key1:=Range("A6"), Order1:=xlAscending, Header:=xlGuess
End Sub
Cordialement
 
- 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
4
Affichages
1 K
Réponses
0
Affichages
1 K
Retour