OVH Cloud OVH Cloud

Macro protection cellule

26 réponses
Avatar
YANN24
Bonjour,

en fait j'ai une feuille avec des cellules vérouillées, et certaines non
verrouillées.
Ma macro devrait me dévérouiller ma feuille (activesheet.unprotect
"motdepasse"), sélectionner toutes les cellules (ça je sais pas), les
vérouiller toutes (ça je sais pas non plus), et ensuite verouillé (ça je sais
par contre : activesheet.protect)

Donc si vous avez les 2 formules qui me manquent.

Merci d'avance.
YANN

6 réponses

1 2 3
Avatar
YANN24
SAlut,
Alors, mon pb ne te donne rien de bon à quoi penser?
Je te remercie si jamais tu trouve.

YANN


re,

j'ai pas bien compris ton problème. Peux-tu expliciter un peu plus avec un
exemple au cas où?

Merci

A+


Re-bonjour,
OK, trop bien, merci beaucoup.
Il me reste un seul hic :
J'ai une colonne avec une liste déroulante.
Avec ma macro telle qu'elle est, je ne peux plus suprimer une sélection déjà
faite (ça c'est OK), mais je peux encore sélectionner un choix dans les
listes (ça c'est pas bon). Comment faire ? Paramétrage des listes ?

Ci après, mon code écrit en vba :


Sub MacroDévSélVér()
'
' MacroDévSélVér Macro
ActiveSheet.Unprotect "passe"
Cells.Locked = True
ActiveSheet.Protect "passe"
'
End Sub





bonjour,

je partage bien sur l'avis de tous tes répondnats sur la nécessité de faire
un peu d'enrgistreur de macros pour apprendre.
Ceci dit l'enregistreur de macros ecrit exactement ce que tu fais et donc
alourdit u peu le code.
Exemple: dasn ce que tu veux faire si tu utilsies l'enregistreur, il
écrirait pour verrouiller l'ensemble des cellules d'1 feuille
cells.select
selection.locked=true

On peut réaliser la même chose en écrivant directement cells.locked=true. Eh
oui, la transitivité existe aussi en informatique.

A+



Bonjour, *YANN24*
J'ai lu ton post
avec le plus grand intéret :

As-tu essayé l'enregistreur de macro ?

Bien cordialement,

Patrick.

Bonjour,

en fait j'ai une feuille avec des cellules vérouillées, et certaines
non verrouillées.
Ma macro devrait me dévérouiller ma feuille (activesheet.unprotect
"motdepasse"), sélectionner toutes les cellules (ça je sais pas), les
vérouiller toutes (ça je sais pas non plus), et ensuite verouillé (ça
je sais par contre : activesheet.protect)

Donc si vous avez les 2 formules qui me manquent.

Merci d'avance.
YANN













Avatar
YANN24
Re Séb,
ouais, tu as vraiment raison, manger c'est important : moi aussi c'est fait,
et ça permet de peut etre mieux réfléchir.

En fait, j'ai un tableau Excel avec :

A B C D E

date liste commentaires formules commentaire 2

Donc en fait, à la base, dans ma feuille, seules mes cellules B8:B38, C8:C38
et E8:E38 ne sont pas vérouilleé.
Et ma liste est plus loin, avec en G8:G18 mes codes, qui apparaissent en
menu déroulant dans ma colonne B.

Pour l'instant, ma macro est comme ça :

Sub MacroDévSélVér()
'
' MacroDévSélVér Macro
ActiveSheet.Unprotect "passe"
Cells.Locked = True
ActiveSheet.Protect "passe"
' Macro enregistrée le 27/01/2005
'
'End Sub

Voilà, si tu comprend mieux.
MERCI. Yann




Re Yann,

Tu devineras jamais ce que je suis allé faire....Manger !!! Désolé, mais
c'est quand mem plus important que ton problème.
Sinon j'avoue que je suis un peu perdu... Il me semble (si j'ai bien
compris) que
tu veux empécher de selectionner un mot dans une cellule B2 de ta liste de
validation.
Dans ce cas, tu verras que la protection empeche dejà de le modifier. Si tu
veux que la liste de validation n'apparraisse plus, il faut la supprimer. Tu
ne peux pas la conserver et ne pas la faire apparaitre, du coup il faudra la
recréer si tu en as besoin à nouveau un jour.
tu rajoutes dans ton code avant protection :
cells.validation.delete (si tu veux en conserver certaine, remplace cells
par le range des cellules sur lesquelles tu veux la supprimer)

J'espere que c'est ce qu'il te fallait :-)
Cordialement
Benjamin


Re salut,
tu n'as pas d'idée pour m'aider alors?

Merci encore.

YANN


Hum...
Tu fais comme si tu voulais en creer une autre (control toolbox, design
mode) et là tu doubleclick dessus. Tu vas arriver sous vba, dans ta feuille
ou excel t'auras créer un début de code :
Private sub listbox1_click()

end sub
et voila ton nom listbox1.

Cordialement
Benjamin

Re poy-poy,

Ok, mais, par contre, ma liste n'a pas de nom, comment voir son nom, ou
comment lui en donner un?
merci encore.
YANN


Re Yann,

il te faut rajouter dans le code la ligne avant de reprotéger ta feuille :

listbox1.enabled = false

Bon le nom de ta liste déroulante n'est probablement pas listbox1, donc a
adpater comme toujours mais sinon c'est ca. tu peux même la faire disparaitre
pas un listbox1.visible = false si tu veux.

Cordialement
Benjamin


Re-bonjour,
OK, trop bien, merci beaucoup.
Il me reste un seul hic :
J'ai une colonne avec une liste déroulante.
Avec ma macro telle qu'elle est, je ne peux plus suprimer une sélection déjà
faite (ça c'est OK), mais je peux encore sélectionner un choix dans les
listes (ça c'est pas bon). Comment faire ? Paramétrage des listes ?

Ci après, mon code écrit en vba :


Sub MacroDévSélVér()
'
' MacroDévSélVér Macro
ActiveSheet.Unprotect "passe"
Cells.Locked = True
ActiveSheet.Protect "passe"
'
End Sub





bonjour,

je partage bien sur l'avis de tous tes répondnats sur la nécessité de faire
un peu d'enrgistreur de macros pour apprendre.
Ceci dit l'enregistreur de macros ecrit exactement ce que tu fais et donc
alourdit u peu le code.
Exemple: dasn ce que tu veux faire si tu utilsies l'enregistreur, il
écrirait pour verrouiller l'ensemble des cellules d'1 feuille
cells.select
selection.locked=true

On peut réaliser la même chose en écrivant directement cells.locked=true. Eh
oui, la transitivité existe aussi en informatique.

A+



Bonjour, *YANN24*
J'ai lu ton post
avec le plus grand intéret :

As-tu essayé l'enregistreur de macro ?

Bien cordialement,

Patrick.

Bonjour,

en fait j'ai une feuille avec des cellules vérouillées, et certaines
non verrouillées.
Ma macro devrait me dévérouiller ma feuille (activesheet.unprotect
"motdepasse"), sélectionner toutes les cellules (ça je sais pas), les
vérouiller toutes (ça je sais pas non plus), et ensuite verouillé (ça
je sais par contre : activesheet.protect)

Donc si vous avez les 2 formules qui me manquent.

Merci d'avance.
YANN





















Avatar
YANN24
OK!OK!OK!OK!


C'est bon, ma macro marche, jsuis trop content !! Merci à toi pour ta
participation à ce magnifique challenge !!!!!!!
Non, j'rigole, mais jsuis content quand même, car je débute.

Bon, merci du coup, et à bientot ptèt.
YANN


Re Yann,

Tu devineras jamais ce que je suis allé faire....Manger !!! Désolé, mais
c'est quand mem plus important que ton problème.
Sinon j'avoue que je suis un peu perdu... Il me semble (si j'ai bien
compris) que
tu veux empécher de selectionner un mot dans une cellule B2 de ta liste de
validation.
Dans ce cas, tu verras que la protection empeche dejà de le modifier. Si tu
veux que la liste de validation n'apparraisse plus, il faut la supprimer. Tu
ne peux pas la conserver et ne pas la faire apparaitre, du coup il faudra la
recréer si tu en as besoin à nouveau un jour.
tu rajoutes dans ton code avant protection :
cells.validation.delete (si tu veux en conserver certaine, remplace cells
par le range des cellules sur lesquelles tu veux la supprimer)

J'espere que c'est ce qu'il te fallait :-)
Cordialement
Benjamin


Re salut,
tu n'as pas d'idée pour m'aider alors?

Merci encore.

YANN


Hum...
Tu fais comme si tu voulais en creer une autre (control toolbox, design
mode) et là tu doubleclick dessus. Tu vas arriver sous vba, dans ta feuille
ou excel t'auras créer un début de code :
Private sub listbox1_click()

end sub
et voila ton nom listbox1.

Cordialement
Benjamin

Re poy-poy,

Ok, mais, par contre, ma liste n'a pas de nom, comment voir son nom, ou
comment lui en donner un?
merci encore.
YANN


Re Yann,

il te faut rajouter dans le code la ligne avant de reprotéger ta feuille :

listbox1.enabled = false

Bon le nom de ta liste déroulante n'est probablement pas listbox1, donc a
adpater comme toujours mais sinon c'est ca. tu peux même la faire disparaitre
pas un listbox1.visible = false si tu veux.

Cordialement
Benjamin


Re-bonjour,
OK, trop bien, merci beaucoup.
Il me reste un seul hic :
J'ai une colonne avec une liste déroulante.
Avec ma macro telle qu'elle est, je ne peux plus suprimer une sélection déjà
faite (ça c'est OK), mais je peux encore sélectionner un choix dans les
listes (ça c'est pas bon). Comment faire ? Paramétrage des listes ?

Ci après, mon code écrit en vba :


Sub MacroDévSélVér()
'
' MacroDévSélVér Macro
ActiveSheet.Unprotect "passe"
Cells.Locked = True
ActiveSheet.Protect "passe"
'
End Sub





bonjour,

je partage bien sur l'avis de tous tes répondnats sur la nécessité de faire
un peu d'enrgistreur de macros pour apprendre.
Ceci dit l'enregistreur de macros ecrit exactement ce que tu fais et donc
alourdit u peu le code.
Exemple: dasn ce que tu veux faire si tu utilsies l'enregistreur, il
écrirait pour verrouiller l'ensemble des cellules d'1 feuille
cells.select
selection.locked=true

On peut réaliser la même chose en écrivant directement cells.locked=true. Eh
oui, la transitivité existe aussi en informatique.

A+



Bonjour, *YANN24*
J'ai lu ton post
avec le plus grand intéret :

As-tu essayé l'enregistreur de macro ?

Bien cordialement,

Patrick.

Bonjour,

en fait j'ai une feuille avec des cellules vérouillées, et certaines
non verrouillées.
Ma macro devrait me dévérouiller ma feuille (activesheet.unprotect
"motdepasse"), sélectionner toutes les cellules (ça je sais pas), les
vérouiller toutes (ça je sais pas non plus), et ensuite verouillé (ça
je sais par contre : activesheet.protect)

Donc si vous avez les 2 formules qui me manquent.

Merci d'avance.
YANN





















Avatar
YANN24
OK!OK!OK!OK!


C'est bon, ma macro marche, jsuis trop content !! Merci à toi pour ta
participation à ce magnifique challenge !!!!!!!
Non, j'rigole, mais jsuis content quand même, car je débute.

Bon, merci du coup, et à bientot ptèt.
YANN


re,

j'ai pas bien compris ton problème. Peux-tu expliciter un peu plus avec un
exemple au cas où?

Merci

A+


Re-bonjour,
OK, trop bien, merci beaucoup.
Il me reste un seul hic :
J'ai une colonne avec une liste déroulante.
Avec ma macro telle qu'elle est, je ne peux plus suprimer une sélection déjà
faite (ça c'est OK), mais je peux encore sélectionner un choix dans les
listes (ça c'est pas bon). Comment faire ? Paramétrage des listes ?

Ci après, mon code écrit en vba :


Sub MacroDévSélVér()
'
' MacroDévSélVér Macro
ActiveSheet.Unprotect "passe"
Cells.Locked = True
ActiveSheet.Protect "passe"
'
End Sub





bonjour,

je partage bien sur l'avis de tous tes répondnats sur la nécessité de faire
un peu d'enrgistreur de macros pour apprendre.
Ceci dit l'enregistreur de macros ecrit exactement ce que tu fais et donc
alourdit u peu le code.
Exemple: dasn ce que tu veux faire si tu utilsies l'enregistreur, il
écrirait pour verrouiller l'ensemble des cellules d'1 feuille
cells.select
selection.locked=true

On peut réaliser la même chose en écrivant directement cells.locked=true. Eh
oui, la transitivité existe aussi en informatique.

A+



Bonjour, *YANN24*
J'ai lu ton post
avec le plus grand intéret :

As-tu essayé l'enregistreur de macro ?

Bien cordialement,

Patrick.

Bonjour,

en fait j'ai une feuille avec des cellules vérouillées, et certaines
non verrouillées.
Ma macro devrait me dévérouiller ma feuille (activesheet.unprotect
"motdepasse"), sélectionner toutes les cellules (ça je sais pas), les
vérouiller toutes (ça je sais pas non plus), et ensuite verouillé (ça
je sais par contre : activesheet.protect)

Donc si vous avez les 2 formules qui me manquent.

Merci d'avance.
YANN













Avatar
anonymousA
re,

vais m'y mettre.


A+

SAlut,
Alors, mon pb ne te donne rien de bon à quoi penser?
Je te remercie si jamais tu trouve.

YANN



re,

j'ai pas bien compris ton problème. Peux-tu expliciter un peu plus avec un
exemple au cas où?

Merci

A+



Re-bonjour,
OK, trop bien, merci beaucoup.
Il me reste un seul hic :
J'ai une colonne avec une liste déroulante.
Avec ma macro telle qu'elle est, je ne peux plus suprimer une sélection déjà
faite (ça c'est OK), mais je peux encore sélectionner un choix dans les
listes (ça c'est pas bon). Comment faire ? Paramétrage des listes ?

Ci après, mon code écrit en vba :


Sub MacroDévSélVér()
'
' MacroDévSélVér Macro
ActiveSheet.Unprotect "passe"
Cells.Locked = True
ActiveSheet.Protect "passe"
'
End Sub






bonjour,

je partage bien sur l'avis de tous tes répondnats sur la nécessité de faire
un peu d'enrgistreur de macros pour apprendre.
Ceci dit l'enregistreur de macros ecrit exactement ce que tu fais et donc
alourdit u peu le code.
Exemple: dasn ce que tu veux faire si tu utilsies l'enregistreur, il
écrirait pour verrouiller l'ensemble des cellules d'1 feuille
cells.select
selection.locked=true

On peut réaliser la même chose en écrivant directement cells.locked=true. Eh
oui, la transitivité existe aussi en informatique.

A+




Bonjour, *YANN24*
J'ai lu ton post
avec le plus grand intéret :

As-tu essayé l'enregistreur de macro ?

Bien cordialement,

Patrick.


Bonjour,

en fait j'ai une feuille avec des cellules vérouillées, et certaines
non verrouillées.
Ma macro devrait me dévérouiller ma feuille (activesheet.unprotect
"motdepasse"), sélectionner toutes les cellules (ça je sais pas), les
vérouiller toutes (ça je sais pas non plus), et ensuite verouillé (ça
je sais par contre : activesheet.protect)

Donc si vous avez les 2 formules qui me manquent.

Merci d'avance.
YANN















Avatar
poy-poy
Avec plaisir. A plus


OK!OK!OK!OK!


C'est bon, ma macro marche, jsuis trop content !! Merci à toi pour ta
participation à ce magnifique challenge !!!!!!!
Non, j'rigole, mais jsuis content quand même, car je débute.

Bon, merci du coup, et à bientot ptèt.
YANN


Re Yann,

Tu devineras jamais ce que je suis allé faire....Manger !!! Désolé, mais
c'est quand mem plus important que ton problème.
Sinon j'avoue que je suis un peu perdu... Il me semble (si j'ai bien
compris) que
tu veux empécher de selectionner un mot dans une cellule B2 de ta liste de
validation.
Dans ce cas, tu verras que la protection empeche dejà de le modifier. Si tu
veux que la liste de validation n'apparraisse plus, il faut la supprimer. Tu
ne peux pas la conserver et ne pas la faire apparaitre, du coup il faudra la
recréer si tu en as besoin à nouveau un jour.
tu rajoutes dans ton code avant protection :
cells.validation.delete (si tu veux en conserver certaine, remplace cells
par le range des cellules sur lesquelles tu veux la supprimer)

J'espere que c'est ce qu'il te fallait :-)
Cordialement
Benjamin


Re salut,
tu n'as pas d'idée pour m'aider alors?

Merci encore.

YANN


Hum...
Tu fais comme si tu voulais en creer une autre (control toolbox, design
mode) et là tu doubleclick dessus. Tu vas arriver sous vba, dans ta feuille
ou excel t'auras créer un début de code :
Private sub listbox1_click()

end sub
et voila ton nom listbox1.

Cordialement
Benjamin

Re poy-poy,

Ok, mais, par contre, ma liste n'a pas de nom, comment voir son nom, ou
comment lui en donner un?
merci encore.
YANN


Re Yann,

il te faut rajouter dans le code la ligne avant de reprotéger ta feuille :

listbox1.enabled = false

Bon le nom de ta liste déroulante n'est probablement pas listbox1, donc a
adpater comme toujours mais sinon c'est ca. tu peux même la faire disparaitre
pas un listbox1.visible = false si tu veux.

Cordialement
Benjamin


Re-bonjour,
OK, trop bien, merci beaucoup.
Il me reste un seul hic :
J'ai une colonne avec une liste déroulante.
Avec ma macro telle qu'elle est, je ne peux plus suprimer une sélection déjà
faite (ça c'est OK), mais je peux encore sélectionner un choix dans les
listes (ça c'est pas bon). Comment faire ? Paramétrage des listes ?

Ci après, mon code écrit en vba :


Sub MacroDévSélVér()
'
' MacroDévSélVér Macro
ActiveSheet.Unprotect "passe"
Cells.Locked = True
ActiveSheet.Protect "passe"
'
End Sub





bonjour,

je partage bien sur l'avis de tous tes répondnats sur la nécessité de faire
un peu d'enrgistreur de macros pour apprendre.
Ceci dit l'enregistreur de macros ecrit exactement ce que tu fais et donc
alourdit u peu le code.
Exemple: dasn ce que tu veux faire si tu utilsies l'enregistreur, il
écrirait pour verrouiller l'ensemble des cellules d'1 feuille
cells.select
selection.locked=true

On peut réaliser la même chose en écrivant directement cells.locked=true. Eh
oui, la transitivité existe aussi en informatique.

A+



Bonjour, *YANN24*
J'ai lu ton post
avec le plus grand intéret :

As-tu essayé l'enregistreur de macro ?

Bien cordialement,

Patrick.

Bonjour,

en fait j'ai une feuille avec des cellules vérouillées, et certaines
non verrouillées.
Ma macro devrait me dévérouiller ma feuille (activesheet.unprotect
"motdepasse"), sélectionner toutes les cellules (ça je sais pas), les
vérouiller toutes (ça je sais pas non plus), et ensuite verouillé (ça
je sais par contre : activesheet.protect)

Donc si vous avez les 2 formules qui me manquent.

Merci d'avance.
YANN























1 2 3