Copier/coller lignes avec cases à cocher

  • Initiateur de la discussion Initiateur de la discussion Aimedjie
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Aimedjie

XLDnaute Occasionnel
Bonjour,

J'ai créé une macro qui me permet de copier et coller un formalaire. Par contre, les cases à cocher ne se collent pas. Est-ce que quelqu'un pourrait me dire ce que je dois modifier dans ma macro pour que les cases à cocher aussi se collent dans le formulaire?

Merci.
 

Pièces jointes

Re : Copier/coller lignes avec cases à cocher

Bonjour Aimedje,

Tu rajoutes dans ton code:

Code:
    ActiveSheet.Shapes.Range(Array("CheckBox34", "CheckBox32", "CheckBox33")).Select
    Selection.Copy
    Range("F13").Select
    ActiveSheet.Paste

J'aurais plutôt utilisé des boutons radio au lieu des Checkbox pour choisir Homme Femme car tu peux les mettre dans le même group name et un seul sera sélectionné à la fois puisqu'on ne peut être en même temps Homme et femme (quoique...).

@+

Gael

Et bonsoir Cbea, je n'ai pas rafraichi.
 
Dernière édition:
Re : Copier/coller lignes avec cases à cocher

Re,

Ci-joint un essai en utilisant la barre d'outils formulaires avec un ecase à cocher et 2 boutons radio.

Les cases et boutons se copient automatiquement avec les lignes sans rien changer à la macro.

@+

Gael
 

Pièces jointes

Re : Copier/coller lignes avec cases à cocher

Merci beaucoup, c'est une excellente piste, mais comme je veux appliquer la macro sur plusieurs cases à cocher, je ne veux pas être obligé de toutes les nommées. De plus, les cases ne se collent pas exactement au même endroit.

Si je colle les lignes en mode création, tout fonctionne à merveille, mais je ne peux activer une macro via un bouton si je suis en mode création.

S'il y a un moyen, via une macro d'entrer en mode création et le désactiver par la suite, je pense que mon problème serait résolu.
 
Re : Copier/coller lignes avec cases à cocher

Merci Gael,

Dans ton exemple, les bouton radio demeure lié entre eux. Donc, si j'ai deux personnes, je peux avoir deux hommes ou deux femmes alors que dans ton exemple, je ne peux choisir qu'un homme ou une femme. De plus, j'utilise les cases à cocher (outils de contrôle) parce que les lignes sont appelées à être masquées à l'occasion et les cases à cocher de formulaire ne se masque pas.

Merci encore, je sens qu'on s'approche d'une solution...
 
Re : Copier/coller lignes avec cases à cocher

Re,

J'ai testé la solution de Cbea et vérifié mon code (qui est similaire) et je trouve que les collages sont bien alignés dans les 2 cas.

Pour l'exemple que je t'ai envoyé avec des boutons radio, tu peux bien sûr les remplacer par des cases à cocher, l'intérêt de cet exemple est d'utiliser les outils "formulaires" au lieu de "Contrôles" qui sont automatiquement pris en compte dans le copier-coller.

Pour moi, tu as 2 solutions valables.

Je te joins mon exemple modifié avec 3 cases à cocher.

@+

Gael
 

Pièces jointes

Re : Copier/coller lignes avec cases à cocher

Salut le fil,
Salut Aimedjie,

Il y'a eu des posts sur ce sujet déjà, je conseille plutôt d'utiliser un simple "X" après double clique

Ca évite un certains nombre de problèmes, tel que l'empilage des objet parfois 😉

De plus ça évite d'alourdir le fichier.

A+
 
Re : Copier/coller lignes avec cases à cocher

Bonsoir à tous


Des vrais/fausses cases à cocher 😉

A mettre dans le code d'une feuille

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Cells.Count > 1 Then Exit Sub
        If Not Intersect(Target, Range("A1:A10")) Is Nothing Then
            Target.Font.Name = "WingDings"
             Target.Font.Size = 18
                If Target = "o" Then
                    Target = "x"
                Else
                    Target = "o"
                End If
        End If
End Sub

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Range("A1:A10")) Is Nothing Then
            Cancel = True 'Prevent going into Edit Mode
            Target.Font.Name = "WingDings"
             Target.Font.Size = 18
                If Target = "o" Then
                    Target = "x"
                Else
                    Target = "o"
                End If
    End If
End Sub
adapté de:
source: ozgrid
excel-checkbox-tick-cell
 
Re : Copier/coller lignes avec cases à cocher

bonjour,

votre solution m'interressait beaucoup, mais quand je clique sur le bouton, il duplique bien les lignes mais pas les boutons. Alors que c'était le but.
est ce que vous pouvez m'aider?

merci beaucoup
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
358
Réponses
2
Affichages
168
Réponses
15
Affichages
469
Réponses
10
Affichages
411
Retour