XL 2016 VBA erreur texte de commande copier/coller

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 !

Sabrhm

XLDnaute Junior
Bonjour,

J'ai un petit problème avec ma macro, je n'arrive pas à comprendre pourquoi. Il y a une erreur à cette ligne : Worksheets("Articles_à_contrôler").Range(Cells(Lig, 1), Cells(Ligne, 12)).Copy

Je souhaite avec cette commande copier la ligne de la colonne 1 à 12.

Pouvez-vous m'aider? Merci

Sub mettre_à_jour()

Dim Lig&, DerL&
DerL = Worksheets("Historique_contrôle").Range("A" & Rows.Count).End(3).Row
For Lig = 2 To 100
If Worksheets("Articles_à_contrôler").Cells(Lig, 3) = "OK" Then
Worksheets("Articles_à_contrôler").Range(Cells(Lig, 1), Cells(Ligne, 12)).Copy
Worksheets("Historique_contrôle").Range("A" & DerL + 1).PasteSpecial (xlPasteValues)
DerL = DerL + 1
End If
Next
 
Euh...
c'est sympa.. ce serait encore mieux de poster le fichier AVEC les macros... et ne pas mettre un fichier exemple qui plante dès la première ligne de code....

1) Vérifier les noms des onglets:
Dans code: Historique contrôle
Dans fichier: "Historisque_contrôle"

2) sinon, pour le bug qui te genait... lig -- Ligne....

VB:
Sub mettre_à_jour()

Dim Lig&, DerL&
DerL = Worksheets("Historique contrôle").Range("A" & Rows.Count).End(3).Row
For Lig = 2 To 100
    If Worksheets("Articles_à_contrôler").Cells(Lig, 3) = "OK" Then
        Worksheets("Articles_à_contrôler").Range(Cells(Lig, 1), Cells(Lig, 12)).Copy
        Worksheets("Historique contrôle").Range("A" & DerL + 1).PasteSpecial (xlPasteValues)
        DerL = DerL + 1
    End If
Next
End Sub
 
Euh...
c'est sympa.. ce serait encore mieux de poster le fichier AVEC les macros... et ne pas mettre un fichier exemple qui plante dès la première ligne de code....

1) Vérifier les noms des onglets:
Dans code: Historique contrôle
Dans fichier: "Historisque_contrôle"

2) sinon, pour le bug qui te genait... lig -- Ligne....

VB:
Sub mettre_à_jour()

Dim Lig&, DerL&
DerL = Worksheets("Historique contrôle").Range("A" & Rows.Count).End(3).Row
For Lig = 2 To 100
    If Worksheets("Articles_à_contrôler").Cells(Lig, 3) = "OK" Then
        Worksheets("Articles_à_contrôler").Range(Cells(Lig, 1), Cells(Lig, 12)).Copy
        Worksheets("Historique contrôle").Range("A" & DerL + 1).PasteSpecial (xlPasteValues)
        DerL = DerL + 1
    End If
Next
End Sub
Mon fichier source contient des données confidentielles d'où l'exemple. J'ai rajouté la macro dans le fichier en PJ. J'ai oublié de rajouter le "_" dans l'exemple.
Merci
 

Pièces jointes

- 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
4
Affichages
362
Réponses
2
Affichages
238
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
79
Réponses
2
Affichages
300
Réponses
2
Affichages
375
Retour