utiliser les plages nomées en VBA

n0str0m0

XLDnaute Nouveau
Bonjour,

Voici mon probleme.
Je veux nomer une plage sur une feuil2 et l'affecter au cellules de la feuil1 (colonne A).
J'ai donc utilisé l'editeur de macro pour voir le code. Mais quand je lance la macro j'ai une erreur (alors que la manipulation fontionne "a la main")

Voici mon code si quelqu'un a une idée

Sub Macro1()
'
' Macro1 Macro
'

'
Sheets("Feuil2").Select
Range("A3:A8").Select
ActiveWorkbook.Names.Add Name:="Clients", RefersToR1C1:="=Feuil2!R3C1:R8C1"
ActiveWorkbook.Names("Clients").Comment = ""
Sheets("Feuil1").Select
Columns("A:A").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=Clients"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub

L'erreur se situe au niveau du ".Add Type"

merci de votre aide
 

Pierrot93

XLDnaute Barbatruc
Re : utiliser les plages nomées en VBA

Bonjour Nostromo

modifies peut être le code comme suit :

Code:
With Selection.Validation
.Delete
[B][COLOR="Blue"].Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:="=Clients"[/COLOR][/B]
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With


bon après midi
@+
 

Hervé

XLDnaute Barbatruc
Re : utiliser les plages nomées en VBA

bonjour

a tester

Code:
Sheets("Feuil2").Range("A3:A8").Name = "Clients"

With Sheets("feuil1").Columns(1).Validation
    .Delete
    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
    xlBetween, Formula1:="=Clients"
End With

tu as vraiment besoin de 65536 listes de validation en colonne A de la feuille 1 ???

salut
 

Discussions similaires

Statistiques des forums

Discussions
312 429
Messages
2 088 353
Membres
103 824
dernier inscrit
frederic.marien@proximus.