Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim a, R As Range, i&, rc&, j&
a = Array("FDM", "Stéréo", "Polyjet") 'liste à adapter
If IsError(Application.Match(Sh.Name, a, 0)) Then Exit Sub
Application.ScreenUpdating = False
Sh.[A1].CurrentRegion.EntireRow.Delete 'RAZ
With Sheets("mot clés")
Set R = .Cells.Find(Sh.Name, , xlValues, xlWhole)
If R Is Nothing Then Exit Sub
i = R.End(xlDown).Row
If i = .Rows.Count Then Exit Sub
Set R = R(2).Resize(i - R.Row)
rc = R.Count
End With
Sheets("Listing").[A1].CurrentRegion.Copy Sh.[A1]
With Sh.[A1].CurrentRegion
For i = .Rows.Count To 2 Step -1
For j = 1 To rc
If Not .Rows(i).Find(R(j), , xlValues, xlPart) Is Nothing Then Exit For
Next j
If j > rc Then .Rows(i).EntireRow.Delete 'supprime la ligne si aucun mot clé n'a été trouvé
Next i
End With
With Sh.UsedRange: End With 'actualise les barres de défilement
End Sub