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