ce groupe m'a permis de d=E9couvrir le code suivant donn=E9 par AV
que je remercie
Je suis sous excel 2003 - Toutes les feuilles du classeur ont un
filtre automatique sauf deux
For Each sh2 In ActiveWorkbook.Sheets
Select Case sh2.Name
Case Is <> "R=E9cap_IDE"
''''' FITRE UF 7417
sh2.[a12:Am1000].AutoFilter Field:=3D3, Criteria1:=3D"=3D" &
Sheets("PARAM").Cells(3, 1).Value
End Select
Next
D=E9s l'instant, o=F9 ces feuilles sont prot=E9g=E9es , les filtres
automatiques ne fonctionnent plus
Le code suivant, si j'ai bien compris permet de passer outre cette
protection
mais comment adapter ce code a toutes les feuilles sauf deux
merci pour vos r=E9ponses
Private Sub Workbook_Open()
> With Sheets("Feuil1")
> .EnableAutoFilter =3D True
> .Protect Contents:=3DTrue, UserInterfaceOnly:=3DTrue
> End With
> End Sub
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
FdeCourt
Salut,
Avec ce bout de code ? :
Private Sub Workbook_Open() For Each sh In ThisWorkbook.Sheets Debug.Print sh.Name If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then With sh .EnableAutoFilter = True .Protect Contents:=True, UserInterfaceOnly:=True End With End If Next End Sub
Cordialement,
F.
Salut,
Avec ce bout de code ? :
Private Sub Workbook_Open()
For Each sh In ThisWorkbook.Sheets
Debug.Print sh.Name
If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then
With sh
.EnableAutoFilter = True
.Protect Contents:=True, UserInterfaceOnly:=True
End With
End If
Next
End Sub
Private Sub Workbook_Open() For Each sh In ThisWorkbook.Sheets Debug.Print sh.Name If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then With sh .EnableAutoFilter = True .Protect Contents:=True, UserInterfaceOnly:=True End With End If Next End Sub
Cordialement,
F.
Eric549
On 30 mar, 13:31, FdeCourt wrote:
Salut,
Avec ce bout de code ? :
Private Sub Workbook_Open() For Each sh In ThisWorkbook.Sheets Debug.Print sh.Name If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then With sh .EnableAutoFilter = True .Protect Contents:=True, UserInterfa ceOnly:=True End With End If Next End Sub
Cordialement,
F.
merci pour ta réponse
Hélas,
J'ai le message suivant :
Vous ne pouvez pas exécuter cette commande sur un protégée. Pour utiliser cette commande, vous devez ôter la protection de cette feuille.
Merci pour vos réponse Eric
On 30 mar, 13:31, FdeCourt <fdeco...@gmail.com> wrote:
Salut,
Avec ce bout de code ? :
Private Sub Workbook_Open()
For Each sh In ThisWorkbook.Sheets
Debug.Print sh.Name
If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then
With sh
.EnableAutoFilter = True
.Protect Contents:=True, UserInterfa ceOnly:=True
End With
End If
Next
End Sub
Cordialement,
F.
merci pour ta réponse
Hélas,
J'ai le message suivant :
Vous ne pouvez pas exécuter cette commande sur un protégée.
Pour utiliser cette commande, vous devez ôter la protection de cette
feuille.
Private Sub Workbook_Open() For Each sh In ThisWorkbook.Sheets Debug.Print sh.Name If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then With sh .EnableAutoFilter = True .Protect Contents:=True, UserInterfa ceOnly:=True End With End If Next End Sub
Cordialement,
F.
merci pour ta réponse
Hélas,
J'ai le message suivant :
Vous ne pouvez pas exécuter cette commande sur un protégée. Pour utiliser cette commande, vous devez ôter la protection de cette feuille.
Merci pour vos réponse Eric
FdeCourt
Ok, alors supprimons la protection de la feuille, puis remettons la : Private Sub Workbook_Open() For Each sh In ThisWorkbook.Sheets Debug.Print sh.Name If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then With sh .Unprotect .EnableAutoFilter = True .Protect Contents:=True, UserInterfaceOnly:=True End With End If Next End Sub
Lance le une première fois, puis ensuite enlève le .Unprotect.
Cordialement,
F.
Ok, alors supprimons la protection de la feuille, puis remettons la :
Private Sub Workbook_Open()
For Each sh In ThisWorkbook.Sheets
Debug.Print sh.Name
If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then
With sh
.Unprotect
.EnableAutoFilter = True
.Protect Contents:=True, UserInterfaceOnly:=True
End With
End If
Next
End Sub
Lance le une première fois, puis ensuite enlève le .Unprotect.
Ok, alors supprimons la protection de la feuille, puis remettons la : Private Sub Workbook_Open() For Each sh In ThisWorkbook.Sheets Debug.Print sh.Name If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then With sh .Unprotect .EnableAutoFilter = True .Protect Contents:=True, UserInterfaceOnly:=True End With End If Next End Sub
Lance le une première fois, puis ensuite enlève le .Unprotect.
Cordialement,
F.
Eric549
On 30 mar, 15:04, FdeCourt wrote:
Ok, alors supprimons la protection de la feuille, puis remettons la : Private Sub Workbook_Open() For Each sh In ThisWorkbook.Sheets Debug.Print sh.Name If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then With sh .Unprotect .EnableAutoFilter = True .Protect Contents:=True, UserInterfa ceOnly:=True End With End If Next End Sub
Lance le une première fois, puis ensuite enlève le .Unprotect.
Cordialement,
F.
merci pour cette solution, mais j'ai toujours le même message d'erreur pourtant , j'ai suivi cette démarche à la lettre
On 30 mar, 15:04, FdeCourt <fdeco...@gmail.com> wrote:
Ok, alors supprimons la protection de la feuille, puis remettons la :
Private Sub Workbook_Open()
For Each sh In ThisWorkbook.Sheets
Debug.Print sh.Name
If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then
With sh
.Unprotect
.EnableAutoFilter = True
.Protect Contents:=True, UserInterfa ceOnly:=True
End With
End If
Next
End Sub
Lance le une première fois, puis ensuite enlève le .Unprotect.
Cordialement,
F.
merci pour cette solution, mais j'ai toujours le même message d'erreur
pourtant , j'ai suivi cette démarche à la lettre
Ok, alors supprimons la protection de la feuille, puis remettons la : Private Sub Workbook_Open() For Each sh In ThisWorkbook.Sheets Debug.Print sh.Name If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then With sh .Unprotect .EnableAutoFilter = True .Protect Contents:=True, UserInterfa ceOnly:=True End With End If Next End Sub
Lance le une première fois, puis ensuite enlève le .Unprotect.
Cordialement,
F.
merci pour cette solution, mais j'ai toujours le même message d'erreur pourtant , j'ai suivi cette démarche à la lettre
michdenis
Bonjour,
Pour déprotéger tes feuilles, si tu utilises un mot de passe, tu dois l'inclure dans la procédure. En fait, remplace à 2 endroits "MotDePasse" par le tien. J'espère que tu utilises le même mot de passe pour chacune des feuilles...sinon ce type de procédure devra être adaptée.
'------------------------------------------ Private Sub Workbook_Open() For Each sh In ThisWorkbook.Sheets If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then With sh .Unprotect "MotDePasse" '<<===indique ton mot de passe si requis .EnableAutoFilter = True .Protect "MotDePasse", Contents:=True, UserInterfaceOnly:=True End With End If Next End Sub '------------------------------------------
Bonjour,
Pour déprotéger tes feuilles, si tu utilises un mot de passe,
tu dois l'inclure dans la procédure. En fait, remplace à
2 endroits "MotDePasse" par le tien.
J'espère que tu utilises le même mot de passe pour
chacune des feuilles...sinon ce type de procédure devra
être adaptée.
'------------------------------------------
Private Sub Workbook_Open()
For Each sh In ThisWorkbook.Sheets
If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then
With sh
.Unprotect "MotDePasse" '<<===indique ton mot de passe si requis
.EnableAutoFilter = True
.Protect "MotDePasse", Contents:=True, UserInterfaceOnly:=True
End With
End If
Next
End Sub
'------------------------------------------
Pour déprotéger tes feuilles, si tu utilises un mot de passe, tu dois l'inclure dans la procédure. En fait, remplace à 2 endroits "MotDePasse" par le tien. J'espère que tu utilises le même mot de passe pour chacune des feuilles...sinon ce type de procédure devra être adaptée.
'------------------------------------------ Private Sub Workbook_Open() For Each sh In ThisWorkbook.Sheets If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then With sh .Unprotect "MotDePasse" '<<===indique ton mot de passe si requis .EnableAutoFilter = True .Protect "MotDePasse", Contents:=True, UserInterfaceOnly:=True End With End If Next End Sub '------------------------------------------
Pour d prot ger tes feuilles, si tu utilises un mot de passe, tu dois l'inclure dans la proc dure. En fait, remplace 2 endroits "MotDePasse" par le tien. J'esp re que tu utilises le m me mot de passe pour chacune des feuilles...sinon ce type de proc dure devra tre adapt e.
'------------------------------------------ Private Sub Workbook_Open() For Each sh In ThisWorkbook.Sheets If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then With sh .Unprotect "MotDePasse" '<<= ==indique ton mot de passe si requis .EnableAutoFilter = True .Protect "MotDePasse", Contents:=Tru e, UserInterfaceOnly:=True End With End If Next End Sub '------------------------------------------
Ok merci pour ce comlément d'information Tu m'as bien aidé merci encore Bonne journée à tous
On 30 mar, 16:15, "michdenis" <michde...@hotmail.com> wrote:
Bonjour,
Pour d prot ger tes feuilles, si tu utilises un mot de passe,
tu dois l'inclure dans la proc dure. En fait, remplace
2 endroits "MotDePasse" par le tien.
J'esp re que tu utilises le m me mot de passe pour
chacune des feuilles...sinon ce type de proc dure devra
tre adapt e.
'------------------------------------------
Private Sub Workbook_Open()
For Each sh In ThisWorkbook.Sheets
If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then
With sh
.Unprotect "MotDePasse" '<<= ==indique ton mot de passe si requis
.EnableAutoFilter = True
.Protect "MotDePasse", Contents:=Tru e, UserInterfaceOnly:=True
End With
End If
Next
End Sub
'------------------------------------------
Ok merci pour ce comlément d'information
Tu m'as bien aidé
merci encore
Bonne journée à tous
Pour d prot ger tes feuilles, si tu utilises un mot de passe, tu dois l'inclure dans la proc dure. En fait, remplace 2 endroits "MotDePasse" par le tien. J'esp re que tu utilises le m me mot de passe pour chacune des feuilles...sinon ce type de proc dure devra tre adapt e.
'------------------------------------------ Private Sub Workbook_Open() For Each sh In ThisWorkbook.Sheets If sh.Name <> "Feuil1" And sh.Name <> "Feuil2" Then With sh .Unprotect "MotDePasse" '<<= ==indique ton mot de passe si requis .EnableAutoFilter = True .Protect "MotDePasse", Contents:=Tru e, UserInterfaceOnly:=True End With End If Next End Sub '------------------------------------------
Ok merci pour ce comlément d'information Tu m'as bien aidé merci encore Bonne journée à tous