[EXCEL] Protéger plage de cellules [Résolu]

pitipilot 111 Messages postés mercredi 19 mai 2010Date d'inscription 2 juin 2015 Dernière intervention - 22 juil. 2011 à 11:14 - Dernière réponse : ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention
- 27 juil. 2011 à 13:40
Bonjour, j'aimerais savoir comment protégé uniquement une plage de cellules. La méthode de protection d'Excel permet de protéger une feuille entière, cependant j'ai une colonne où j'aimerais que cette protection ne s'applique pas. Comment pourrais je faire ?

Merci d'avance et bonne journée.
Afficher la suite 

18 réponses

Répondre au sujet
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 25 juil. 2011 à 11:45
+3
Utile
Inspire-toi de ceci, que je viens de faire sur ma machine :

ActiveSheet.Unprotect
    Columns("B:B").Locked = False
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    ActiveSheet.Protect

sans chercher midi à quatorze heures
____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de ucfoutu
pitipilot 111 Messages postés mercredi 19 mai 2010Date d'inscription 2 juin 2015 Dernière intervention - 25 juil. 2011 à 14:59
+3
Utile
Enfaite j'ai trouvé il faut :


1) Télécharger
http://activex.microsoft.com/controls/vb6/mscomct2.cab
2) Décompresser dans c:\windows\system32

3) Copier dans un fichier texte les lignes ci-dessous
Code :
cd\windows\system32
regsvr32 /u /s mscomct2.ocx
regsvr32 /s mscomct2.ocx

4) Enregistrer ce fichier en fixocx.cmd

5) Clic-droit sur le fichier et choisir Exécuter en tant qu'administrateur

Dans Excel VBE, cocher Dans Références
Microsoft Windows Common Controls 2-6 0
et enfin
Dans Boites à outils [x] Microsoft Date and Time Picker control 6.0 (SP4)
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de pitipilot
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 22 juil. 2011 à 11:20
0
Utile
Bonjour,

Protéger la feuille puis déverrouiller ta plage (la colonne en cause).


____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
Commenter la réponse de ucfoutu
pitipilot 111 Messages postés mercredi 19 mai 2010Date d'inscription 2 juin 2015 Dernière intervention - 22 juil. 2011 à 11:25
0
Utile
Je n'ai pas trouvé comment faire sur Excel 2007 =S.

Sinon en VBA ça serait peut être plus simple ?
Commenter la réponse de pitipilot
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 22 juil. 2011 à 11:45
0
Utile
Je n'ai pas trouvé comment faire sur Excel 2007


En mode création : ===>> Revision ===>> dans le groupe "Modifications" ==>> tu regardes et vois quoi ?
Par exemple ceci :
- une rubrique "Protéger la feuille" (parlante, non ?)
- une rubrique "Permettre la modification des plages" (également parlante, non ?)

Je me suis même lancé dans l'utilisation de l'enregistreur de macros, pour voir ===>> et j'ai eu ...
Fais-en autant.


____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
Commenter la réponse de ucfoutu
pitipilot 111 Messages postés mercredi 19 mai 2010Date d'inscription 2 juin 2015 Dernière intervention - 22 juil. 2011 à 12:09
0
Utile
Sauf que je ne suis pas si bête ^^ j'ai également vu cette section et lorsque je protège ma feuille je n'ai pas accès à "Permettre la modification des plages".

J'ai également essayé de définir "Permettre la modification des plages" avant de protégé ma feuille mais sans résultat.

Où alors je fais mal un truc.
Commenter la réponse de pitipilot
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 22 juil. 2011 à 13:10
0
Utile
Où alors je fais mal un truc


L'inverse tombe sous le sens :
1) "perrmettre la mùodification des plages"
2) "protéger la feuille"
Le tout, en mode création, bien sûr !

____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
Commenter la réponse de ucfoutu
pitipilot 111 Messages postés mercredi 19 mai 2010Date d'inscription 2 juin 2015 Dernière intervention - 25 juil. 2011 à 10:54
0
Utile
D'accord mais le truc c'est que je veux tout de même pouvoir affecter les cellules via des macros j'ai donc effectué ce code

Sheets(1).Select
ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:=True, UserInterfaceOnly:=True


Puis ensuite j'ai enregistré une macro pour autorisé une plage de cellules : *

    ActiveSheet.Protection.AllowEditRanges.Add Title:="Plage1", Range:=Columns( _
        "H:H")



Sauf que lorsque j'inclu ce code dans ma macro de démarrage ça ne fonctionne pas ça me met : "erreur définie par l'application ou par l'objet".

Merci pour ton aide en tout cas :p
Commenter la réponse de pitipilot
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 25 juil. 2011 à 11:01
0
Utile
Je t'ai pourtant dit qu'il te fallait faire l'inverse, non ?
Relis-moi tranquillement !
SQur ta feuille (déprotégée d'abord) :
1) définir les cellules "autorisées"
PUIS
2) protéger ta feuille.
!

____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
Commenter la réponse de ucfoutu
pitipilot 111 Messages postés mercredi 19 mai 2010Date d'inscription 2 juin 2015 Dernière intervention - 25 juil. 2011 à 11:10
0
Utile
J'ai déjà essayé de faire l'inverse :

ActiveSheet.Protection.AllowEditRanges.Add Title:="Plage1", Range:=Columns( _
"H:H")


ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:=True, UserInterfaceOnly:=True


Toujours le même problème =S
Commenter la réponse de pitipilot
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 25 juil. 2011 à 11:18
0
Utile
Cépavré !
Tu ne peux rien faire sans déprotéger d'abord ta feuille (c'est évident !)
ActiveSheet.Unprotect
est le premier geste à faire, avant toutes tes autres instructions

____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
Commenter la réponse de ucfoutu
pitipilot 111 Messages postés mercredi 19 mai 2010Date d'inscription 2 juin 2015 Dernière intervention - 25 juil. 2011 à 11:29
0
Utile
Enfaite je déprotège ma feuille lors de la fermeture du classeur excel du coup pour te prouver que ça ne marche quand même pas j'ai mis toute les instructions dans une même macro :

ActiveSheet.Unprotect
ActiveSheet.Protection.AllowEditRanges.Add Title:="Plage1", Range:=Columns( _
"H:H")
ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:=True, UserInterfaceOnly:=True
Commenter la réponse de pitipilot
pitipilot 111 Messages postés mercredi 19 mai 2010Date d'inscription 2 juin 2015 Dernière intervention - 25 juil. 2011 à 14:09
0
Utile
It works !!! J'ai un nouveau problème maintenant c'est que lorsque j'arrive sur cette ligne :

Sheets(1).Select
Feuil1.DTPicker1.Value = DateAdd("s", 1, Date)


j'ai ce message d'erreur "Propriété ou méthode non gérée par cet objet"
Quand je met en surbrillance la valeur de mon DTPicker j'ai aussi ""Propriété ou méthode non gérée par cet objet" donc c'est bien la Value qui foire
sur certain pc ça ne le fait pas alors que c'est le même partout t'aurais pas une petite idée ?

Merci de ton aide pour les protections des cellules
Commenter la réponse de pitipilot
KathRoz 12 Messages postés jeudi 21 juillet 2011Date d'inscription 26 juillet 2011 Dernière intervention - 26 juil. 2011 à 11:20
0
Utile
Je suis désolé mais je ne vois pas à par le téléchargement dont tu parles en dernier. Si c'est cela, ce n'est pas possible, je n'ai aucun droit d'installation sur ma station.
Et sinon, je veux bien que tu me dises quoi parce que vraiment je ne vois pas.
Commenter la réponse de KathRoz
KathRoz 12 Messages postés jeudi 21 juillet 2011Date d'inscription 26 juillet 2011 Dernière intervention - 26 juil. 2011 à 11:22
0
Utile
Dans l'aide je trouve ceci:

'La méthode ne peut pas être utilisée dans le contexte. Notamment, certaines méthodes d'objets Range nécessitent une plage qui contient des données. Si la plage ne contient pas de données, la méthode échoue. '


Or, toutes mes cases sont vides puisqu'elles sont à remplir par la suite par le fournisseur, penses-tu que c'est du à cela?
Commenter la réponse de KathRoz
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 26 juil. 2011 à 11:24
0
Utile
Voilà un bien "bel" exemple de ce à quoi l'on arrive lorsqu'une seconde question vient se greffer dans une discussion n'ayant aucun rapport avec cette seconde question.
Arrive un visiteur (ici KathRoz) et il ne voit pas que la seconde question est très différente de la première qui, elle, a été résolue !

____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
Commenter la réponse de ucfoutu
pitipilot 111 Messages postés mercredi 19 mai 2010Date d'inscription 2 juin 2015 Dernière intervention - 27 juil. 2011 à 11:41
0
Utile
La question a été résolu mais a déclenché un autre problème du coup je pensais que ça serait plus pertinent de poser la question à la suite
Commenter la réponse de pitipilot
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 27 juil. 2011 à 13:40
0
Utile
La question a été résolu mais a déclenché un autre problème du coup je pensais que ça serait plus pertinent de poser la question à la suite

Non ...
Il ne faut jamais faire ça === >> regarde le résultat lorsqu'un débutant visite
Et même "si". Le principe d'un forum technique est simple :
- une question === >> une résolution
- la question doit correspondre à un titre et la résolution également
C'est à partir de là, que se font ensuite les recherches de solution. Si 2 questions dans une seule discussion (surtout si de surcroît distincte) ===>> égarement et impossibilité d'utiliser valablement le moteur de recherches pour trouver la solution à la 2ème question venue en "verrue" de la première.
Je peux te paraître "vieux jeu", mais c'est là une discipline nécessaire si l'on veut qu'un forum technique remplisse valablement sa fonction première et ne se transforme pas en une espèce de "chat" autour de différents problèmes rencontrés dans l'élaboration d'une application.


____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
Commenter la réponse de ucfoutu

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.