Bonjour
T'essayes d'effacer des objets qui ne sont pas dans l'usf en cours
Changes la procédure Private Sub CommandButton1_Click() dans le code de l'usf4 par celle-ci
Private Sub CommandButton1_Click()
' Rechercher
Dim Ws As Worksheet
Dim Plage As Range
Dim Cel As Range
Dim I As Byte
Dim J As Byte
For I = 1 To 8
UserForm1.Controls("ListView" & I).ListItems.Clear
Next I
For Each Ws In Sheets
With Ws
Set Plage = Union(.Range("B6:M6"), .Range("B9:M9"), .Range("B12:M12"), _
.Range("B15:M15"), .Range("B18:M18"), .Range("B21:M21"), _
.Range("B24:M24"), .Range("B27:M27"))
Set Cel = Plage.Find(What:=Me.TextBoxRecherche, LookIn:=xlValues, LookAt:=xlWhole)
If Not Cel Is Nothing Then
For I = 1 To 8
With UserForm1.Controls("ListView" & I)
.ListItems.Add , , Ws.Cells(6 + (I - 1) * 3, "B")
For J = 1 To .ColumnHeaders.Count - 1
.ListItems(.ListItems.Count).ListSubItems.Add , , Ws.Cells(6 + (I - 1) * 3, 2 + J)
Next J
End With
Next I
UserForm1.Show
Exit Sub
End If
End With
Next Ws
MsgBox "Pas trouvé"
End Sub