Repetition de saisie macro

Résolu
seagull62 -  
renoncule62 Messages postés 94 Statut Membre -
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

8 réponses

  1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    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
    1. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
       
      Bonsoir eriiic,
      Merci pour cette super solution.
      Amicales salutations.
      Le Pingou
      0
  2. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
     
    Bonjour,
    Pouvez-vous mettre une copie du code concerné?
    0
  3. renoncule62 Messages postés 94 Statut Membre 2
     
    Merci de t'être arrété sur ma question Pingou, je te poste ça demain...

    Salutations.
    0
    1. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
       
      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
  4. renoncule62 Messages postés 94 Statut Membre 2
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
     
    Bonjour,
    Une solution via VBA : http://www.cijoint.fr/cjlink.php?file=cj201010/cijyuEJzoZ.xls
    0
  7. cousinhub29 Messages postés 1113 Date d'inscription   Statut Membre Dernière intervention   383
     
    Bonjour,

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

    Bonne journée

    http://www.cijoint.fr/cjlink.php?file=cj201010/cijaPtwAxc.zip
    0
  8. renoncule62 Messages postés 94 Statut Membre 2
     
    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
  9. renoncule62 Messages postés 94 Statut Membre 2
     
    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