OVH Cloud OVH Cloud

Erreur 1004 ?

7 réponses
Avatar
Lycaon
Bonjour =E0 tous,

Ci dessous unpetit bout de mon code.

Plg =3D Range("A4:A" & Range("A" & LigneEntete).End(xlUp).Row).Address
With Selection.Validation
.Delete
.Add Type:=3DxlValidateList, AlertStyle:=3DxlValidAlertStop,
Operator:=3D _
xlBetween, Formula1:=3D"=3D" & Plg

J'obtiens une erreur 1004 quand j'essaye de passer la ligne .Add
Type...

Pourtant Plg est parfaitement d=E9fini : "$a$4:$a$14" dans ce cas.

Est ce qu'il y aurait une autre erreur de syntaxe ?

Merci =E0 tous,

Lycaon

7 réponses

Avatar
isabelle
bonjour Lycaon,

est ce que le code s'exécute suite à un click sur un bouton ?

isabelle


Bonjour à tous,

Ci dessous unpetit bout de mon code.

Plg = Range("A4:A" & Range("A" & LigneEntete).End(xlUp).Row).Address
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop,
Operator:= _
xlBetween, Formula1:="=" & Plg

J'obtiens une erreur 1004 quand j'essaye de passer la ligne .Add
Type...

Pourtant Plg est parfaitement défini : "$a$4:$a$14" dans ce cas.

Est ce qu'il y aurait une autre erreur de syntaxe ?

Merci à tous,

Lycaon



Avatar
Lycaon
Merci pour ta réponse.

La macro de départ est effectivement lancée par un bouton.

Le bout que j'ai cité fait partie d'un Select Case et, en utilisant
exactement la même syntaxe, cela marche pour certains Case Is et pas
pour d'autres !!!!

A bientôt

Lycaon
Avatar
Lycaon
voilà le select case

For Each X In Array("e", "f", "k", "m", "l", "n", "o", "p", "q")

Range(X & LigneEntete + 5, X & D + LigneEntete + 4).Select

Select Case X

Case Is = "e"
Plg = Range("A4:A" & Range("A" & LigneEntete).End(xlUp).Row).Address
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop,
Operator:= _
xlBetween, Formula1:="=" & Plg
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
...

Une autre chose qui m'étonne est le fait que pour deux X différents
mais dont les données de validation (donc Plg ici) sont identiques, la
macro fonctionne bien pour l'un et pas pour l'autre.
Avatar
isabelle
as tu mis la propriété du bouton "TakeFocusOnClick" à false ?

isabelle


voilà le select case

For Each X In Array("e", "f", "k", "m", "l", "n", "o", "p", "q")

Range(X & LigneEntete + 5, X & D + LigneEntete + 4).Select

Select Case X

Case Is = "e"
Plg = Range("A4:A" & Range("A" & LigneEntete).End(xlUp).Row).Address
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop,
Operator:= _
xlBetween, Formula1:="=" & Plg
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
...

Une autre chose qui m'étonne est le fait que pour deux X différents
mais dont les données de validation (donc Plg ici) sont identiques, la
macro fonctionne bien pour l'un et pas pour l'autre.



Avatar
Lycaon
Non, elle est sur True
J'ai essayé en réglant la propriété dont tu parles à False et ça
ne change rien

Les colonnes qui ne fonctionnent pas sont les colonnes E et P : ça n'a
aucun sens pour moi...



as tu mis la propriété du bouton "TakeFocusOnClick" à false ?

isabelle



Avatar
isabelle
sans voir le fichier c'est difficile de répondre,
si tu peut le "déposer" là: http://www.cjoint.com
et venir donner ici le lien de téléchargement que le site va donner,
je pourrai regarder ça de plus près.

isabelle


Non, elle est sur True
J'ai essayé en réglant la propriété dont tu parles à False et ça
ne change rien

Les colonnes qui ne fonctionnent pas sont les colonnes E et P : ça n'a
aucun sens pour moi...




as tu mis la propriété du bouton "TakeFocusOnClick" à false ?

isabelle







Avatar
Lycaon
J'ai résolu le problème en effaçant au préalable tous les formats
existants dans la feuille et en laissant le .delete dans les Select
Case.

J'ai l'impression qu'il y a un double emploi mais ça fonctionne donc
je ne me pose pas trop de questions.

Merci Isabelle d'avoir essayé de réfléchir à mon pb...

@ bientôt

Lycaon