Insérer une image dans onglet protégé

Résolu/Fermé
UsulArrakis Messages postés 7405 Date d'inscription vendredi 28 mars 2003 Statut Contributeur Dernière intervention 27 janvier 2022 - 27 oct. 2020 à 07:34
UsulArrakis Messages postés 7405 Date d'inscription vendredi 28 mars 2003 Statut Contributeur Dernière intervention 27 janvier 2022 - 27 oct. 2020 à 14:53
Bonjour à tous

j'ai une colle à vous poser :

dans un fichier excel les onglets sont protégés par mot de passe. dans chaque onglet j'ai des cellules qui ne sont pas verrouillées et qu'on peut donc remplir.

J'ai 2 groupes de cellules fusionnées qui ne sont pas verrouillés et je souhaiterai qu'on puisse insérer une image dans chacun des groupes.

mais quand la protection est active, la commande "insertion / image" est grisée

comment faire pour qu'on puisse insérer une image

le classeur contient 13 onglets, un de présentation et 12 correspondants chacun à un mois de l'année

voici les 2 macros qui me servent à protéger et déprotéger

Merci pour votre aide


Public Sub Protection()
Application.ScreenUpdating = False
For i = 1 To 13
If Worksheets(i).Name <> "Présentation" Then
Worksheets(i).Unprotect Password:="XXXXXX"
Worksheets(i).Range("B1:D3").Locked = False
Worksheets(i).Range("D11:D11").Locked = False
Worksheets(i).Range("D15:G45").Locked = False
Worksheets(i).Range("O15:P45").Locked = False
Worksheets(i).Range("E49:F50").Locked = False
Worksheets(i).Range("T49:U50").Locked = False
Worksheets(i).Range("B49").Locked = False
Worksheets(i).Range("R49").Locked = False
If Worksheets(i).Name = "janvier" Then Worksheets(i).Range("M11:N11").Locked = False
For Each o In Worksheets(i).Range("B1:D3,D11:D11,D15:G45,O15:P45")
If o.Interior.ColorIndex = 15 Then o.Locked = True
Next o
Worksheets(i).Protect Password:="XXXXXX"
End If
Next i
Application.ScreenUpdating = True
End Sub

Public Sub déprotection()
Application.ScreenUpdating = False
For i = 1 To 13
Worksheets(i).Unprotect Password:="XXXXXX"

Next i

End Sub



Configuration: Windows / Firefox 82.0

A voir également:

2 réponses

cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
27 oct. 2020 à 08:02
Bonjour,

comme ceci:

1
UsulArrakis Messages postés 7405 Date d'inscription vendredi 28 mars 2003 Statut Contributeur Dernière intervention 27 janvier 2022 3 182
27 oct. 2020 à 09:48
Merci pour ta réponse
mais comment ça se traduit dans la macro ?
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
27 oct. 2020 à 10:54
Sers toi de l'enregistreur de macro!

Tu auras ton code

Voilà
0
UsulArrakis Messages postés 7405 Date d'inscription vendredi 28 mars 2003 Statut Contributeur Dernière intervention 27 janvier 2022 3 182 > cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024
27 oct. 2020 à 14:29
voici ce que me donne l'enregistreur de macro :

ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
True

Mais ça fait planter la macro

je précise que la macro n'est pas de moi. je suis nul en macro !
merci
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728 > UsulArrakis Messages postés 7405 Date d'inscription vendredi 28 mars 2003 Statut Contributeur Dernière intervention 27 janvier 2022
27 oct. 2020 à 14:42
Remplacer:

Worksheets(i).Protect Password:="XXXXXX"


par

Worksheets(i).Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
True, Password:="XXXXXX"


Voilà
0
UsulArrakis Messages postés 7405 Date d'inscription vendredi 28 mars 2003 Statut Contributeur Dernière intervention 27 janvier 2022 3 182 > cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024
27 oct. 2020 à 14:53
C'est parfait
merci beaucoup
0