Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Tableau excel et protection de feuille

8 réponses
Avatar
laurentbosc
Bonjour,

il y a un comportement bizarre dans excel 2010, avec les tableaux.

je cr=E9e un ensemble de ligne colonne que je transforme en tableau.
Si je vais a la ligne juste apr=E8s la derni=E8re ligne du tableau et que j=
e saisi une valeur, le tableau se redimensionne automatiquement en rajoutan=
t une ligne. Parfait.

Si je veux faire la m=EAme chose alors que j'ai prot=E9g=E9 ma feuille (en =
prenant soin d'autoriser le maximum de chose (par VBA (qui donne acc=E8s =
=E0 quelques options suppl=E9mentaires) ou via le menu)), le tableau n'est =
plus r=E9actif. Impossible de rajouter une ligne en fin de de tableau via l=
a m=EAme manip. Impossible non plus de rajouter ou supprimer une ligne du t=
ableau via le clic droit / Inserer. Les actions sont gris=E9es. Pourtant je=
peux rajouter ou supprimer une ligne dans la feuille !

y aurait il un moyen de sp=E9cifier que l'on veut pouvoir ajouter / supprim=
er des lignes =E0 un tableau, lors de la protection ? M=EAme via VBA, je n'=
ai pas trouv=E9 l'option de la fonction Protect qui permettrait de faire ce=
la.

Merci de votre aide...

8 réponses

Avatar
MichD
Bonjour,

Dans la feuille module de la feuille en question, j'ai utilisé
ce code :

'----------------------------
Sub test()

Débute par protéger la feuille, mais permet aux macros d'intervenir
'dans la même feuille avec l'item : UserinterfaceOnly:=True

Me.Protect DrawingObjects:=True, contents:=True, Scenarios:=True,
UserinterfaceOnly:=True

'Insère une nouvelle valeur à la fin du tableau
'si tu vas dans la feuille et que tu enlèves la protection, dans la
'liste déroulante du filtre, tu verras que la nouvelle valeur y est.
Range("A7") = 10

'Supprime une ligne du tableau sans aucun problème!
Range("A3").EntireRow.Delete
End Sub
'----------------------------

Si tu veux manipuler une feuille protégée, utilise la manière
que j'ai utilisée...

Habituellement, on utilise ceci dans le Thisworkbook
puisque ce paramètre est valide que pour le temps que
le classeur est valide : UserinterfaceOnly:=True

'--------------------------------------
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In Worksheets
Sh.EnableAutoFilter = True
Sh.EnableOutlining = True
'.../...
Sh.Protect DrawingObjects:=True, contents:=True, _
Scenarios:=True, UserinterfaceOnly:=True
Next

End Sub
'--------------------------------------



MichD
---------------------------------------------------------------
a écrit dans le message de groupe de discussion :


Bonjour,

il y a un comportement bizarre dans excel 2010, avec les tableaux.

je crée un ensemble de ligne colonne que je transforme en tableau.
Si je vais a la ligne juste après la dernière ligne du tableau et que je
saisi une valeur, le tableau se redimensionne automatiquement en rajoutant
une ligne. Parfait.

Si je veux faire la même chose alors que j'ai protégé ma feuille (en prenant
soin d'autoriser le maximum de chose (par VBA (qui donne accès à quelques
options supplémentaires) ou via le menu)), le tableau n'est plus réactif.
Impossible de rajouter une ligne en fin de de tableau via la même manip.
Impossible non plus de rajouter ou supprimer une ligne du tableau via le
clic droit / Inserer. Les actions sont grisées. Pourtant je peux rajouter ou
supprimer une ligne dans la feuille !

y aurait il un moyen de spécifier que l'on veut pouvoir ajouter / supprimer
des lignes à un tableau, lors de la protection ? Même via VBA, je n'ai pas
trouvé l'option de la fonction Protect qui permettrait de faire cela.

Merci de votre aide...
Avatar
laurentbosc
Je connais bien aussi ce que tu indiques, mais merci quand même ;)

Je voulais juste comprendre pourquoi on était capable d insérer simplem ent une ligne dans la feuille protégée mais pas une ligne dans un table au de la feuille protégée. Je trouve cela incohérentes et pensais qu il y avait une solution d activer / désactiver cela par un parametrage, m ais visiblement non. Après en vba je sais comment faire effectivement ;)
Avatar
MichD
Si tu veux taper directement une nouvelle ligne de donnée
à un tableau sur une feuille protégée, moi, quand la feuille
est protégée, je ne peux pas ajouter des lignes de données
manuellement que ce soit dans une plage de cellules ou dans
un tableau. Si ce n'était pas le cas, à quoi servirait la protection?

Il y a quelque chose que je n'ai pas compris dans la formulation
de ta question!


MichD
---------------------------------------------------------------
Avatar
laurentbosc
Dans menu Accueil/format/Proteger la feuille, on peut choisir des options.
On peut notamment permettre l insertion de lignes dans la feuille. Donc on peut affiner la protection. Je peux tout a fait protéger ma feuille et pe rmettre l'insertion de ligne dans la feuille (mais empêcher le tri et la suppression de ligne par exemple).

Je trouve dommage (voire incompréhensible) qu'aucun paramètre équival ent (via l'interface ou via VBA) ne soit disponible pour les tableaux, afin de pouvoir inserer des lignes dans un tableau même si la feuille est pro tégée.




Le jeudi 10 octobre 2013 12:35:35 UTC+2, MichD a écrit :
Si tu veux taper directement une nouvelle ligne de donnée

à un tableau sur une feuille protégée, moi, quand la feuille

est protégée, je ne peux pas ajouter des lignes de données

manuellement que ce soit dans une plage de cellules ou dans

un tableau. Si ce n'était pas le cas, à quoi servirait la protection?



Il y a quelque chose que je n'ai pas compris dans la formulation

de ta question!





MichD

---------------------------------------------------------------
Avatar
Jacky
Bonsoir,
Je trouve dommage (voire incompréhensible) qu'aucun paramètre
équivalent (via l'interface ou via VBA) ne soit disponible pour les tableaux,
afin de pouvoir inserer des lignes dans un tableau même si la feuille est protégée.



Et comment définir la position du tableau dans Xn cellules ?
Avec un peu de code vba, c'est faisable.

--
Salutations
JJ


a écrit dans le message de news:

Dans menu Accueil/format/Proteger la feuille, on peut choisir des options.
On peut notamment permettre l insertion de lignes dans la feuille. Donc on peut affiner la protection. Je peux
tout a fait protéger ma feuille et permettre l'insertion de ligne dans la feuille (mais empêcher le tri et la
suppression de ligne par exemple).

Je trouve dommage (voire incompréhensible) qu'aucun paramètre équivalent (via l'interface ou via VBA) ne soit
disponible pour les tableaux, afin de pouvoir inserer des lignes dans un tableau même si la feuille est
protégée.




Le jeudi 10 octobre 2013 12:35:35 UTC+2, MichD a écrit :
Si tu veux taper directement une nouvelle ligne de donnée

à un tableau sur une feuille protégée, moi, quand la feuille

est protégée, je ne peux pas ajouter des lignes de données

manuellement que ce soit dans une plage de cellules ou dans

un tableau. Si ce n'était pas le cas, à quoi servirait la protection?



Il y a quelque chose que je n'ai pas compris dans la formulation

de ta question!





MichD

---------------------------------------------------------------
Avatar
laurentbosc
La je ne comprends pas le propos.
Si une plage de cellule est transformée en tableau, automatiquement quand on est dans une cellule excel sait si on est dans un tableau ou non. En fa isant clic droit / insérer , on peut insérer une ligne dans le tableau. Quand la feuille est protégée, impossible d ajouter une ligne, dans ce tableau ( alors que je peux insérer une ligne dans la feuille...)

Sur le site de Microsoft j ai trouve des personnes qui se plaignent de cela aussi :
http://answers.microsoft.com/en-us/office/forum/office_2010-excel/how-to-pr otect-an-excel-2010-table-allow-to-add/ee40ee81-8419-449c-b2c0-80e4f60b2e5d
Avatar
Jacky
Re....
Certes, mais cela ne fait que relater quelque chose qu'excel ne sait pas faire nativement.
Or le but que l'on se fixe ici, est de réaliser la chose afin d'obtenir ce que l'on souhaite avec les moyens
que l'on dispose.

Quand la feuille est protégée, impossible d ajouter une ligne, dans ce tableau ( alors que je peux insérer
une ligne dans la feuille...)


Un petit exemple simple pour insérer une ligne dans un tableau
http://cjoint.com/?CJkx1fHIAeT

--
Salutations
JJ


a écrit dans le message de news:

La je ne comprends pas le propos.
Si une plage de cellule est transformée en tableau, automatiquement quand on est dans une cellule excel sait
si on est dans un tableau ou non. En faisant clic droit / insérer , on peut insérer une ligne dans le tableau.
Quand la feuille est protégée, impossible d ajouter une ligne, dans ce tableau ( alors que je peux insérer une
ligne dans la feuille...)

Sur le site de Microsoft j ai trouve des personnes qui se plaignent de cela aussi :
http://answers.microsoft.com/en-us/office/forum/office_2010-excel/how-to-protect-an-excel-2010-table-allow-to-add/ee40ee81-8419-449c-b2c0-80e4f60b2e5d
Avatar
laurentbosc