CheckBox VBA

meldja

XLDnaute Impliqué
Bonjour,
Mon problème est sans nul doute tout bête, mais je n'arrive pas à trouver de réponse après des recherches sur le Net.
Origine de mon projet :
Sur ma messagerie, on peut cocher des checkboxs pour sélectionner des lignes (qui correspondent à des messages) et on peut les supprimer via un bouton.
J'ai voulu reproduire ça en VBA sur excel.
Je me suis dit : "facile, yaka mettre un checkbox sur chaque ligne...".
J'ai tenté le code suivant :
Private Sub CheckBox1_Click()
If CheckBox1 Then
Rows("2:2").Select
Else
Exit Sub
End If
End Sub
Private Sub CheckBox2_Click()
If CheckBox2 Then
Rows("selection, 3:3").Select
Else
Exit Sub
End If
End Sub
...
Sauf que quand je sélectionne un checkbox, pas de problème... mais lorsque j'en sélectionne un autre, la première sélection disparait.
J'ai cherché comment ajouter une sélection sans effacer la précédente, mais en vain.
J'espère avoir été suffisamment explicite.
Merci d'avance pour vos connaissances.
 

Bigfish

XLDnaute Occasionnel
Re : CheckBox VBA

Salut,

je vois pas trop pourquoi tu veux utiliser des checkbox pour ça mais bon :

Private Sub CheckBox1_Click()
If CheckBox1 Then
Rows(2).Select
Else
Exit Sub
End If
End Sub
Private Sub CheckBox2_Click()
If CheckBox2 Then
Set Maplage = Union(Rows(Selection.Row), Rows(3))
Maplage.Select
Else
Exit Sub
End If
End Sub

:)
 

Lii

XLDnaute Impliqué
Re : CheckBox VBA

Bonsoir tous,

Pour envisager tous les cas, je verrais les choses ainsi :
Code:
Private Sub CheckBox1_Change()
  If CheckBox1 Then
    If Not CheckBox2 Then
      Rows(2).Select
    Else
      Union(Rows(2), Rows(3)).Select
    End If
  Else
    If CheckBox2 Then Rows(3).Select
  End If
End Sub
Private Sub CheckBox2_Change()
  If CheckBox2 Then
    If Not CheckBox1 Then
      Rows(3).Select
    Else
      Union(Rows(2), Rows(3)).Select
    End If
  Else
    If CheckBox1 Then Rows(2).Select
  End If
End Sub
mais s'il y a d'autres cases à cocher cela va se compliquer donc pourquoi pas avec une évènementielle ?
 

Pièces jointes

  • Sélection De Lignes.zip
    7.6 KB · Affichages: 57

meldja

XLDnaute Impliqué
Re : CheckBox VBA

Merci pour vos réponses,
En effet, ça marche bien avec 2 checkboxs mais pas au-dela.
Truc bizarre, lorsque l'on coche un checkbox, qu'on le décoche et que l'on coche un autre checkbox, les deux lignes sont sélectionné alors qu'il ne devrait y en avoir qu'une.

En fait je voulais essayer de reproduire en VBA ce qui est possible de faire sur une messagerie (en PHP ou autre) juste pour expérimentation.
Au départ, je pensais que ça devait ne pas être trop compliqué mais je me suis mis le doigt dans l'oeil... Apparemment, ça à l'air super complexe.
Je vais donc laisser tomber cette expérimentation.
En tout cas, merci à tous (avec beaucoup de retard, comme d'habitude).
Passez un bon w-end
 

Discussions similaires

Statistiques des forums

Discussions
312 280
Messages
2 086 743
Membres
103 384
dernier inscrit
bakhtibenabbey