déplacer ligne associée à checkbox coché

  • Initiateur de la discussion Initiateur de la discussion pnlop
  • 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 !

pnlop

XLDnaute Occasionnel
Bonjour le forum,
Dans mon projet, j'ai un code qui met automatiquement une checkbox en colonne E à côté des lignes ayant des valeurs.
Je souhaiterais maintenant mettre un code dans un bouton. lorsqu'on clique sur ce bouton, les lignes dont la checkbox est cochée sont déplacées dans une autre feuille, à la suite les unes des autres.

Donc dans un premier temps, je recherche toutes les checkbox ayant la valeur TRUE dans ma feuille...

Code:
Private Sub CommandButton1_Click()

Dim i, label, default_value
i = 2
For i = 2 To ActiveSheet.OLEObjects.Count
If ActiveSheet.OLEObjects(i).Object.Value = True Then

'déplace la ligne (colonne A à G) associée au checkbox coché dans une autre feuille à la suite (même formatage)

End If
Next
End Sub

Je précise que j'ai piqué ce code en cherchant un peu...
Mais suis bien incapable de trouver la suite...
Une piste à me donner?
Merci!
 
Re : déplacer ligne associée à checkbox coché

Bonjour le forum,
Voici le code que j'ai trouvé... qui évidemment ne fonctionne pas du premier coup!
Ca bloque déjà au niveau
Code:
c = Columns
- "Erreur '7' Mémoire insuffisante!

Voici mon code:
Code:
Private Sub CommandButton1_Click()
'Msgbox Ok + Annuler
Select Case MsgBox("Confirmation de commande reçue", vbOKCancel, "Mise à jour")
    Case vbOK
        'procédure si click sur Ok
    Case vbCancel
        'procédure si click sur Annuler
End Select

Dim i, label, default_value
 i = 3
 For i = 3 To ActiveSheet.OLEObjects.Count
 If ActiveSheet.OLEObjects(i).Object.Value = True Then
 
  Dim l As Integer
  Dim c As Byte
    l = ligne
    c = Columns
    Columns = Worksheets("commande en cours").Range(Columns(1), Columns(7))
    ligne = Worksheets("commande en cours").Range(2)
 
 Worksheets("commande en cours").Range(l, c).Cut
 Worksheets("commandes à recevoir").Range("A65536").End(xlUp).PasteSpecial
 
'déplace la ligne (colonne A à G) associée au checkbox coché dans une autre feuille à la suite (même formatage)
 
End If
Next
 

End Sub

Quelqu'un pourrait m'aider?? MERCI!
 
Re : déplacer ligne associée à checkbox coché

Bon, j'ai essayé autrement...

Code:
Private Sub CommandButton1_Click()
'Msgbox Ok + Annuler
Select Case MsgBox("Confirmation de commande reçue", vbOKCancel, "Mise à jour")
    Case vbOK
        'procédure si click sur Ok
    Case vbCancel
        'procédure si click sur Annuler
End Select

Dim i, label, default_value
 i = 3
 For i = 3 To ActiveSheet.OLEObjects.Count
 
    If ActiveSheet.OLEObjects(i).Object.Value = True Then
 
        Worksheets("commande en cours").Range("A3:G3").Cut
        Worksheets("commandes à recevoir").Range("A65536:G65536").End(xlUp).PasteSpecial

    End If
'déplace la ligne (colonne A à G) associée au checkbox coché dans une autre feuille à la suite (même formatage)
 
Next


End Sub

Ca me semble plus simple (bien que je ne suis pas sûre qu'il va comprendre la boucle...) mais ça ne fonctionne pas au niveau du collage... en fait... "La méthode Pastespécial de la classe Range a échoué"

😕😕😕
Il n'y a vraiment personne pour m'éclairer? ou est ce complétement faux ou impossible??
 
Dernière édition:
- 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
3
Affichages
583
Réponses
7
Affichages
798
Retour