Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Macro PRINT PREVIEW et PRINT à Corriger

  • Initiateur de la discussion Initiateur de la discussion MisterT
  • 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 !

MisterT

XLDnaute Occasionnel
Bonjour à chacun, 🙂

Avec mon peu de connaissance VBA, j'ai amassé ici et là des infos pour créer une Macro pour faire un Print Preview et un Print d'une zone définie incluant le PAGE SETUP.

Le Print Preview et Print fonctionnent mais ne tiennent pas compte du PAGE SETUP que je demande.

Est-ce que quelqu'un accepterais de regarder le code et corriger l'erreur, ce serait très apprécié ?

Code:
Sub PrintPreview()
Application.ScreenUpdating = False
Dim Answer As String

Sheets("WELCOME").Select

PRINT_PAGE_SETUP
Range("$A$1:$M$38").Select
ActiveSheet.PrintPreview
Application.ScreenUpdating = True
Answer = MsgBox(Prompt:="Do you want to Print the Personalized Tensions?", _
Title:="Print Confirmation", _
Buttons:=vbYesNo)

If Answer <> vbYes Then
Range("A1").Select
Exit Sub
End If
Application.ScreenUpdating = False

ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1
Range("A1").Select
Application.ScreenUpdating = True
End Sub
________________________________
Sub RapidPrint()
Application.ScreenUpdating = False
Sheets("WELCOME").Select
Range("$A$1:$M$38").Select
PRINT_PAGE_SETUP
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1
Range("A1").Select
Application.ScreenUpdating = True
End Sub
________________________________
Sub PRINT_PAGE_SETUP()
With ActiveSheet.PageSetup
.PrintArea = "$A$1:$M$38"
.CenterHorizontally = True
.CenterVertically = True
.Orientation = xlLandscape
.PaperSize = xlPaperLetter
.BlackAndWhite = False
.LeftMargin = Application.InchesToPoints(0.5)
.RightMargin = Application.InchesToPoints(0.5)
.TopMargin = Application.InchesToPoints(0.5)
.BottomMargin = Application.InchesToPoints(0.5)
.HeaderMargin = Application.InchesToPoints(0.5)
.FooterMargin = Application.InchesToPoints(0.5)
End With
End Sub

Merci et bonne journée,

MisterT 🙂
 
Re : Macro PRINT PREVIEW et PRINT à Corriger

Bonjour à tous,

Peux-tu essayer avec :

Code:
Option Explicit

Sub Print_Preview()
Application.ScreenUpdating = False
Dim Answer As String

Sheets("WELCOME").Select

PRINT_PAGE_SETUP
Range("$A$1:$M$38").Select
ActiveSheet.PrintPreview
Application.ScreenUpdating = True
Answer = MsgBox(Prompt:="Do you want to Print the Personalized Tensions?", _
Title:="Print Confirmation", _
Buttons:=vbYesNo)

If Answer <> vbYes Then
Range("A1").Select
Exit Sub
End If
Application.ScreenUpdating = False
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1
Range("A1").Select
Application.ScreenUpdating = True
End Sub


Sub RapidPrint()
Application.ScreenUpdating = False
Sheets("WELCOME").Select
Range("$A$1:$M$38").Select
PRINT_PAGE_SETUP
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1
Range("A1").Select
Application.ScreenUpdating = True
End Sub


Sub PRINT_PAGE_SETUP()
With ActiveSheet.PageSetup
.PrintArea = "$A$1:$M$38"
.CenterHorizontally = True
.CenterVertically = True
.Orientation = xlLandscape
.PaperSize = xlPaperA4
.BlackAndWhite = False
.LeftMargin = Application.InchesToPoints(0.5)
.RightMargin = Application.InchesToPoints(0.5)
.TopMargin = Application.InchesToPoints(0.5)
.BottomMargin = Application.InchesToPoints(0.5)
.HeaderMargin = Application.InchesToPoints(0.5)
.FooterMargin = Application.InchesToPoints(0.5)
End With
End Sub
Tu avais des UnderScores ou Tirets Bas intempestifs dans le code (__________)

A+ à tous
 
Dernière édition:
Re : Macro PRINT PREVIEW et PRINT à Corriger

Bonjour JCGL 🙂

Merci pour ta réponse !

En fait, j'ai ajouté les UnderScores uniquement dans le Post pour bien séparer les Macros visuellement, désolé pour l'inconvénient !

À bientôt,

MisterT
 
Re : Macro PRINT PREVIEW et PRINT à Corriger

Bonjour à tous et merci à jetted et JCGL,

Effectivement le code fonctionne bien et j'ai fait quelques essais en changeant les marges de 0.5 à 0.1 et cela a fonctionné.

Les marges 0.5 dans le code donnent des marges de 1.3 dans le Page Setup d'Excel et les marges de 0.1 dans le code donnent 0.3 , ce qui convient.

Je constate donc que ma confusion était que le code est en pouce et la mise en page d'Excel est en cm; 0.5 po équivaut approximativement à 1.3 cm.

J'avais l'habitude de mettre des marges de 0.5 dans la mise en page Excel en pensant qu'il s'agissait de pouces.🙄

Merci encore jetted et JCGL d'avoir pris le temps de regarder mon code et de me répondre !

Bonne journée,
MisterT🙂
 
- 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

Discussions similaires

Réponses
7
Affichages
366
Réponses
10
Affichages
791
Réponses
5
Affichages
910
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…