VBA problème de bordures lors d'une deuxième impression

Claire_57 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'ai un petit souci mais qui me prend grandement la tête... pouvez vous m'aider?

J'ai créé un tableau sur excel (avc des bordures). Puis j'ai créé une macro qui me permet de mettre en forme la page (en tete....)et d'imprimer le tableau selon certaines conditions. J'ai ensuite créé un bouton pour utiliser cette macro.
Lorsque j'ouvre mon fichier je clique une première fois sur mon bouton : tout fonctionne correctement, je clique une deuxième fois sur mon bouton et les bordures ne s'affichent plus correctement (les lignes pointillées deviennent pleines, certaines s'effacent...).

Avez vous une idée d'où peut provenir ce problème?? j'ai du mal à croire que le pb vienne de ma macro puisque le premier coup ça marche. J'ai essayé sur un autre pc (et une autre imprimante) mais ça ne change rien.

Voici mon code (on ne sait jamais ^^) :

Sub Macro5()
'
' Macro5 "Impression des plannings S2"
'

'mise en forme de l'en tête

With Worksheets("Plannings").PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = "$B:$C"
End With
Worksheets("Plannings").PageSetup.PrintArea = "$D$2:$E$10"
With Worksheets("Plannings").PageSetup
.LeftHeader = "&G"
.CenterHeader = _
"&""Arial,Gras""&24Planning" & Chr(10) & Worksheets("Plannings").Cells(102, 1) & Chr(10) & Worksheets("Plannings").Cells(103, 1) & Chr(10) & "Sous réserve de modification"
.RightHeader = "&""Arial,Gras""&12ATT DARTY" & Chr(10) & "Alsace Lorraine"
.LeftFooter = _
"Sauf mention contraire," & Chr(10) & "ligne non complétée" & Chr(10) & "=erreur à signaler impérativement" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & ""
.CenterFooter = _
"&13édité le :" & Chr(10) & "&D" & Chr(10) & "sous réserve de modification" & Chr(10) & "" & Chr(10) & "&""Arial,Gras""&16L'intéressé :" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & ""
.RightFooter = "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "&11" & Chr(10) & "&""Arial,Gras""&16Le responsable :" & Chr(10) & "&G"
.LeftMargin = Application.InchesToPoints(1.37795275590551)
.RightMargin = Application.InchesToPoints(0.511811023622047)
.TopMargin = Application.InchesToPoints(2.24409448818898)
.BottomMargin = Application.InchesToPoints(1.96850393700787)
.HeaderMargin = Application.InchesToPoints(0.708661417322835)
.FooterMargin = Application.InchesToPoints(0.31496062992126)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintSheetEnd
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlPortrait
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 70
.PrintErrors = xlPrintErrorsDisplayed
End With


Dim colonne As Integer

Application.ScreenUpdating = False

colonne = 4
Worksheets("plannings").Select
While Worksheets("plannings").Cells(102, colonne) <> 0

Range(Cells(102, colonne), Cells(119, colonne + 1)).Select 'selection de la zone d'impression
ActiveSheet.PageSetup.PrintArea = Selection.Address ' application de la zone d'impression
ActiveWindow.SelectedSheets.PrintOut Copies:=1 ' impression
colonne = colonne + 2

Wend
Application.ScreenUpdating = True
End Sub

Donc si vous avez une idée...
A voir également:

1 réponse

lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Bonjour,
J'ai créé un tableau sur excel (avc des bordures). Puis j'ai créé une macro qui me permet de mettre en forme la page (en tete....)et d'imprimer le tableau selon certaines conditions.
Ta macros ne met pas les données dans ton tableau, tu change simplement l'adresse de la plage d'impression, dés lors, si ces colonnes ne sont pas formatées comme ton tableau il n'y a plus de format.
Pour ce que tu veux faire tu devrais formater un tableau vide et à la place de modifier le pageSetup coller les valeurs succesive dans le tableau.
A+

Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
0