Code pour la mise en page génère une erreur mais pas en mode pas à pas.
Bonjour à toutes et tous et merci de votre temps et de votre aide.
J'ai des trucs étranges avec le code suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
| '=== Mise en page de la feuille exportée
Application.PrintCommunication = False
With WS_B_A.PageSetup
.PrintTitleRows = "$1:$10"
.PrintTitleColumns = ""
.PrintArea = ""
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = "Page &P &N"
.RightFooter = ""
.LeftMargin = Application.InchesToPoints(0.236220472440945)
.RightMargin = Application.InchesToPoints(0.236220472440945)
.TopMargin = Application.InchesToPoints(0.748031496062992)
.BottomMargin = Application.InchesToPoints(0.748031496062992)
.HeaderMargin = Application.InchesToPoints(0.31496062992126)
.FooterMargin = Application.InchesToPoints(0.31496062992126)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = 600
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlPortrait
.Draft = False
.PaperSize = 124
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = 0
.PrintErrors = xlPrintErrorsDisplayed
.OddAndEvenPagesHeaderFooter = False
.DifferentFirstPageHeaderFooter = False
.ScaleWithDocHeaderFooter = True
.AlignMarginsHeaderFooter = True
.EvenPage.LeftHeader.Text = ""
.EvenPage.CenterHeader.Text = ""
.EvenPage.RightHeader.Text = ""
.EvenPage.LeftFooter.Text = ""
.EvenPage.CenterFooter.Text = ""
.EvenPage.RightFooter.Text = ""
.FirstPage.LeftHeader.Text = ""
.FirstPage.CenterHeader.Text = ""
.FirstPage.RightHeader.Text = ""
.FirstPage.LeftFooter.Text = ""
.FirstPage.CenterFooter.Text = ""
.FirstPage.RightFooter.Text = ""
End With
Application.PrintCommunication = True
'=== Mise en page de la feuille exportée |
WS_B_A est la seule feuille de ce classeur qui est de type xlsx.
- Si je l'exécute sans gérer les erreur (pas de On Error Goto) j'ai un message "Erreur 400".
- Si je l'exécute avec une gestion d'erreur j'ai le message : "Erreur 1004, La méthode 'PrintCommunication' de l'objet _Application a échoué.
- Si je l'exécute en mode pas à pas, je n'ai pas d'erreur MAIS il ne fait pas la mise en page non plus.
- Si je mets un point d'arrêt sur la ligne Application.PrintCommunication = True, je n'ai pas d'erreur MAIS il ne fait pas la mise en page non plus.
Je ne sais pas si c'est important mais je suis avec Windows 10.
Quand j'ai développé ce code j'étais avec Windows 7 et Excel 2010.
Si quelqu'un a une idée, je suis preneur.
A+