Reproduire un code sur toutes les lignes d'une colonne

Fermé
Mourhad Messages postés 10 Date d'inscription lundi 13 juin 2016 Statut Membre Dernière intervention 10 avril 2017 - 13 juin 2016 à 13:19
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 - 15 juin 2016 à 14:35
Bonjour

J'essaye de créer un userform avec des case à cocher.
J'ai réussi à mettre en place le code permettant d'enrichir à partir des cases coché la premiere ligne de mon tableau.
toutefois je n'arrive pas à le reproduire sur l'intégralité des lignes de la colonne F et G en l’occurrence.
Vous remerciant par avance pour votre aide.
/////////////////////////////////////////////////////////////////////////////////////
Private Sub UserForm_Initialize() 'Valeurs initiales des cases à cocher
If Range("F2") = "Coché" Then
CheckBox1.Value = True
End If

If Range("G2") = "Coché" Then
CheckBox2.Value = True
End If


End Sub

Private Sub CheckBox1_Click() 'N°1
If CheckBox1.Value = True Then 'Si coché ...
Range("f2") = "Coché"
Else 'Si non coché ...
Range("F2") = "Non coché"
End If

End Sub

Private Sub CheckBox2_Click() 'N°2
If CheckBox2.Value = True Then 'Si coché ...
Range("G2") = "Coché"
Else 'Si non coché ...
Range("G2") = "Non coché"
End If

End Sub
////////////////////////////////////////////////////////////////////////////////////////
A voir également:

3 réponses

f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
13 juin 2016 à 13:43
Bonjour,

toutefois je n'arrive pas à le reproduire sur l'intégralité des lignes de la colonne F et G en l’occurrence.
Vous pouvez donner un peu plus d'explications ?????????????????
0
Mourhad Messages postés 10 Date d'inscription lundi 13 juin 2016 Statut Membre Dernière intervention 10 avril 2017
13 juin 2016 à 14:44
Bonjour à vous et merci pour votre prompt réponse.
Dans mon useform j'ai créer 2 checkbox lorsque celle ci sont cochées ( ou non ) cela alimente 2 cellues la f2 et la g2.
Malheureusement lorsque j'appel un autre client avec ma combobox le client de la ligne 3 par exemple et bien malheureusement si je coche ou je décoche cela modifiera f2et g2(le client 1)
Je souhaiterai avoir la fonctionnalités pour tout mes client et pas seulement le premier.
Bien à vous.
0
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
13 juin 2016 à 16:21
Re,

Un exemple avec memorisation par VRAI/FAUX plutot que "Coché"/"Non Coché"

Pour la ligne je parts du .ListIndex de la combobx1+2, donc a vous d'adapter en fonction:

https://www.cjoint.com/c/FFnotLmXrMf
0
Mourhad Messages postés 10 Date d'inscription lundi 13 juin 2016 Statut Membre Dernière intervention 10 avril 2017
13 juin 2016 à 21:36
Il s'agit d'une Checkbox en effet je vais changer coche/non coche par o et n
à quelle niveau doit je ajouter la ligne de code .
Merci pour votre retour.
Ps: en ouvrant votre fichier en pj je ne vois rien d'autre qu'un tableau excel.est ce normal?
Cordialement
0
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708 > Mourhad Messages postés 10 Date d'inscription lundi 13 juin 2016 Statut Membre Dernière intervention 10 avril 2017
14 juin 2016 à 07:50
Bonjour
Oui, pour lancer l'UF, allez dans la fenêtre VBA !!
0
Mourhad Messages postés 10 Date d'inscription lundi 13 juin 2016 Statut Membre Dernière intervention 10 avril 2017 > f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024
15 juin 2016 à 10:29
Bonjour
Tout d'abord je tiens à vous présenter mes excuses pour le délai de réponses.
Le premiere partie du code fonctionne nickel
:
Private Sub CheckBox1_Click()
If ComboBox1.ListIndex <> -1 Then
Worksheets("données").Range("F" & ComboBox1.ListIndex + 2) = CheckBox1
End If
End Sub

Private Sub CheckBox2_Click()
Worksheets("données").Range("G" & ComboBox1.ListIndex + 2) = CheckBox2
End Sub

Private Sub ComboBox1_Change()
If ComboBox1.ListIndex <> -1 And ComboBox1.Text <> "" Then
With Worksheets("données")
CheckBox1 = .Range("F" & ComboBox1.ListIndex + 2)
CheckBox2 = .Range("G" & ComboBox1.ListIndex + 2)
End With
End If
End Sub

/////////////////////
par contre la partie reinitialisation ne fonctionne pas ,
et lorsque je ne la supprime pas j'obtiens le message suivant :

erreur d'execution permission 70.

bien à vous
0
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708 > Mourhad Messages postés 10 Date d'inscription lundi 13 juin 2016 Statut Membre Dernière intervention 10 avril 2017
Modifié par f894009 le 15/06/2016 à 11:39
Bonjour,
et lorsque je ne la supprime pas j'obtiens
Vous pouvez detailler un peu plus ???????????????

pour Check 2, un oubli de ma part
Private Sub CheckBox2_Click()
    If ComboBox1.ListIndex <> -1 Then
        Worksheets("feuil1").Range("G" & ComboBox1.ListIndex + 2) = CheckBox2
    End If
End Sub
0
Mourhad Messages postés 10 Date d'inscription lundi 13 juin 2016 Statut Membre Dernière intervention 10 avril 2017 > f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024
15 juin 2016 à 12:02
J'obtiens le code erreur lorsque je copie le code entierement même avec la modification.
En effet lorsque je supprime le bloc de reinitialisation le code fonctionne mais la fonctionnalités n'est pas complete .
0