Re!
J'espère que tu as passé une bonne journée!
Puisque nous avons des soucis pour nous rencontrer, je vais essayer de t'indiquer là où cela bloque.
Je lance la macro, puis je clique sur debogage.
A ce moment l'instruction à partir de range ("base") jusque 11)) est surlignée en jaune.
Le résultat est l'affichage en ligne 2 de ma ligne de titre avec FAUX en M2 + une flêche jaune en face de la ligne qui commence par "M1:M2"), CopyToRange..
J'ai contrôlé les titres dans les 3 onglets, ils sont identiques.
J'ai renommé l'onglet en Compil, comme tu l'as fait au début.
Voilà, j'espère que je te t'ennuie pas trop avec mes pb.
Demain, je suis au boulot à 7 h. Si tu me fais passer des messages ce soir, je les verrai à la première heure.
Bonne soirée et...merci!
Fabienne
Sub extract()
Dim DerLig As Long, Prem As Long
Application.ScreenUpdating = False
Range("A2:K65000").Delete Shift:=xlUp
For Each sh In Sheets
If Left(sh.Name, 7) = "Extract" Then
With sh
DerLig = .[A65000].End(xlUp).Row
.Range("A1:AD" & DerLig).Name = "base"
Prem = [A65000].End(xlUp).Row + 1
Range("A1:K1").Copy Cells(Prem, 1)
[M2].FormulaR1C1 = _
"=OR('" & .Name & "'!RC[-10]=""FM - Back Office Infratructure"",'" & .Name & "'!RC[-10]=""FM - Back Office Application"",'" & .Name & "'!RC[-10]=""FM - Pôle service"",'" & .Name & "'!RC[-10]=""FM - Service Desk"")"
.Range("base").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"M1:M2"), CopyToRange:=Range(Cells(Prem, 1), Cells(Prem, 11))
Range(Cells(Prem, 1), Cells(Prem, 11)).Delete Shift:=xlUp
End With
End If
Next sh
[M2].ClearContents
Range("A1:K" & [A65000].End(xlUp).Row).Name = "base2"
ActiveWorkbook.RefreshAll
End Sub