filtres et protection
Le
MANU

Bonjour,
J'ai fais une petite macro qui à pour but de filtrer les non vides dans un
tableau, le soucis est que la macro ne fonctionne pas si je protege ce
tableau et meme si dans les autorisations de protections j'autorise les
filtres. Avez vous une idée ?
Merci
Manu
J'ai fais une petite macro qui à pour but de filtrer les non vides dans un
tableau, le soucis est que la macro ne fonctionne pas si je protege ce
tableau et meme si dans les autorisations de protections j'autorise les
filtres. Avez vous une idée ?
Merci
Manu
| si je protege ce tableau
Est-ce que tu parles d'un tableau au sens du "nouvel objet" présent dans une feuille de calcul depuis Excel 2007 ou
d'une plage de cellules (objet Range).
Est-ce possible de voir la macro que tu utilises ?
MichD
--------------------------------------------
"MANU" a écrit dans le message de groupe de discussion : ivk5cp$tqh$
Bonjour,
J'ai fais une petite macro qui à pour but de filtrer les non vides dans un
tableau, le soucis est que la macro ne fonctionne pas si je protege ce
tableau et meme si dans les autorisations de protections j'autorise les
filtres. Avez vous une idée ?
Merci
Manu
Oui, l'idée première serait de voir ce qui irait ou non dans cette
macro.
Cordialement.
--
LSteph
On Jul 13, 3:08 pm, "MANU"
Macro tres simple :
Sub FILTRE()
Range("A3").Select
ActiveSheet.Range("$A$3:$Y$100").AutoFilter Field:=1, Criteria1:="<>"
End Sub
Vraiment rien de special, ca fonctionne tant que je ne protege rien., Sinon,
rien à faire.
Manu
"LSteph"
Bonjour,
Oui, l'idée première serait de voir ce qui irait ou non dans cette
macro.
Cordialement.
--
LSteph
On Jul 13, 3:08 pm, "MANU"
Essaie, la feuille n'étant pas protégée au départ :
Sub FILTRE()
Sheets("Feuil6").Protect , userinterfaceonly:=True
Range("A3").Select
ActiveSheet.Range("$A$3:$Y$100").AutoFilter Field:=1,
Criteria1:="<>"
End Sub
t'il pas possible de filtrer sans s'occuper si c'est proteger ou pas. En
faîte, je souhaiterais savoir si il est possible de filtrer (par macro) sans
ce preocupper si les cellules du tableau sont protegé ou pas ?
Encore merci
Manu
"DanielCo" ivktff$tce$
Au lieu de protéger la feuille manuellement, tu le fais une fois ppour
toutes par VBA :
Sub Protege()
Sheets("Feuil6").Protect , Password:="toto", userinterfaceonly:=True
End Sub
ou, si la feuille est déjà protégée manuellement :
Sub FILTRE()
Sheets("Feuil1").Protect Password:="toto", userinterfaceonly:=True
Range("A3").Select
ActiveSheet.Range("$A$3:$Y$100").AutoFilter Field:=1,
Criteria1:="<>"
Sheets("Feuil1").Protect Password:="toto", userinterfaceonly:úlse
End Sub
Daniel
Manu a écrit
A ) Il faut d'abord que les boutons du filtre soient affichés sur la feuille avant que la protection prenne place
B ) Utilise cette macro dans le ThisWorkbook de ton classeur
C ) Pendant le filtre, la feuille pourra demeurer "protégée" et toutes les macros pourront s'exécuter sur cette feuille
et tu n'auras pas besoin de te préoccuper du fait que la feuille est protégée. Évidemment, l'usager ne pourra apporter
des modifications manuellement.
D ) Lorsque l'on utilise le paramètre "UserInterfaceOnly", cela doit être répété à chaque ouverture du classeur pour que
ce dernier soit effectif.
'--------------------------------------------
Private Sub Workbook_Open()
With Worksheets("Feuil1")
.EnableAutoFilter = tue
.Protect "PassWord:=xxx", DrawingObjects:=True, _
Contents:=True, Scenarios:=True, UserInterfaceOnly:=True
End With
End Sub
'--------------------------------------------
MichD
--------------------------------------------
Merci encore à vous deux, c'est nickel, plus aucun soucis.
Bonne journée
Manu
"MichD" ivmdoh$qv$
..avant tout déprotège ce qui a pu etre protégé manuelement ou par
macro puis avec le parametre userinterfaceonly, tu peux mais attention ce
doit être
placé préférablement pour éviter que cela bug, dans le Workbook_open
--
LSteph
"DanielCo" news:ivm616$dpf$
Tu peux passer la ligne :
Sheets("Feuil6").Protect , Password:="toto", userinterfaceonly:=True
sur une feuille déjà protégée et :
Sheets("Feuil1").Protect Password:="toto", userinterfaceonly:úlse
pour remettre les lieux dans l'état où tu les as trouvés.
Daniel