Bonjour à tous,
Dans ma Feuille, j'ai une macro qui colore des lignes en fonction du texte inscrit dans la textbox1.
Dans mon Workbook, j'ai une macro qui efface les textbox à la fermeture du fichier.

Mon objectif est de pouvoir rechercher un nom dans un tableau et le visualiser facilement.
Je bloque sur ces 2 points :
=> Comment réinitialiser la mise en forme à la fermeture du fichier? actuellement, lorsque je ferme mon fichier les lignes restent colorées en vert. Et lorsque je rouvre le fichier, j'ai une erreur 1004.
=> Comment ajouter un filtre sur ma sélection? mon tableau comporte des centaines de lignes, je souhaite ne visualiser que les lignes contenant le texte recherché.

Merci par avance pour votre aide!

Le code de la feuille :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Option Compare Text
'RECHERCHER UNE LIGNE EN FONCTION DU NOM
Private Sub TextBox1_Change()
 
    Application.ScreenUpdating = False
    L = Sheets("zzz").Range("a65536").End(xlUp).Row + 1
 
    If TextBox1 = "" Then
        For Ligne = 10 To L
        Rows(Ligne).Interior.ColorIndex = 0 'fond transparent
        Next
    End If
 
    If TextBox1 <> "" Then
        For Ligne = 10 To L
            If Cells(Ligne, 4) Like "*" & TextBox1 & "*" Then
                Rows(Ligne).Interior.ColorIndex = 43 'fond vert
                Else: Rows(Ligne).Interior.ColorIndex = 0
            End If
        Next
    End If
 
End Sub
Le code du workbook :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
Private Sub Workbook_Open()
Sheets("zzz").TextBox1.Text = ""
Sheets("zzz").TextBox2.Text = ""
End Sub