Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Ne pas Imprimer à partir de l'aperçu (VBA)

4 réponses
Avatar
Woody
Bonsoir,

Avec l'aide reçue sur ce newsgroup (Merci!) je capte l'événement BeforePrint
pour n'imprimer que la zone que je veux imprimer. Cependant je présente à
l'opérateur un aperçu avant impression. Là l'opérateur peut relancer une
nouvelle impression en cliquant sur le bouton Imprimer de l'aperçu, ce que
je ne veux pas! Comment désactiver ce bouton Imprimer (dans l'aperçu) : il
n'est pas accessible comme un bouton de barre d'outils?
Merci pour votre aide!

Woody

4 réponses

Avatar
JB
Bonsoir,


Public impressionAutorisée
Sub Imprime()
Range("A1:B4").Select
ActiveSheet.PageSetup.PrintArea = "$A$1:$B$4"
impressionAutorisée = True
ActiveWindow.SelectedSheets.PrintPreview
impressionAutorisée = False
End Sub

Private Sub Workbook_BeforePrint(Cancel As Boolean)
If Not impressionAutorisée Then
MsgBox "Non!"
Cancel = Not impressionAutorisée
End If
End Sub

http://cjoint.com/?lbuACXIbI5

JB


On 1 nov, 19:37, "Woody" wrote:
Bonsoir,

Avec l'aide reçue sur ce newsgroup (Merci!) je capte l'événement Be forePrint
pour n'imprimer que la zone que je veux imprimer. Cependant je présente à
l'opérateur un aperçu avant impression. Là l'opérateur peut relan cer une
nouvelle impression en cliquant sur le bouton Imprimer de l'aperçu, ce que
je ne veux pas! Comment désactiver ce bouton Imprimer (dans l'aperçu) : il
n'est pas accessible comme un bouton de barre d'outils?
Merci pour votre aide!

Woody


Avatar
anonymousA
Bonjour,

en // de ce que t'indique JB, voici une autre approche due à Alain CROS.

http://groups.google.fr/group/microsoft.public.fr.excel/browse_frm/thread/f160ec47ae269be7/446de0a9e7510858?hl=fr&lnk=st&q=#446de0a9e7510858

A+

Bonsoir,

Avec l'aide reçue sur ce newsgroup (Merci!) je capte l'événement BeforePrint
pour n'imprimer que la zone que je veux imprimer. Cependant je présente à
l'opérateur un aperçu avant impression. Là l'opérateur peut relancer une
nouvelle impression en cliquant sur le bouton Imprimer de l'aperçu, ce que
je ne veux pas! Comment désactiver ce bouton Imprimer (dans l'aperçu) : il
n'est pas accessible comme un bouton de barre d'outils?
Merci pour votre aide!

Woody




Avatar
Woody
Bonjour,

Merci beaucoup à tous les deux. Je vais tester tout ça et je vous tiens au
courant.

Cordialement.

Woody.

"anonymousA" a écrit dans le message de news:
472a338e$0$21150$
Bonjour,

en // de ce que t'indique JB, voici une autre approche due à Alain CROS.

http://groups.google.fr/group/microsoft.public.fr.excel/browse_frm/thread/f160ec47ae269be7/446de0a9e7510858?hl=fr&lnk=st&q=#446de0a9e7510858

A+

Bonsoir,

Avec l'aide reçue sur ce newsgroup (Merci!) je capte l'événement
BeforePrint pour n'imprimer que la zone que je veux imprimer. Cependant
je présente à l'opérateur un aperçu avant impression. Là l'opérateur peut
relancer une nouvelle impression en cliquant sur le bouton Imprimer de
l'aperçu, ce que je ne veux pas! Comment désactiver ce bouton Imprimer
(dans l'aperçu) : il n'est pas accessible comme un bouton de barre
d'outils?
Merci pour votre aide!

Woody





Avatar
Woody
Bonsoir !

Je suis vraiment désolée pour cet énome retard mais j'ai été absorbée par un
tout autre boulot ce qui fait que j'ai laissé mon formulaire de côté pendant
quelques jours...
J'ai regardé ce que vous me proposiez mais je ne vois pas bien comment
l'intégrer dans la macro BeforePrint que j'avais déjà concoctée... J'aurais
du être plus précise quand j'ai posé ma question.

Voilà :

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Cancel = True
Application.EnableEvents = False

Dim Clic As Integer

Application.ScreenUpdating = False

ActiveWorkbook.Protect Structure:úlse, Password:="XXX"

With Worksheets("DTimpr")

.Activate
.Visible = True
.PageSetup.PrintArea = "DTfinale"

MsgBox "Cliquez sur le bouton FERMER pour sortir de l'apercu et
imprimer"
.PrintPreview

Clic = MsgBox("Après cet aperçu, voulez-vous imprimer ?", vbYesNo,
"Impression de la demande de travaux")

If Clic = vbYes Then

.PrintOut Copies:=1, Collate:=True

End If

.Visible = xlVeryHidden

End With

Worksheets("DTForm").Activate
ActiveWorkbook.Protect Structure:=True, Password:="XXX"

Application.ScreenUpdating = True
Application.EnableEvents = True

End Sub

Cette macro fonctionne très bien en ce sens que seule la feuille "DTimpr"
apparaît à l'aperçu ou s'imprime. Mais lorsqu'on est dans l'aperçu si on
clique sur le bouton imprimer, la boîte de dialoge apparaît, ce que je ne
souhaite pas. Je voudrais, soit que l'impression se lance directement sans
ouverture de la boîte de dialoge, soit désactiver le bouton imprimer pour
obliger l'utilisateur à fermer l'aperçu ce qui déclenche le message
"...voulez-vous imprimer ?"

Par ailleurs, peut-on "poser" un msgbox par dessus l'aperçu avant impression
?

J'espère avoir été assez claire cette fois-ci :-s

Merci encore mille fois pour votre aide.

Cordialement.

Woody.

"Woody" a écrit dans le message de news:
%
Bonjour,

Merci beaucoup à tous les deux. Je vais tester tout ça et je vous tiens au
courant.

Cordialement.

Woody.

"anonymousA" a écrit dans le message de news:
472a338e$0$21150$
Bonjour,

en // de ce que t'indique JB, voici une autre approche due à Alain CROS.

http://groups.google.fr/group/microsoft.public.fr.excel/browse_frm/thread/f160ec47ae269be7/446de0a9e7510858?hl=fr&lnk=st&q=#446de0a9e7510858

A+

Bonsoir,

Avec l'aide reçue sur ce newsgroup (Merci!) je capte l'événement
BeforePrint pour n'imprimer que la zone que je veux imprimer. Cependant
je présente à l'opérateur un aperçu avant impression. Là l'opérateur
peut relancer une nouvelle impression en cliquant sur le bouton Imprimer
de l'aperçu, ce que je ne veux pas! Comment désactiver ce bouton
Imprimer (dans l'aperçu) : il n'est pas accessible comme un bouton de
barre d'outils?
Merci pour votre aide!

Woody