Comment protéger ou verrouiller les valeurs de cellule en fonction de la couleur d'arrière-plan?
Supposons que j'ai une grande feuille de calcul et que plusieurs cellules soient remplies avec différentes couleurs d'arrière-plan, maintenant, je veux verrouiller ou protéger les cellules en fonction de certaines couleurs remplies, telles que le verrouillage ou la protection de toutes les cellules de couleur rouge. Existe-t-il de bonnes méthodes pour gérer cette tâche dans Excel?
Protéger ou verrouiller les valeurs de cellule en fonction de la couleur d'arrière-plan avec le code VBA
Par exemple, je souhaite verrouiller et protéger tous les globules rouges, afin d'empêcher d'autres utilisateurs de modifier ces valeurs de cellule, le code VBA suivant peut résoudre ce travail pour vous, procédez comme suit:
1. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.
2Cliquez sur insérer > Moduleet collez le code suivant dans le Module Fenêtre.
Code VBA: Protégez ou verrouillez les valeurs de cellule en fonction de la couleur:
Sub lockcellsbycolor()
'Updateby Extendoffice
Dim colorIndex As Integer
colorIndex = 3
Dim xRg As Range
Application.ScreenUpdating = False
For Each xRg In ActiveSheet.UsedRange.Cells
Dim color As Long
color = xRg.Interior.colorIndex
If (color = colorIndex) Then
xRg.Locked = True
Else
xRg.Locked = False
End If
Next xRg
Application.ScreenUpdating = True
MsgBox "All specified color cells have been locked!", vbInformation, "Kutools for Excel"
End Sub
Notes: Dans le code ci-dessus, le numéro 3 au sein du indice de couleur = 3 Le script indique les cellules de couleur rouge que je veux verrouiller, vous pouvez le changer en un autre index de couleur que vous souhaitez verrouiller.
3. Puis appuyez F5 clé pour exécuter ce code, et seules les cellules de couleur rouge ont été verrouillées, les autres cellules sont déverrouillées dans la plage utilisée de la feuille active, voir capture d'écran:
4. Si vous souhaitez les empêcher d'être modifiés par d'autres utilisateurs, il vous suffit d'appliquer le Protéger la feuille fonctionnalité pour protéger cette feuille de calcul.
Conseils: pour obtenir le numéro d'index de couleur, vous pouvez appliquer la fonction définie par l'utilisateur suivante:
Function GetColor(x As Range) As Integer
GetColor = x.Interior.ColorIndex
End Function
Meilleurs outils de productivité bureautique
Boostez vos compétences Excel avec Kutools for Excelet faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel Offre plus de 300 fonctionnalités avancées pour augmenter la productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab Apporte une interface à onglets à Office et facilite grandement votre travail
- Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!




