Problème CheckBox

Bonjour a tous,

J'ai 3 CheckBox, la première fonctionne parfaitement, mais la 2ème fonctionne uniquement si la 1er est cocher, et la 3ème fonctionne pas du tout.

Voici le fichier.

Fichier supprimer

Merci beaucoup

oups erreur

Personne ?

Bonjour,

Euh, pourquoi tu calcules "IntLigne, Lg et i"?

Ils ne servent à rien, dans ton code.....

Et ensuite, pourquoi, dans tes codes, quelles que soient les cases cochées, tu fais toujours référence à la "CheckBox1"??????

If CheckBox1 = True Then

Pas étudié plus avant ton code, mais rectifie déjà cette anomalie, et ensuite, je pense qu'on peut simplifier...

Bon courage

Bonjour,

cousinhub

Sa doit être une erreur de ma part alors, quel face toutes référence a la checkbox1.

Sinon au cour de la journée j'ai régler le premier de mes soucie.

Le passage automatique a la ligne 28 voici le code :

Private Sub CheckBox1_Click()

Dim Lg As String, i As Long, IntLigne As Long

IntLigne = ActiveSheet.Cells(2, 1).End(xlDown).Row + 27
'La ligne dans laquelle sont ajoutées les valeurs est définie par la TextBox1
Lg = Sheets("Liste des clients").Cells(65536, 1).End(xlUp).Row + 27
'texte des cases

  If CheckBox1 = True Then
    Sheets("Devisation").Cells(Lg, "C").Value = Sheets("Bibliothèque VELUX®").Range("C2").Value
  Else
    Sheets("Devisation").Cells(Lg, "C") = ""
  End If
End Sub

Ensuite la deuxième CheckBox est maintenant indépendante de la première mais elle me remplace la valeur de la Première si celle ci est coché

Ses a dire :

Quand CheckBox1 est cocher, alors elle envoie les info a C28

Mais:

Quand CheckBox2 est cocher, alors elle envoie les info a C28 également donc elle remplace les donné.

hors se que je voudrait ses que si la case C28 est déjà occuper alors sa passe a la case qui est vide.

Voyer vous ?

Merci a vous

Voici le fichier actuel

28checkbox.xlsm (77.27 Ko)

Bonjour,

J'ai modifié ton code pour qu'il cherche une ligne vide si une case a déjà été cochée ou qu'il efface la bonne ligne si la case est décochée.

A adapter à la case 3.

Private Sub CheckBox2_Click()
Dim Lg As String, i As Long, IntLigne As Long

'IntLigne = ActiveSheet.Cells(2, 1).End(xlDown).Row + 27
'La ligne dans laquelle sont ajoutées les valeurs est définie par la TextBox1
Lg = Sheets("Liste des clients").Cells(65536, 1).End(xlUp).Row + 27
'texte des cases

  If CheckBox2 = True Then
    While Not IsEmpty(Sheets("Devisation").Range("C" & Lg).Value)
        Lg = Lg + 1
    Wend
    Sheets("Devisation").Cells(Lg, "C").Value = Sheets("Bibliothèque VELUX®").Range("C5").Value
  Else
    While Not Sheets("Devisation").Range("C" & Lg).Value = Sheets("Bibliothèque VELUX®").Range("C5").Value
        Lg = Lg + 1
    Wend
    Sheets("Devisation").Cells(Lg, "C") = ""
  End If
End Sub

A+

28checkbox.xlsm (77.87 Ko)

Bonjour a toi dachevid,

Désoler de répondre tardivement car après quelque jours sans réponse j'avais laisser tomber.

Je suis revenue pour poster la réponse a mon problème, sinon j'allai pas voir t'a solution

Merci beaucoup pour le code, ses effectivement se que je voulais.

De mon coter j'ai sa qui fonctionne aussi :

Private Sub CheckBox1_Click()

Dim Lg As String, i As Long, IntLigne As Long

Macro2

  If CheckBox1 = True Then
    ActiveCell.Value = Sheets("Bibliothèque VELUX®").Range("C2").Value
    ActiveCell.Range("f1").Value = Sheets("Bibliothèque VELUX®").Range("B2").Value
    ActiveCell.Range("a2").Value = Sheets("Bibliothèque VELUX®").Range("B3").Value
    ActiveCell.Range("a3").Value = Sheets("Bibliothèque VELUX®").Range("B4").Value
    ActiveCell.Range("r1").Value = Sheets("Bibliothèque VELUX®").Range("G2").Value
    ActiveCell.Range("s1").Value = Sheets("Bibliothèque VELUX®").Range("H2").Value
    ActiveCell.Range("u1").Value = Sheets("Bibliothèque VELUX®").Range("F2").Value
  Else
    ActiveCell.Value = ""
    ActiveCell.Range("f1") = ""
    ActiveCell.Range("a2") = ""
    ActiveCell.Range("a3") = ""
    ActiveCell.Range("r1") = ""
    ActiveCell.Range("s1") = ""
    ActiveCell.Range("u1") = ""
  End If
End Sub

Private Sub CheckBox2_Click()
Dim Lg As String, i As Long, IntLigne As Long

Macro2

  If CheckBox2 = True Then
    ActiveCell.Value = Sheets("Bibliothèque VELUX®").Range("C5").Value
    ActiveCell.Range("f1").Value = Sheets("Bibliothèque VELUX®").Range("B5").Value
    ActiveCell.Range("a2").Value = Sheets("Bibliothèque VELUX®").Range("B6").Value
    ActiveCell.Range("a3").Value = Sheets("Bibliothèque VELUX®").Range("B7").Value
    ActiveCell.Range("r1").Value = Sheets("Bibliothèque VELUX®").Range("G5").Value
    ActiveCell.Range("s1").Value = Sheets("Bibliothèque VELUX®").Range("H5").Value
    ActiveCell.Range("u1").Value = Sheets("Bibliothèque VELUX®").Range("F5").Value
  Else
    ActiveCell.Value = ""
    ActiveCell.Range("f1") = ""
    ActiveCell.Range("a2") = ""
    ActiveCell.Range("a3") = ""
    ActiveCell.Range("r1") = ""
    ActiveCell.Range("s1") = ""
    ActiveCell.Range("u1") = ""
  End If
End Sub

et la Macro2 ses :

Sub Macro2()

Sheets("Devisation").Select
Range("C1000").Select
Selection.End(xlUp).Select
ActiveCell.Range("a2").Select

End Sub

Merci encore.

A+

46checkbox-final.xlsm (49.36 Ko)
Rechercher des sujets similaires à "probleme checkbox"