Bonsoir Djodjo, bonsoir le forum,
Essai ce code à adapter et à placer dans le composant ThisWorkbook :
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim MDP As Variant 'déclare la variable MDP (Mot De Passe)
If ActiveSheet.Name = "Feuil1" Then 'condition 1 : si la feuille active est "Feuil1" (à adapter à ton cas)
'définit le mot de passe MDP
MDP = Application.InputBox("Tapez le mot de passe d'impression", "MOT DE PASSE", Type:=2)
'condition 2 : si MDP n'est pas "TON_MOT_DE_PASSE" (à adapter à ton cas)
If MDP <> "TON_MOT_DE_PASSE" Then
MsgBox "Mot de passe erroné. Impression annulée!" 'message
Cancel = True 'annule l'impression
End If 'fin de la condition 2
End If 'fin de la condition 1
End Sub
[Éditer]
JMD a raison, on peut interdire l'impression via Excel mais il est réellement aisé de faire une capture d'écran puis de l'imprimer... Je n'y avais même pas pensé. Du coup le code proposé est fonctionnel mais ridiculement inutile !