Repetition de saisie macro

Résolu/Fermé
seagull62 - 27 oct. 2010 à 13:18
renoncule62 Messages postés 83 Date d'inscription vendredi 25 janvier 2008 Statut Membre Dernière intervention 1 juillet 2012 - 25 nov. 2010 à 09:12
Bonjour,
dans une feuille de calcul, dans un tableau contenant une multitude de cellules, je souhaite avoir une case à cocher dans chaque cellule qui, une fois cochée, me change la couleur de la cellule correspondante. pour ce faire j'ai utilisé les cases à cocher de la boite à outils contrôle et affecté une petite macro, tout va bien.
Est-il possible d' adapter les diffèrentes références de cellules par case à cocher pour éviter de taper la syntaxe X fois pour chaque chekbox.
Sinon auriez vous une autre suggestion pour arriver à mon résultat rapidement SVP (boite à outils formulaire..?)

Merci de votre aide


A voir également:

8 réponses

eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 250
28 oct. 2010 à 23:43
Bonsoir tout le monde,

Une autre proposition :
Pour une multitude de cellules utiliser une seule checkbox (donc un code unique) et la déplacer sur la cellule sélectionnée.

Ou bien plus simplement ne pas utiliser de checkbox et changer la couleur sur un clic-droit...

Exemple.xls

eric
1
Le Pingou Messages postés 12230 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 15 janvier 2025 1 454
28 oct. 2010 à 23:54
Bonsoir eriiic,
Merci pour cette super solution.
Amicales salutations.
Le Pingou
0
Le Pingou Messages postés 12230 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 15 janvier 2025 1 454
27 oct. 2010 à 17:45
Bonjour,
Pouvez-vous mettre une copie du code concerné?
0
renoncule62 Messages postés 83 Date d'inscription vendredi 25 janvier 2008 Statut Membre Dernière intervention 1 juillet 2012 2
27 oct. 2010 à 19:32
Merci de t'être arrété sur ma question Pingou, je te poste ça demain...

Salutations.
0
Le Pingou Messages postés 12230 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 15 janvier 2025 1 454
27 oct. 2010 à 21:29
Bonjour,
Très intéressante votre intervention, pouvez-vous aussi répondre à ceci : est-ce que le changement de couleur de la cellule est lié à la valeur de son contenu ?
Salutations.
Le Pingou
0
renoncule62 Messages postés 83 Date d'inscription vendredi 25 janvier 2008 Statut Membre Dernière intervention 1 juillet 2012 2
28 oct. 2010 à 12:08
Bonjour Pingou,
Désolé pour ma réponse succincte d'hier mais je n'étais pas près de mon poste.
Rien ne vaut une bonne illustration alors voici un lien vers un fichier exemple créé pour l'occasion. Non le changement de couleur n'est pas lié au contenu de la cellule mais doit être déclenché uniquement lorsque l'on coche la case correspondante, l'objectif et purement visuel, c'est tout.
il yaurait d'autres actions liées à la coche de la case comme un renvoie des données colonne D vers un autre tableau.
Mon problème est donc que je dois paramètrer chaque checbox par rapport à sa cellule et que dans mon fichier réel j'ai une quantité astronomique de checbox.
Je suis novice en macro et, peut-être n'ai-je pas choisi la meilleur methode....
merci

https://www.cjoint.com/?0kClVKgr5Fv
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Le Pingou Messages postés 12230 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 15 janvier 2025 1 454
28 oct. 2010 à 22:28
Bonjour,
Une solution via VBA : http://www.cijoint.fr/cjlink.php?file=cj201010/cijyuEJzoZ.xls
0
cousinhub29 Messages postés 990 Date d'inscription mardi 10 août 2010 Statut Membre Dernière intervention 16 janvier 2025 353
29 oct. 2010 à 05:19
Bonjour,

Une autre solution, en utilisant un module de classes...

Bonne journée

http://www.cijoint.fr/cjlink.php?file=cj201010/cijaPtwAxc.zip
0
renoncule62 Messages postés 83 Date d'inscription vendredi 25 janvier 2008 Statut Membre Dernière intervention 1 juillet 2012 2
30 oct. 2010 à 00:28
Bonsoir à tous,
Je met un peu de temps à répondre mais l' agenda est surchargé....
un grand merci à tous les 3 car mon "problème" est résolu grace à votre aide.
Vos solutions sont extra car, et c'était l'objectif, je n'aurais pas à paramètrer X Checkboxs.
Mais je ne m'arrete pas la et vais examiner vos codes pour comprendre le fonctionnement .
encore merci pour votre implication,
à+ je met le poste en résolu.
0
renoncule62 Messages postés 83 Date d'inscription vendredi 25 janvier 2008 Statut Membre Dernière intervention 1 juillet 2012 2
Modifié par renoncule62 le 25/11/2010 à 09:21
Bonjour,
je reviens vers notre discussion pour y apporter une précision (pour ceux qui auraient ce problème).
j'ai adopté la méthode de Eriic qui est vraiment top et offre de nombreuses possibilité pour amèliorer la navigation sous excel.
Toutefois, j'ai rencontré un problème en voulant mettre 2 Private Sub Worksheet_BeforeRightClick. En fait il n'est pas possible de mettre 2 fois la ligne et il faut les 2 instructions dans le même Private Sub Worksheet_BeforeRightClick
ci dessous mon code qui fonctionne dans la même feuille et pour les 2 instructions
si cela peut servir à quelqu'un...

et encore merci!

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("D8:I14,D20:I26,D34:I40,N8:S14,N20:S26,N34:S40,X8:AC14,X20:AC26,X34:AC40")) Is Nothing Then
Cancel = True
Select Case Target.Interior.ColorIndex
    Case xlNone
        Target.Interior.ColorIndex = 4
        Target = "X"
    Case 4
        Target.Interior.ColorIndex = 15
        Target = "0"
    Case 15
        Target.Interior.ColorIndex = 4
        Target = "X"
    End Select
End If

If Not Intersect(Target, Range("C8:C14,C20:C26,C34:C40,M8:M14,M20:M26,M34:M40,W8:W14,W20:W26,W34:W40")) Is Nothing Then
Cancel = True
statut.Show
End If
End Sub
0