Copier les cellules d'une feuille à une autre si la checkbox est cochée?

Ritalachose

Nouveau membre
Bonjour,

Explication de la ituation :

j'ai deux feuilles de calcul : une nommées DONNEES et l'autre SBI.
Dans la feuille DONNEES j'ai des tableaux de données et au début de chaque ligne de données une Checkbox.
J'aimerai que quand la Checkbox est vraie les 5 cellules qui suivent soient copiée Ex : A3 est vraie -> Cellules B3 à E3 copiées
Il faut ensuite que ces cellules soient collées sur la feuille SBI à partir de A24:F24 jusqu'à environ A44:F44.

J'ai commencé à faire quelquechose avec ce que j'ai pu trouver à droite à gauche mais ça ne fonctionne pas vraiment.
J'ai donc de nombreuses questions :
- Quel est le nom pour une Checkbox lorsqu'on veut la présenter au début? (apparemment il aime pas trop ma ligne 3 ^^)
- J'ai plus de 38 Checkbox comment faire pour ne pas taper 38 fois le code et avoir une sorte de boucle qui prend en compte toutes les Checkboxes jusqu'à une certaine ligne?
- Comment faire pour lui demander de décaler d'une ligne quand la première est déjà utilisée dans la feuille SBI (autrement qu'en faisant ce que j'ai essayé vers ligne 15 du code)?
- Comment faire pour que quand la case est décochée les cases s'effacent dans la feuille SBI?

ça fait beaucoup de question j'avoue mais je viens de commencer de m'intéresser à Excel et j'ai déjà mis 2 jours pour trouver comment faire une checkbox et ce petit bout de code! ^^

Je suis prête à faire de nombreux essais pour réussir à faire tout ça et enfin ne plus être aussi nulle en prog Excel! :)

Merci de bien vouloir me donner un coup de main!

Code:
Sub Caseàcocher15_Cliquer()

Dim Caseàcocher15 As CheckBox
Dim SBI As Worksheets
Dim DONNEES As Worksheets
Dim Caseàcocher16 As CheckBox

If Caseàcocher15.Value = True Then
Range("B3:E3").Copy Destination:=Sheets("SBI").Range("A24:E24")
End If
End Sub

Sub Caseàcocher16_Cliquer()
If Caseàcocher16.Value = True Then
If Worksheets("SBI").Cell("A24") = Empty Then
Range("B4:E4").Copy Destination:=Sheets("SBI").Range("A24:E24")
End If
Range("B4:E4").Copy Destination:=Sheets("SBI").Range("A25:E25")
End If
End Sub

Sub Caseàcocher38_Cliquer()

End Sub
 

zeb

Modérateur
Salut,

Pour commencer et pour moi pouvoir reproduire ton cas, dis-nous comment tu as fais pour avoir une case à cocher sur une ligne.
Ensuite, on règlera tes problèmes un par un ;)
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 098
Messages
6 717 048
Membres
1 586 281
Dernier membre
moto45ktm
Partager cette page
Haut