Autres macro dispatch rajouter paotection des cellules automatique

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 !

abdernino1985

XLDnaute Junior
Bonjour, voila j'ai une macro dispatch selon un critère sur plusieurs onglets
Option Explicite
Dim fa as Worksheet, f as Worksheet, fm as Worksheet, Tablo
Dim i&&, der Ln&
Sub dispatcher()

Set fa = Feuil1
Set fm = Sheets("Modèle")
Application. Screen Updating = False Tablo = fa. Range("A1: M" & fa. Range("A" & Rows. Count).End(xl Up). Row)
For i = 6 To UBound(Tablo, 1)
On Error Résumé Next
Set f = Sheets(C. Str(Tablo(i, 3)))
If Err. Number > 0 Then fm. Visible = True fm. Copy after: =fa
Active Sheet .Nom = C. Str(Tablo(i, 3))
Set f = Active Sheet
End If der Ln = f. Range("A" & Rows. Count).End(xl Up)(2). Row fa. Range("A" & i & ": M" & i). Copy f. Range("A" & der Ln)
f.Range("A" & der Ln) = der Ln - 5
Next i fm. Visible = False

For each f In worksheets
If f. Nom > "Feuil1" And f. Nom > "Modèle" then der Ln = f. Range("A" & Rows. Count).End(xl Up)(2). Row
f.Range("I" & der Ln & ": J" & der Ln). FormulaR1C1 = "=SUM(R[" & --derLn + 6 & "]C: R[-1]C)"
End If
Next f
End Sub mais voila je voudrais verrouiller les cellules qui sont créées dans chaque onglet pour rendre impossible la suppersion et modification, moi j'ai trouvé ça Activesheet protect Password: ="Sophia"
mais mon problème que c'est toute la feuille est verrouillé
 

Pièces jointes

Solution
1- Il faut déverrouiller toute la page à la main : En cliquant sur l'ensemble de la page puis format protection décocher Verrouillée.
2- Comme il semble que vous travailler par zones, on peut verrouiller toute une zone par :
VB:
    Range("C7:C20").Select            ' Sélection d'une zone verticale
    Selection.Locked = True
    Selection.FormulaHidden = False
    
    Range("D4:J4").Select            ' Selection d'une zone horizontale
    Selection.Locked = True
    Selection.FormulaHidden = False
Ca risque d'être fastidieux s'il y a beaucoup de zones à traiter.
Mais je n'ai pas d'autre idée.
Peut être que quelqu'un vous proposera mieux.
Bonsoir abdernino,

Activesheet protect Password: ="Sophia" verrouille la feuille mais pas toute la feuille.
Il vous faut déverrouiller les cellules auquel vous voulez accéder lorsque la feuille est verrouillée.

Faite le test : Cliquer sur cellule C1, puis clic droit Format de cellule. Dernier onglet Protection et décochez Verrouillée.
Maintenant mettez un mot de passe sur la feuille ( clic droit sur le nom de la feuille et Protéger la feuille )
Maintenant plus aucune cellule n'est accessible ... hormis C1.

Par contre si par macro vous voulez écrire dans des cellules protégées il vous faut faire :
Activesheet unprotect Password: ="Sophia"
Modifs cellules
Activesheet protect Password: ="Sophia"
 
XL protège toute la feuille hormis les cellules déverrouillées. On ne verrouille pas des cellules ou des lignes.
C'est pour ça que la ligne : f.Range.Activate.Protect Password:="Sophia" pose problème.
Il faut changer de stratégie.
Pourquoi ne pas déverrouiller toutes les cellules par défault. ( tout sélectionner puis Format ... )
Puis ensuite mettre les cellules modifiées en verrouillées ( Selection.Locked = True )
Dans ce cas le mot de passe est actif nulle part sauf sur vos lignes lockées.
 
1- Il faut déverrouiller toute la page à la main : En cliquant sur l'ensemble de la page puis format protection décocher Verrouillée.
2- Comme il semble que vous travailler par zones, on peut verrouiller toute une zone par :
VB:
    Range("C7:C20").Select            ' Sélection d'une zone verticale
    Selection.Locked = True
    Selection.FormulaHidden = False
    
    Range("D4:J4").Select            ' Selection d'une zone horizontale
    Selection.Locked = True
    Selection.FormulaHidden = False
Ca risque d'être fastidieux s'il y a beaucoup de zones à traiter.
Mais je n'ai pas d'autre idée.
Peut être que quelqu'un vous proposera mieux.
 
- 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
410
Réponses
9
Affichages
385
Réponses
4
Affichages
362
Réponses
3
Affichages
464
Retour