bonjour
j'ai un fichier ci-dessous test.xls .j'ai crée un macro copier qui permet de copier la zone selectionnée de l'onglet stats_sales_imp vers l'onglet feuil1.
mais avant de coller , j'aimerais insérer dans feuil1 le nombre de ligne de la zone selectionnée de l'onglet stats_sales_imp.
j'ai essayé plusieurs méthodes aucun ne marche .
ca bloque toujours sur l'erreur ActiveSheet.Paste.
je ne comprends rien du tout .Ca fait 3h que je suis dessus.Si vous avez une idée .merci vraiment d'avance
voici le code et le fichier test.xls
j'ai un fichier ci-dessous test.xls .j'ai crée un macro copier qui permet de copier la zone selectionnée de l'onglet stats_sales_imp vers l'onglet feuil1.
mais avant de coller , j'aimerais insérer dans feuil1 le nombre de ligne de la zone selectionnée de l'onglet stats_sales_imp.
j'ai essayé plusieurs méthodes aucun ne marche .
ca bloque toujours sur l'erreur ActiveSheet.Paste.
je ne comprends rien du tout .Ca fait 3h que je suis dessus.Si vous avez une idée .merci vraiment d'avance
voici le code et le fichier test.xls
Sub copie()
Set result_ligne = ActiveSheet.UsedRange.Rows(1).Find(What:="qty cmd ok")
Set plage = Range(result_ligne.Offset(1, 0), result_ligne.Offset(ActiveSheet.UsedRange.Rows.Count, 0).End(xlUp))
Set col = ActiveSheet.Range(result_ligne.Address)
Set col_1 = ActiveSheet.Range(result_ligne.Offset(0, -8).Address)
Set col_2 = ActiveSheet.Range(result_ligne.Offset(0, -11).Address)
Set col1 = ActiveSheet.Range(result_ligne.Offset(0, 6).Address)
For Each cellule In plage
If cellule > 0 Then
Set col = Application.Union(col, cellule)
Set col_1 = Application.Union(col_1, cellule.Offset(0, -8))
Set col_2 = Application.Union(col_2, cellule.Offset(0, -11))
Set col1 = Application.Union(col1, cellule.Offset(0, 6))
End If
Next cellule
Set zonecol = Application.Union(col, col_1, col_2, col1)
zonecol.Select
zonecol.Copy
Sheets("Feuil1").Activate
Sheets("Feuil1").Select
nblignes = zonecol.Count
nblignes = nblignes
'MsgBox nblignes
Range("A1").Resize(nblignes, 1).EntireRow.Insert
Rows("10:10").Insert Shift:=xlDown
Range("A1").Select
ActiveSheet.Paste
End Sub