Je sais que la question est récurrente, mais je cherche à interdire l'ajout et la suppression de lignes et de colonnes sur une feuille. Pour ce faire, je suis passé par "Protéger la feuille", puis j'ai tout coché, excepté "Insérer des colonnes", "Insérer des lignes", "Supprimer les colonnes" et "Supprimer les lignes".
Problème : cela fonctionne, il est bien impossible d'effectuer ces opérations sur la feuille concernée, mais il se trouve qu'il est également impossible de modifier le contenu des cellules. Peut-on rétablir cela ?
Re : Interdire l'insertion/suppression de lignes/colonnes
Bonsoir à tous, bonsoir m@tix
Pour pouvoir modifier le contenu des cellules, il faut au préalable sélectionner la feuille, aller dans le menu format de cellules>protection et décocher "verrouillée" puis dans protection de la feuille, ne selectionner que les 2 premieres cases
A+
Re : Interdire l'insertion/suppression de lignes/colonnes
Bonjour M@tix,
Pour ce faire, je suis passé par "Protéger la feuille", puis j'ai tout coché, excepté "Insérer des colonnes", "Insérer des lignes", "Supprimer les colonnes" et "Supprimer les lignes".
mais:
avant de protéger la feuille, il fallait sélectionner l'ensemble des cellules
ensuite "Format de cellules", onglet "Protection" et décocher "Verrouillées"
Re : Interdire l'insertion/suppression de lignes/colonnes
Merci à tous pour vos réponses !
La méthode de karakoman1 et de phlaurent55 fonctionne parfaitement.
En revanche, j'ai tout de même voulu essayer la méthode de Victor21, mais là, ça ne passe pas..
Dans ThisWorkbook, j'ai placé le code suivant :
Code:
Private Sub Workbook_Open()
Sheets("Feuil1").Protect contents:=False, AllowDeletingColumns:=False, AllowDeletingRows:=False
End Sub
A première vue, "Contents" n'est pas reconnu (la majuscule au "c" ne s'est pas mise d'elle-même comme pour les autres arguments). Pourtant, en consultant l'aide VBA, "Contents" est bien l'un des paramètres de Protect.. Voyez-vous où est le problème ?
Re : Interdire l'insertion/suppression de lignes/colonnes
Bonsoir,
Perso j'ai fais ainsi et cela fonctionne :
-> sélectionner toutes les cellules
-> "format"/"cellules"/ onglet "protection"
-> j'ai décoché "Vérouillé"
J'ai inséré la macro suivante :
Sub Test()
Sheets("Feuil1").Protect Contents:=True, AllowInsertingColumns:=False, AllowInsertingRows:=False, _
AllowDeletingColumns:=False, AllowDeletingRows:=False
End Sub
Lorsque je lance la macro j'obtiens aucun bug et cela fonctionne! On peut modifier toutes les cellules, mais on ne peut ni ajouter, ni supprimer une colonne/ligne.
Re : Interdire l'insertion/suppression de lignes/colonnes
Salut tout le monde,
Au cas où, j'ai essayé comme vous, sous la forme : déclenchement de la macro à l'ouverture.
-> je me suis placé sur ThisWorkbook
-> j'ai copié le code suivant :
Private Sub Workbook_Open()
Sheets("Feuil1").Protect Contents:=True, AllowInsertingColumns:=False, AllowInsertingRows:=False, _
AllowDeletingColumns:=False, AllowDeletingRows:=False
End Sub
Re : Interdire l'insertion/suppression de lignes/colonnes
Merci pour ton retour Excel-lent !
Je viens de tester le dernier code que tu mets sur la version 2010, ça fonctionne ! Je pense que j'avais oublié de sélectionner l'ensemble des cellules avant de décocher "Vérouiller la cellule"..
Re : Interdire l'insertion/suppression de lignes/colonnes
Je viens de tester avec Excel 2007, ça ne fonctionne pas ! En faisant la même manip pourtant.. Sélectionner toutes les cellules, décocher "Vérouillée", puis appliquer le code :
Code:
Private Sub Workbook_Open()
Sheets("Feuil1").Protect Contents:=True, AllowInsertingColumns:=False, AllowInsertingRows:=False _
, AllowDeletingColumns:=False, AllowDeletingRows:=False
End Sub
(avec ProtectContents au lieu de Contents, j'obtiens l'erreur 1004)