Affectation macro condition If

Fermé
kartnemaniac Messages postés 3 Date d'inscription mercredi 28 juin 2017 Statut Membre Dernière intervention 29 juin 2017 - Modifié le 29 juin 2017 à 00:26
kartnemaniac Messages postés 3 Date d'inscription mercredi 28 juin 2017 Statut Membre Dernière intervention 29 juin 2017 - 29 juin 2017 à 12:08
Bonjour,

Voilà je suis sur Mac (il n'y a donc pas le contrôle ActiveX) et je veux affecter une macro à une case à cocher.

Mais quand je veux créer le programme ça me met erreur d'éxécution 424 et vba me dit que la ligne avec if a un problème.

Je vous mets la le programme ci dessous:
Sub Caseàcocher5_Cliquer()

If Caseàcocher5.Value = True Then   -> (c'est cette ligne qui plante)

[Devis!E43] = "Remise de"

[Devis!F43] = [E14]

[Devis!H43] = [Devis!H42] * [E14]

Else: [Devis!E43,Devis!F43,Devis!H43] = ""

End If

End Sub



EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.


Voilà merci!
A voir également:

1 réponse

jordane45 Messages postés 38161 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 5 mai 2024 4 658
29 juin 2017 à 00:27
Bonjour,

Une première piste ... tu es sûr du "nom" de ta case ?
Pourrais tu lancer la macro suivante et nous dire ce que ça t'a retourné ?

Sub getShapesName()
  For Each Sha In ActiveSheet.Shapes
       MsgBox Sha.Name
  Next
End Sub

0
kartnemaniac Messages postés 3 Date d'inscription mercredi 28 juin 2017 Statut Membre Dernière intervention 29 juin 2017
29 juin 2017 à 10:20
Merci pour ta réponse!

Et bien normalement oui, le nom caseàcocher6 et celui qui s'affiche quand je veux affecter une macro!
Pour ton programme, quand je lance cette macro ça me met un pop up d'une fenêtre microsoft avec d'abord check box 1 puis text box 1 puis check box 2 et enfin check box 6!
0
jordane45 Messages postés 38161 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 5 mai 2024 4 658 > kartnemaniac Messages postés 3 Date d'inscription mercredi 28 juin 2017 Statut Membre Dernière intervention 29 juin 2017
29 juin 2017 à 10:54
Tu nous parles de la case 6 ... hors ton code fait référence à la case 5 .... Oo ??

Ensuite... il faut éviter les caractères accentué dans le nom des variables (ou objets).
Et enfin.. je pense qu'il faut utiliser le nom "checkbox6" au lieu de caseàcocher6 ..
0
kartnemaniac Messages postés 3 Date d'inscription mercredi 28 juin 2017 Statut Membre Dernière intervention 29 juin 2017
Modifié le 29 juin 2017 à 12:10
Désolé je voulais dire caseàcocher5 !

J'ai essayé avec Checkbox6 mais c'est toujours la même ligne qui plante:

<code>Sub Checkbox6_Click()

If Checkbox6.Value = True Then   -> (c'est cette ligne qui plante)

[Devis!E43] = "Remise de"

[Devis!F43] = [E14]

[Devis!H43] = [Devis!H42] * [E14]

Else: [Devis!E43,Devis!F43,Devis!H43] = ""

End If

End Sub
</code>

J'arrive pas à comprendre pourquoi..
0