protection de ma feuille

  • Initiateur de la discussion Initiateur de la discussion hboisteau
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

hboisteau

XLDnaute Junior
bonsoir a vous, voila j'ai adapté un morceau de code VBA pour le besoin de mon fichier, mais j'aimerais bien proteger ma feuille contre les modifications de cellules. J'ai essayer "Sheets Protect" mais j'ai un bug.
Si quelqu'un pourrait me venir en aide.
Avec mes remerciements
hervé
ci dessous le code VBA

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Variant
Dim L As Byte, I As Long
Dim C As Byte


If Target.Address(0, 0) = "A2" Then
Me.Range("A30:Y1000").ClearContents
L = 30
With Sheets("BaseDonnées")
Plage = .Range("A2:AK" & .Range("A65536").End(xlUp).Row)
End With



For I = 1 To UBound(Plage)
If Target.Value = Plage(I, 1) Then
For C = 1 To 37
Me.Cells(L, C) = Plage(I, C)
Next C
L = L + 1
End If
Next

Else

End If
End Sub
 
Re : protection de ma feuille

Bonsoir hboisteau et le forum

Tu peux essayer le code suivant:


Sub ProtegeFeuilles()
Dim MaFeuille As Worksheet
For Each MaFeuille In Worksheets
MaFeuille.Protect Password:="1234"
Next
End Sub
 
Re : protection de ma feuille

Bonjour hboisteau,

Etant donné le code VBA, je suppose que tu maîtrise l'enregistreur de macro...
As-tu essayé d'enregistrer une macro ?

De mémoire ça devrait donner
Sheets("NomFeuil").Unprotect "motdepasse"

Sheets("NomFeuil").Protect "motdepasse"
 
Re : protection de ma feuille

Bonsoir hboisteau,

Essaies avec, en début de procédure :

ActiveSheet.Unprotect ("ton mot de passe"), et en fin de procédure :
ActiveSheet.protect ("ton mot de passe")

Tu nous dis,

Bonne soirée.

Jean-Pierre

Edit : bonsoir Marc, tototiti, ça bouscule, on dirait...
 
Re : protection de ma feuille

Bonjour a vous,
Malheureusement j'ai essayer avec .
ActiveSheet.Unprotect en debut de procédure et
Activesheet.Protect en fin de procedure mas ca bug sur la ligne

Me.Cells(L, C) = Plage(I, C)

donc cela ne marche pas

Encore merci à vous

Hboisteau
 
Re : protection de ma feuille

Bonjour hboisteau,

Si tu as posé la première ligne juste après la Sub, et la seconde juste avant le End Sub, cela doit fonctionner, ou il y a autre chose.

Sinon, déposes nous un petit fichier avec quelques exemples et cette macro, en t'assurant toutefois que sur ce fichier cela ne fonctionne pas non plus. (Format XLS ou ZIP de préférence et moins de 48 Ko)

A te lire.

Jean-Pierre
 
Re : protection de ma feuille

Merci de cette reponse, mais cela ne correspond pas excatement a ma recherche.
J'aimerais si possible ne pas utiliser d'userform vue le nombres a numero a controler je pense que cela alourdirait le fichier
mais encore merci

hboisteau
 
Re : protection de ma feuille

Bonsoir,
excuser-moi je me suis mal exprimer.
mais il vra que cela fonctionne mais je ne voudrais pas rajouter de bonton, juste saisir le numero souhaiter dans la cellule et vba fait le reste.
voila, mais quand meme merci pour vous pencher sur mon probleme

hboisteau
 
Re : protection de ma feuille

Bonjour à tous

ton code est placé dans l'événement "change" de la feuille, tu ne peux donc déprotéger ta feuille dans ce même événement puisque toute modification est interdite par la protection. Une solution protéger ta feuille par vba, par exemple à l'ouverture du classeur, en utilisant l'argument "userinterfaceonly" qui permet l'exécution du code sur feuille protégée :

code à placer dans le module "thisworkbook"
Code:
Private Sub Workbook_Open()
Sheets("nomfeuille").Protect "toto", userinterfaceonly:=True
End Sub

bonne journée
@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
777
Réponses
8
Affichages
314
Réponses
15
Affichages
465
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Retour