Voir quelles cellules sont verrouillées
Résolu
Linda
-
Linda -
Linda -
Bonjour,
Existe-t-il un façon de voir en un seul coup d'oeil, les cellules que l'on peut modifier dans une feuille protégée.
Il n'y a pas de données dans ma feuille. J'ai beaucoup travaillé dessus et maintenant, je ne sais plus s'il y a des cellules déverrouillées qui devraient être verrouillées.
C'est quand même assez fastidieux de les passer une par une.
Merci.
Existe-t-il un façon de voir en un seul coup d'oeil, les cellules que l'on peut modifier dans une feuille protégée.
Il n'y a pas de données dans ma feuille. J'ai beaucoup travaillé dessus et maintenant, je ne sais plus s'il y a des cellules déverrouillées qui devraient être verrouillées.
C'est quand même assez fastidieux de les passer une par une.
Merci.
4 réponses
-
Bonjour à tous,
La petite macro en question qui colorie ces cellules. La macro propose de le faire sur une copie ou non.
Ouvre ce classeur, le tien avec la feuille concernée activée (et déverrouillée), et tape Ctrl+d.
https://www.cjoint.com/c/DEbkrSTHjJsSub CelDeverrouillees() Dim c As Range, rep As Long, nbC As Long rep = MsgBox("Travailler sur une copie de la feuille ?", vbQuestion + vbYesNoCancel, "Colorer les cellules déverrouillées") If rep = vbCancel Then Exit Sub If rep = vbYes Then ActiveSheet.Copy after:=ActiveSheet Application.ScreenUpdating = False For Each c In ActiveSheet.UsedRange If Not c.Locked Then c.Interior.ColorIndex = 35 nbC = nbC + 1 End If Next c If nbC > 0 Then MsgBox nbC & " cellules déverrouillées." End Sub
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci-
Bonjour eriiic,
Ça fonctionne. Mais, y a-t-il une façon d'annuler cette manipulation une fois que les cellules ont été vérifiée. Si non, j'activerai la macro sur une copie et je corrigerai sur mon original. J'ai des cellules avec du remplissage manuel et évidemment, il disparaît si j'utilise la fonction "aucun remplissage" par la suite.
Merci beaucoup. -
y a-t-il une façon d'annuler cette manipulation
Non, ce n'est pas l'option que j'avais prise.
Autre version : https://www.cjoint.com/?DEbrDcBV1fP
Cliquer sur Restaurer à la fin pour remettre les couleurs d'origine.
eric
edit : le code oublié
Dans un module Standard :Public sh As Worksheet, shCopie As Worksheet ', pl As Range Sub CelDeverrouillees() Dim c As Range Set sh = ActiveSheet ActiveSheet.Copy after:=ActiveSheet Application.ScreenUpdating = False Set shCopie = ActiveSheet shCopie.Visible = xlSheetHidden sh.Activate ActiveSheet.UsedRange.Interior.ColorIndex = xlNone For Each c In sh.UsedRange If Not c.Locked Then c.Interior.ColorIndex = 35 End If Next c Application.ScreenUpdating = True UF_Restaurer.Show vbModeless End Sub
Bouton du UserForm :Private Sub CommandButton1_Click() Dim c As Range Application.ScreenUpdating = False For Each c In sh.UsedRange c.Interior.ColorIndex = shCopie.Range(c.Address).Interior.ColorIndex Next c Application.DisplayAlerts = False shCopie.Delete Application.DisplayAlerts = True Me.Hide End Sub -
-
-
Désolée, "Je ne sais pas comment mettre en fonction" serait peut-être mieux comme expression. Je réussi la première macro, elle fonctionne. C'est pour le bouton du UserForm que je suis perdue. Je ne peux malheureusement pas faire cela maintenant. Je vais étudier un peu cette fonction et je vous reviendrai, si je n'arrive pas à le faire. Si j'y arrive, je vous le confirmerai et je marquerai résolu.
Merci de votre aide,
À plus tard,
-
-
Bon jour
pas beaucoup de solution, sauf peut être un artifice:
lors de la protection de la feuille, décochez dans le menu qui s'affiche la ligne
"sélectionner les cellules verrouillées"
vous n'aurez alors accès qu'aux cellules déverrouillées, ce qui vous permettra de les repérer.
mais noter bien les adresses à modifier car il faudra ôter la protection pour les modifier
crdlmnt
Errare humanum est, perseverare diabolicum -
Bonjour,
Ou par VBA si tu as quelques notions, soit les cellules sont colorisée après avoir déprotégé la feuille ou même sous protection dans une msgbox on affiche l'adresse des cellules déverrouillées
-
Re
en VBA code à placer dans un module
Sub CellulesDéverrouillées()
Dim myCell As Excel.Range
'activesheet.Unprotect 'déprotection de la feuille
For Each myCell In ActiveSheet.UsedRange
If myCell.Locked = False Then myCell.Interior.ColorIndex = 5 'colorisation des cellules déverrouillées
'activesheet.protect 'reprotection de la feuille
Next myCell
End Sub
ou tout simplement
Sub CellulesDéverrouillées()
Dim myCell As Excel.Range
If myCell.Locked = False Then MsgBox myCell.Address 'ou cette ligne donne l'adresse des cellules déverrouillées
If myCell.Locked = False Then Range(myCell.Address).Select 'ou encore cette ligne sélectionne les cellules déverrouillées
End Sub
Mais bon a aussi vite fait de protéger la feuille en décochant l'option Sélectionner les cellules verrouillées et de jouer avec la touche de tabulation qui sélectionnera les cellules déverrouillées les unes après les autres
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.