Création liste déroulante macro avec worksheet.count marche pas

David -  
 Dav999 -
Bonsoir,

pourquoi cette macro ne fonctionne pas ?

Sub ListerOnglets()
' Liste uniquement les onglets de type "Feuille"
' Les onglets de type "Graphique" ne sont pas inclus
'
    Dim i As Integer
    
    For i = 3 To Worksheets.Count
        Cells(3 + i, 4) = Worksheets(i).Name
        Cells(3 + i, 3) = i
    Next i
    
    ActiveSheet.Range("H6").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _
Operator:=xlBetween, Formula1:="=$C$6:$C$" + (Worksheets.Count - 3)
    
End Sub


Tout du moins, je ne vois pas comment "entourlouper" Excel, pour ne pas avoir cette erreur, en fait j'ai une liste d'onglet qui peut être amenée à grossir et je souhaiterais créer à la volée le nombre exact d'item qui correspondraient à mon nombre actuel d'onglets.

Merci d'avance
David
A voir également:

2 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

Sub ListerOnglets()
' Liste uniquement les onglets de type "Feuille"
' Les onglets de type "Graphique" ne sont pas inclus
'
    Dim i As Integer
    
    For i = 3 To Worksheets.Count
        Cells(3 + i, 4) = Worksheets(i).Name
        Cells(3 + i, 3) = i
    Next i
    
    With ActiveSheet.Range("H6").Validation
        .Delete
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _
                Operator:=xlBetween, Formula1:="=$C$6:$C$" & (6 + Worksheets.Count - 3)
    End With
    
End Sub
1
Dav999
 
Ben oui comme ca ca fonctionne mieux :)

Merci
0