XL 2013 Validation des données avec un vecteur

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 !

louloubru

XLDnaute Junior
Bonjour,
je souhaite valider des données à l'aide de plage nommées.
J'ai donc le code suivant par exemple :
VB:
   With Sheets(Noms_feuilles(i)).Cells(2, colcat).EntireColumn.Validation 'Morceau au sein d'une boucle, Noms_feuilles contient le nom de mes feuilles donc je procède à la validation sur toutes les feuilles
        .Delete
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
        xlBetween, Formula1:="=Catégories" 'Nom de ma plage qui sert de validation'
        .IgnoreBlank = True
        .InCellDropdown = True
        .InputTitle = ""
        .ErrorTitle = ""
        .InputMessage = ""
        .ErrorMessage = ""
        .ShowInput = True
        .ShowError = True
    End With

Jusqu'ici toue va bien. Sauf que la plage de validation en doit pas être la même sur toutes les feuilles. La plage porte le même nom que la feuille donc j''utilise le vecteur Noms_feuilles de nouveau.
C'est là que ça coince ... l'utilisation d'un vecteur ne semble pas compatible avec une plage de validation, le code suivant ne fonctionne pas :

Code:
    With Sheets(Noms_feuilles(i)).Cells(2, colorg).EntireColumn.Validation
        .Delete
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
        xlBetween, Formula1:="=Noms_feuilles(i)" 'Erreur ici'
        .IgnoreBlank = True
        .InCellDropdown = True
        .InputTitle = ""
        .ErrorTitle = ""
        .InputMessage = ""
        .ErrorMessage = ""
        .ShowInput = True
        .ShowError = True
    End With

Pour la ligne déclenchant l'erreur, j'ai également essayé Formula1:="Noms_feuilles(i)" --> m'écris Noms_feuilles(i) comme validation et Formula1:="="Noms_feuilles(i)"" --> erreur
Je ne sais pas comment faire : cela signifie que je ne peux pas faire de boucles sur les zones de validation ? Ça va être laborieux ...

En vous remerciant par avance,

Louise
 
Bonjour.
À priori :
VB:
 .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
        xlBetween, Formula1:="=""" & Noms_feuilles(i) & """"
Ou peut être plutôt :
VB:
 .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
        xlBetween, Formula1:="=" & Noms_feuilles(i)
Joignez toujours un classeur pour qu'on puisse tester nos propositions.
 
- 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
12
Affichages
1 K
Réponses
16
Affichages
3 K
Réponses
3
Affichages
897
Réponses
4
Affichages
1 K
Réponses
1
Affichages
996
Réponses
2
Affichages
858
Retour