Protection par mot de passe

Nitrog

XLDnaute Junior
Hello à tous, juste à temps pour vous souhaîter encore une excellente année !

Mon problème repose sur une protection de différentes feuilles qui doivent être accesible mais qui doivent être protégées en écriture aprés s'être ouvertent.

Quand j'effectue les macros, j'ai une demande "protégé par un mot de passe".

Mon voeux, serai d'ouvrir les mots de passe des feuilles avant l'execution des macros et de les re-protéger après l'execution des macros.

Merci d'avance pour votre aide et si il vous faut d'autres précisions c'est avec plaisir.

Annexe un exemple.

Nitrog
 

Pièces jointes

  • Protection.xls
    27 KB · Affichages: 57
  • Protection.xls
    27 KB · Affichages: 62
  • Protection.xls
    27 KB · Affichages: 61

Nitrog

XLDnaute Junior
Re : Protection par mot de passe

Désolé mais sa plante la macro ?
Je copie la cellule a1 de la feuille visible pour la copier formatée dans la feuille choix (cellule non veroulliée) et il bug
il ne le fait pas si la feuille n'est pas protégée et je ne comprend pas pourquoi (2ème ligne)

Sheets("Choix").Select
Sheets("Kowin").Range("A1").Copy Range("K28")
Range("K28").Font.Bold = True
Sheets("Kowin").Range("C1").Copy Range("K29")
With Range("K29")
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlBottom
.Font.Bold = True
End With

Merci pour votre aide !!

Nitrog
 

porcinet82

XLDnaute Barbatruc
Re : Protection par mot de passe

re,

Bon ca va pas etre evident de te filer un coup de main sans voir la tronche de ton classeur, mais je vais essayer.

Effectivement, je viens de faire le test et la macro ne s'execute pas, je ne sais pas trop pourquoi. Donc ce que je te propose, c'est de déprotéger la feuille avant la macro et de la reprotéger ensuite :
Code:
Sheets("Choix").Unprotect Password:="MotDePasse"
Sheets("Choix").Select
Sheets("Kowin").Range("A1").Copy Range("K28")
Range("K28").Font.Bold = True
Sheets("Kowin").Range("C1").Copy Range("K29")
With Range("K29")
    .HorizontalAlignment = xlLeft
    .VerticalAlignment = xlBottom
    .Font.Bold = True
End With
Sheets("Choix").Protect Password:="MotDePasse"

@+
 

porcinet82

XLDnaute Barbatruc
Re : Protection par mot de passe

re,

Avec le code que je t'ai mis en exemple, seule la feuille Choix est déprotégée en début de code, puis reprotégée en fin de code.
Si tu veux le faire sur toute les feuilles, il te faut faire une boucle sur les feuilles (et que le mot de passe soit identique pour toutes les feuilles) :
Code:
For k=1 to sheets.count
    sheets(k).unprotect Password:="MotDePasse"
next k

@+
 

Nitrog

XLDnaute Junior
Re : Protection par mot de passe

A force d'essai, je crois que sa fonctionne, mais je me reprove avec un autre problème, dans la feuille choix, j'ai 90 checkbox de choix, et bien entendu je ne peux plus les selectionner (protection)

Private Sub CheckBox89_Click()
If CheckBox89.Value = True Then
[J14] = 1
Else
[J14] = 0
End If
End Sub

Merci de ton aide le 1er problème est réglé

Nitrog
 

porcinet82

XLDnaute Barbatruc
Re : Protection par mot de passe

re,

A ouai, tu aurais du le dire qu'il avait autre chose sur ta feuille !!!!
Quand tu ne sais pas, tu peux aller voir dans l'aide excel, je pense que pas mal de monde la regarde et ca rend bien service (pour y aller, tu fais F1 apres avoir selectionné le terme que tu veux consulter)

Pour Protect, l'aide donne entre autre, ceci :
expression.Protect(Password, DrawingObjects, Contents, Scenarios, UserInterfaceOnly)

Donc dans ton cas, il faut mettre Sheets(k).Protect "MotDePasse", False

@+
 

Nitrog

XLDnaute Junior
Re : Protection par mot de passe

Désolé, je vais suivre ton conseil et aller voir dans l'aide si je trouve qlq chose.

J'ai essayé de faire simple, mais c'est plus compliqué que je pensais d'expliquer ce que font mes macros.

Il y en 4 pages , avec génération de feuilles etc. et j'espèrais trouver une solution pour pouvoir mettre ce fichier à la disposition de mes collègues sans qu'il le plante.

Merci pour ton aide.

Nitrog
 

Discussions similaires

Réponses
4
Affichages
808

Statistiques des forums

Discussions
312 491
Messages
2 088 888
Membres
103 982
dernier inscrit
krakencolas