erreur 1004 impossible de définir la propriété onaction de la classe rectangle

  • Initiateur de la discussion Initiateur de la discussion aldhim
  • Date de début Date de début

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 !

aldhim

XLDnaute Nouveau
(résolu)erreur 1004 impossible de définir la propriété onaction de la classe rectangl

Bonjour le forum,

J'avais pour habitude de trouver réponse à mes questions ici mais là je sèche. J'ai bien sur effectuer une recherche mais rien de bien concluant.

Alors voici une petite explication :

Je cherche à rendre transparent un rectangle et lui affecter une macro.

Pour cela j'ai une userform avec une liste (juste un affichage) et un bouton suivant (les valeurs de la liste ont été définies précédemment dans une autre userform).

l'utilisateur à juste à créer l'objet (rectangle ou forme libre) à l'endroit et aux dimensions de son choix puis de cliquer sur suivant pour affecter la macro et rendre invisible l'objet.

Le problème c'est que l'objet devient bien transparent mais excel n'accepte absolument pas d'affecter une macro à celui-ci.

J'ai pourtant vérifié si le code pour affecter cette macro mais je ne me suis pas planté.

liste_des_meubles est ma listbox
numligne est une variable de type integer déclaré en option explicit
macro_par_ligne ezst le nom d'un module
ligne x est le nom de la macro
boutonsuivant est le bouton de l'UserForm

Voici le code :

Private Sub boutonsuivant_Click()


numligne = Range("AD1").Value

With Selection
.Name = liste_des_meubles.Value
.ShapeRange.Fill.Visible = msoFalse
.ShapeRange.Line.Visible = msoFalse
.OnAction = "macro_par_ligne.ligne " & numligne
End With



Range("AD1").Value = Range("AD1").Value + 1

If liste_des_meubles.Value = Range("AA1").End(xlDown).Offset(-1, 0).Value Then boutonsuivant.Caption = "Fin"

End Sub

Merci d'avance pour toute l'aide que vous pourrez (ou pas) m'apporter
 
Dernière édition:
Re : erreur 1004 impossible de définir la propriété onaction de la classe rectangle

Bonjour aldhim
La ligne
Code:
[COLOR="DarkSlateGray"].OnAction = "macro_par_ligne.ligne " & numligne[/COLOR]
me semble incorrecte car elle appelle une procédure dont le nom contient une espace. Je crois que l'espace est un caractère interdit dans un nom de procédure.
Sans garantie...​
ROGER2327
 
Re : erreur 1004 impossible de définir la propriété onaction de la classe rectangle

Bonjour roger 2327,

Effectivement maintenant ça marche.

3 heures que je cherchais pour un vieux truc con comme ça. J'ai l'air con maintenant.

Mais bon, il faut dire que le message d'erreur est quand même pas très explicite. Excel aurait pu afficher un truc du genre "macro introuvable" ou "caractère non autorisé dans une procédure".

Merci beaucoup.
 
Re : erreur 1004 impossible de définir la propriété onaction de la classe rectangle

Re...
Heureux d'avoir trouvé. C'est le genre d'erreur qu'on a du mal à détecter soi-même. Lorsqu'on n'a pas écrit un texte, on aperçoit plus facilement les erreurs...​
Bonne journée !
ROGER2327
 
- 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
1
Affichages
741
Retour