Bonjour,
Je souhaiterai insérer cette formule via VBA dans une liste déroulante :
=DECALER(INDIRECT("DONNEES[Liste des tâches]");0;0;$D$6)
Si je réalise cette opération manuellement cela fonctionne. Cependant via Visual Basic cela ne fonctionne pas. Ce message s'affiche sans même lancer le programme lorsque j'insère ma formule dans mn code :
Erreur de compilation: Attendu: Fin d'instruction
en me surlignant le nom de mon tableau DONNEES.
Voici mon code :
Range(Cells(Premiereligne, 34), Cells(derniereLigne, 34)).Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="=DECALER(INDIRECT("DONNEES[Liste des tâches]");0;0;$D$6)"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
PS : hier ça fonctionnait et aujourd'hui en rallumant excel cela ne fonctionne plus ! J'avais aussi tester cela :
=DECALER(INDIRECT(""DONNEES[Liste des tâches]"");0;0;$D$6)
avec les doubles guillemets.