XL 2019 Interdire l'impression du menu fichier d'Excel, mais l'autoriser via une macro.

  • Initiateur de la discussion Initiateur de la discussion RJSCVF
  • Date de début Date de début

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 !

RJSCVF

XLDnaute Nouveau
Bonjour à tous !
J'avais posté récemment une discussion sur le tri automatique et laquelle à reçu satisfaction.
J'ai une préoccupation ! La voici :
J'ai un classeur qui contient 7 feuilles. je voudrais désactiver, uniquement dans trois feuilles de ce classeur, le bouton imprimer d'Excel du menu Fichier ou Ctrl+P, mais cependant autoriser l'impression seulement par un bouton 'Imprimer et Archiver' que j'ai créé à l'aide d'une macro. Pour les 4 autres feuilles (qui n'ont pas le bouton 'Imprimer et Archiver'), l'impression se fera normalement par le menu Fichier d'Excel, Ctrl+P inclus.
Merci pour votre aide.
Amicalement
 
Dernière édition:
Bonsoir le fil,

[Préambule]
Tu sais que ce genre de protection est illusoire et facilement contournable?
[/Préambule]

De plus avec les dernières versions d'Excel, c'est plus coton de "programmer" le ruban.

Donc est-ce que le jeu en vaut la chandelle?
 
Re

Un petit exemple (pour te monter comment cela est facilement "outrepassable")
A mettre dans ThisWorkBook
VB:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If PrtOK Then
Cancel = False
Else
MsgBox "Vous n'êtes pas autorisé à imprimer cette feuille!", vbCritical, "Achtung,Baby !!!"
Cancel = True
End If
End Sub

A mettre dans un module standard
VB:
Sub test_OUI()
Impression Sheets("Feuil1"), True
End Sub
Sub test_NON()
Impression Sheets("Feuil2"), False
End Sub

Private Sub Impression(f As Worksheet, vPrint As Boolean)
PrtOK = vPrint
f.PrintPreview 'aperçu avant impression
'f.printout ' pour imprimer
End Sub
NB: Pour tester, il faut deux feuilles dans le classeur nommées Feuil1 et Feuil2
 
Bonjour Staple1600 !
Merci pour la réponse.
J'ai essayé les codes que tu m'as envoyés. Ils ne répondent pas tout à fait à ce que je cherche à faire.
Mais après réflexion, je trouve qu'il serait plus simple que la macro de 'Imprimer et Archiver' soit lancée lorsque l'utilisateur fait une impression classique (ou Ctrl+P) ?
Votre aide est la bienvenue, si vous voudriez bien m'aider avec un code qui peut faire cela.
Merci
 
- 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
Retour