Excellent! Merci Banzai64, c'était effectivement une erreur au niveau de la macro!
ca ressemble à ca maintenant:
Sub iap()
Dim Sh As Worksheet
Dim Lig As Long, Ligne As Long
Set Sh = Worksheets("Idées à présenter")
Sh.Range("A2:Z1000").Clear
For Each Sh In Sheets(Array("feuil1", "feuil2", "feuil3"))
With Sh
For Lig = 1 To .Range("B" & Rows.Count).End(xlUp).Row
If .Range("B" & Lig).Interior.ColorIndex = 40 Then
Ligne = Ligne + 1
.Rows(Lig).Copy Destination:=Sheets("Idées à présenter").Range("A2 : Z1000 ").Rows(Ligne)
End If
Next Lig
End With
Next Sh
Worksheets("Idées à présenter").Select
End Sub
Pour le rendre parfait j'ai voulu inserer a chaque fin de ligne, l'onglet d'où elle a était recopié. J'ai taper cette pari code, Mais malheureusement ca ne marche pas comme il faut!
Je mis ci joint le document excel pour visionner l'erreur! Merci bien
Worksheets("Idées à présenter").Range("C" & Rows.Count).End(xlUp).Offset(1, 0) = "\" & Sh.Name & "/" & vbTab
Sh.Cells(Lig, Ligne + 0) = Sh.Name