Comment récupérer les données des cases à cocher ?

Résolu/Fermé
Mr Boushido Messages postés 6 Date d'inscription jeudi 27 février 2014 Statut Membre Dernière intervention 3 mars 2014 - Modifié par Mr Boushido le 27/02/2014 à 14:24
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 - 3 mars 2014 à 15:25
Bonjour,

j'aimerai que lorsqu'un utilisateur clic ou double clic (peu importe) sur une cellule un UserForm apparaisse avec dedans des case à cocher (environ une quinzaine), et un bouton valider qui ensuite va récupérer les valeurs de ces checkbox ( mais attention je ne veut pas que sa m'affiche Vrai ou Faux... voir ci-dessous) pour afficher ces valeurs dans cette cellule même ( en passant j'aimerai que la cellule s'adapte en fonction du nombre de valeurs).

Les valeurs ressemble à ça :
checkbox1 "Conforme"
checkbox2 "Non conforme"
checkbox3 "Rayure"
checkbox4 "Rayure profonde"
checkbox5 "etc..."
' '
' '
' '

Voici par exemple mon bouton valider qui ne marche pas (lol je débute)

Private Sub Valider_Click()
Dim i As Integer


For i = 1 To 14

If Me.CheckBox(i).Top = True Then
ActiveCell = CaseCoche.CheckBox(i).Value

End If
CaseCoche.Hide
Next i
End Sub


Merci de m'expliquer comment faire .

Cordialement

8 réponses

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
28 févr. 2014 à 14:38
Re,

d'ou ma question Lien (#3):

ActiveCell = CaseCoche.CheckBox(i).Value (meme si le code est faut) Vu que vous avez des checkboxs, pourquoi une seule cellule a ecrire ???

un exemple de code a mettre dans le VBA de l'Userform: (ici deux checkbox, mais code a ecrire pour les 12 autres) ecriture feuille1 A1 a A14 suivant coche

Dim ValCheck(14)

Private Sub checkbox1_click()
If CheckBox1 Then
ValCheck(0) = "Conforme"
Else
ValCheck(0) = ""
End If
End Sub

Private Sub checkbox2_click()
If CheckBox2 Then
ValCheck(1) = "Non Conforme"
Else
ValCheck(1) = ""
End If
End Sub

Private Sub Valider_Click()
Dim i As Integer, point As Byte

With Worksheets("feuil1")
point = 1
.Range("A1:A15").ClearContents
For i = 0 To 1 '14
If ValCheck(i) <> "" Then
.Range("A" & point) = ValCheck(i)
point = point + 1
End If
Next i
End With
'CaseCoche.Hide
End Sub
1