kay80
Messages postés4Date d'inscriptionmardi 3 février 2009StatutMembreDernière intervention 8 avril 2009
-
19 févr. 2009 à 13:06
kay80
Messages postés4Date d'inscriptionmardi 3 février 2009StatutMembreDernière intervention 8 avril 2009
-
19 févr. 2009 à 17:16
bonjour
Je suis débutant en VBA. Je souhaite alors qu'à l'ouvertutre j'ai protéger la feuille par code permettre aux utilisateurs d'acceder à certaines cellules. Je travaille avec VBA pour excel 2007 en enregistrant en mode compatibilité 97. 2003. J'ai tenté des codes du site mais rien n'est compatible. Pouvez vous m'aider?
'enlever la protection des cellules B2 B9 et D9 de la feuille "compétitions"
sheets("compétitions").select
if worksheets.range("B2").locked=true then
worksheets.range("B2").locked=false
else
bien sur ça ne fonctionne pas mais je cherche et ...
kay80
A voir également:
La cellule ou le graphique que vous essayez de modifier se trouve sur une feuille protégée
Supra3000
Messages postés159Date d'inscriptionlundi 18 février 2008StatutMembreDernière intervention 8 janvier 20102 19 févr. 2009 à 15:36
Excel 2003 ne permet pas des lignes de codes semblables :
worksheets.range("B2").locked=false
Pour vérouiller les cellules tu dois utiliser l'onglet "Protection" du sous-menu "Format de cellule" quand tu fais un clic droit sur une cellule. Ensuite tu coche la case vérouillé. Pour que tes cellules soit maintenant vraiment vérouillées tu dois ajouter un mot de passe à ta feuille.
Suite à ça tu peux modifier toutes les cellules qui ne sont pas vérouillé mais pas celles que tu avais cocher comme vérouillé.
kay80
Messages postés4Date d'inscriptionmardi 3 février 2009StatutMembreDernière intervention 8 avril 2009 19 févr. 2009 à 17:16
merci de cette rapide réponse. j'accepte cette méthode enb attendant un codage qui me permettrait de laisser seulement certaines cellules accessible. mon problème est que au démarrage de cette application je change le format de cette feuille et je masque les barres excel avec le code suivant
ActiveSheet.Unprotect
With ActiveWindow
.DisplayGridlines = False
.DisplayHeadings = False
.DisplayHorizontalScrollBar = False
.DisplayVerticalScrollBar = False
.DisplayWorkbookTabs = False
End With
If ActiveSheet.Name = "compétitions" Then
ActiveSheet.Cells.Interior.ColorIndex = 41
End If
With Application
.DisplayFormulaBar = False
.DisplayStatusBar = False
End With
ActiveSheet.Protect
après ça la protection résidente de la feuille ne serait pas rétablie puisque je la unprotect il faut que je la reprotège en laissant les cellules B2 B9 et D9 accessibles
merci à vous si vous connaissez un codage voisin le permettant.