Modifier Liste validation VBA

fileofish

XLDnaute Occasionnel
Bonjour le forum

J'ai besoin de vous car je suis bloqué sur un point.
je souhaite modifier par VBA une liste de validation mais visiblement ca bloque :confused:

range("BO26").Select
application.CutCopyMode = False
With selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:= _
"=DECALER($R$1002;EQUIV($G$17;$Q:$Q;0)-2;0;NB.SI($Q:$Q;$G$17);1)"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With

Quelqu'un aurait-il une solution?
Merci d'avance
Philippe
 

fileofish

XLDnaute Occasionnel
je viens également d'essayer cela mais ca ne fonctionne pas !


With selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:= _
"=offset($R$1002,Application.Match($G$17,$Q:$Q,0)-2;0,countif($Q:$Q,$G$17),1)"
 

fileofish

XLDnaute Occasionnel
Comme cela non plus çà ne fonctionne pas !
Je ne comprends pas pourquoi çà bloque o_Oo_Oo_O


range("BO26").Select
application.CutCopyMode = False
With selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:= _
"=OFFSET(R2C18,MATCH(R18C7,C17,0)-2,0,COUNTIF(C17,R18C7),1)"
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Tout essayé, sauf la bonne, quoi !
La dernière mais en notation A1, un peu comme la précédente, et non en R1C1.
Attention: mes souvenir me rappellent que les formules de MeFC sont peut être restées, bizarrement, en A1 local. Donc en français.
Mais dans ce cas, le tout 1er code devrait marcher…
Mais je confond les listes de validation avec les MeFC, n'importe quoi…
 

fileofish

XLDnaute Occasionnel
Bonjour Dranreb,

Merci pour ta réponse mais je viens d'essayer cela mais ca ne fonctionne pas.


range("BO26").Select
application.CutCopyMode = False
With selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:= _
"=OFFSET($R$2;MATCH($G$18;$Q:$Q;0)-2;0;COUNTIF($Q:$Q;$G$18);1)"


Est ce cela que tu évoquais ?
merci
Philippe
 

Discussions similaires

Statistiques des forums

Discussions
312 200
Messages
2 086 163
Membres
103 149
dernier inscrit
Deepkneec