protection spécifique

Le
Sunburn
Bonjour,
je cherche à protéger mes feuilles, toutes d'un coup (et à les déprotéger
pareil bien sur), seulement, voila mes critères :
- ne pouvoir sélectionner que les cellules non verrouillées
- pouvoir saisir des commentaires dans ces cellules non verouillées
- pouvoir modifier la hauteur des lignes

J'ai cette macro actuellement, donc que dois-je modifier pour arriver à mes
fins ?
Je vous remercie.

Sub PROTEGERFEUILLES()
Dim Nombre As Integer
Nombre = ActiveWorkbook.Sheets.Count
Application.ScreenUpdating = False
For I = 1 To Nombre
Worksheets(I).Protect , DrawingObjects:=True
Next I
End Sub
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Philippe.R
Le #17518551
Bonsoir,
Avec l'aide de l'enregistreur de macros, j'obtiens :
pour ne pouvoir sélectionner que les cellules non verrouillées,
l'instruction :
ActiveSheet.EnableSelection = xlUnlockedCells
et pour la hauteur de ligne, l'expression ", AllowFormattingRows:=True", à
ajouter à la suite de Worksheets(I).Protect , DrawingObjects:=True
Les cellules non verrouillées, pouvant être sélectionnées, pourront recevoir
un commentaire.
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Sunburn" news:
Bonjour,
je cherche à protéger mes feuilles, toutes d'un coup (et à les déprotéger
pareil bien sur), seulement, voila mes critères :
- ne pouvoir sélectionner que les cellules non verrouillées
- pouvoir saisir des commentaires dans ces cellules non verouillées
- pouvoir modifier la hauteur des lignes

J'ai cette macro actuellement, donc que dois-je modifier pour arriver à
mes
fins ?
Je vous remercie.
------------
Sub PROTEGERFEUILLES()
Dim Nombre As Integer
Nombre = ActiveWorkbook.Sheets.Count
Application.ScreenUpdating = False
For I = 1 To Nombre
Worksheets(I).Protect , DrawingObjects:=True
Next I
End Sub
---------------



Sunburn
Le #17520681
Bonjour phil,je te remercie.
mais j'ai encore un soucis, que je pensais résoudre par la possibilité de
modifier la hauteur de ligne.
en effet, j'ai une macro qui me redimensionne la hauteur des lignes de
certaines cellules.
et lorsque je verouille les feuilles, ça bug.....

Merci si vous pouvez m'aider..
Yann
voilà ma macro pour la hauteur automatique des lignes (ça plante aux ****)
---------------
'hauteur des lignes automatique
Private Sub Workbook_SheetChange(ByVal sh As Object, ByVal Target As Range)
Dim c As Range, LARGEUR As Double, HAUTEUR As Single, AncLarg As Single
If Target.WrapText = False Or Target.Count > 1 Then Exit Sub
For I = 1 To Target.MergeArea.Columns.Count
LARGEUR = LARGEUR + Target.ColumnWidth
Next I
Application.EnableEvents = False
With ActiveSheet.UsedRange
Set c = Range(.Cells(.Rows.Count, .Columns.Count).Address).Offset(1)
AncLarg = c.ColumnWidth
c.ColumnWidth = LARGEUR '(*****************)
c.WrapText = True
c.Value = Target.Value
Target.EntireRow.RowHeight = c.Height
Var = c.Address
c.Clear
c.ColumnWidth = AncLarg
End With
Recalcul
Application.EnableEvents = True
End Sub
------------
et ma macro de verouillage :
-----------
' Protection automatique de toutes les feuilles d'un classeur
Sub PROTEGERFEUILLES()
Dim Nombre As Integer
Nombre = ActiveWorkbook.Sheets.Count
Application.ScreenUpdating = False
For I = 1 To Nombre
Worksheets(I).Protect , DrawingObjects:=True
ActiveSheet.EnableSelection = xlUnlockedCells
AllowFormattingRows = True
AllowFormattingColumns = True 'rajouté, mais ça sert à rien
Next I
End Sub
---------------


"Philippe.R" a écrit :

Bonsoir,
Avec l'aide de l'enregistreur de macros, j'obtiens :
pour ne pouvoir sélectionner que les cellules non verrouillées,
l'instruction :
ActiveSheet.EnableSelection = xlUnlockedCells
et pour la hauteur de ligne, l'expression ", AllowFormattingRows:=True", à
ajouter à la suite de Worksheets(I).Protect , DrawingObjects:=True
Les cellules non verrouillées, pouvant être sélectionnées, pourront recevoir
un commentaire.
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel


Philippe.R
Le #17529131
Bonsoir,
Si j'ai bien suivi, la réponse apportée dans le nouveau fil que tu as ouvert
à 10:27 convient.
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Sunburn" news:
Bonjour phil,je te remercie.
mais j'ai encore un soucis, que je pensais résoudre par la possibilité de
modifier la hauteur de ligne.
en effet, j'ai une macro qui me redimensionne la hauteur des lignes de
certaines cellules.
et lorsque je verouille les feuilles, ça bug.....

Merci si vous pouvez m'aider..
Yann
voilà ma macro pour la hauteur automatique des lignes (ça plante aux ****)
---------------
'hauteur des lignes automatique
Private Sub Workbook_SheetChange(ByVal sh As Object, ByVal Target As
Range)
Dim c As Range, LARGEUR As Double, HAUTEUR As Single, AncLarg As Single
If Target.WrapText = False Or Target.Count > 1 Then Exit Sub
For I = 1 To Target.MergeArea.Columns.Count
LARGEUR = LARGEUR + Target.ColumnWidth
Next I
Application.EnableEvents = False
With ActiveSheet.UsedRange
Set c = Range(.Cells(.Rows.Count, .Columns.Count).Address).Offset(1)
AncLarg = c.ColumnWidth
c.ColumnWidth = LARGEUR '(*****************)
c.WrapText = True
c.Value = Target.Value
Target.EntireRow.RowHeight = c.Height
Var = c.Address
c.Clear
c.ColumnWidth = AncLarg
End With
Recalcul
Application.EnableEvents = True
End Sub
------------
et ma macro de verouillage :
-----------
' Protection automatique de toutes les feuilles d'un classeur
Sub PROTEGERFEUILLES()
Dim Nombre As Integer
Nombre = ActiveWorkbook.Sheets.Count
Application.ScreenUpdating = False
For I = 1 To Nombre
Worksheets(I).Protect , DrawingObjects:=True
ActiveSheet.EnableSelection = xlUnlockedCells
AllowFormattingRows = True
AllowFormattingColumns = True 'rajouté, mais ça sert à rien
Next I
End Sub
---------------


"Philippe.R" a écrit :

Bonsoir,
Avec l'aide de l'enregistreur de macros, j'obtiens :
pour ne pouvoir sélectionner que les cellules non verrouillées,
l'instruction :
ActiveSheet.EnableSelection = xlUnlockedCells
et pour la hauteur de ligne, l'expression ", AllowFormattingRows:=True",
à
ajouter à la suite de Worksheets(I).Protect , DrawingObjects:=True
Les cellules non verrouillées, pouvant être sélectionnées, pourront
recevoir
un commentaire.
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel




Publicité
Poster une réponse
Anonyme