J'ai une macro dans laquelle je définis une zone d'impression, puis j'applique un filtre (ce qui a pour effet de masquer certaines lignes, ceci afin qu'elles ne soient pas imprimées), puis je définis les paramètres d'impression, et enfin je lance l'impression.
Dans les paramètres d'impression, j'utilise ActiveSheet.PageSetup.PrintComments = xlPrintNoComments
Le problème, c'est les commentaires sont tout de même imprimés, en fin de page.
J'ai cherché sur le Net et suis tombé sur quelqu'un qui, ne trouvant pas de réponse, palliait le problème en n'imprimant que la première page.
L'astuce est bonne. Mais quelqu'un saurait-il me dire pourquoi l'impression ne tient pas compte de ce paramètre, et comment faire pour que le paramètre soit pris en compte ?
Je cherchais depuis plusieurs heures, et il suffit que je pose la question ici pour finir par avoir une idée lumineuse... lol
En tout cas, ça fonctionne chez moi.
Je positionne tout simplement la valeur de PrintComments pendant que la communication avec l'imprimante est active.
VB:
Application.PrintCommunication = False
With ActiveSheet.PageSetup
.LeftHeader = ""
...
.FirstPage.RightFooter.Text = ""
End With
Application.PrintCommunication = True
ActiveSheet.PageSetup.PrintComments = xlPrintNoComments
ActiveSheet.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
Bon, on ne peut toujours pas peindre en vert la réponse finale, dommage...
Je cherchais depuis plusieurs heures, et il suffit que je pose la question ici pour finir par avoir une idée lumineuse... lol
En tout cas, ça fonctionne chez moi.
Je positionne tout simplement la valeur de PrintComments pendant que la communication avec l'imprimante est active.
VB:
Application.PrintCommunication = False
With ActiveSheet.PageSetup
.LeftHeader = ""
...
.FirstPage.RightFooter.Text = ""
End With
Application.PrintCommunication = True
ActiveSheet.PageSetup.PrintComments = xlPrintNoComments
ActiveSheet.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
Bon, on ne peut toujours pas peindre en vert la réponse finale, dommage...
Je cherchais depuis plusieurs heures, et il suffit que je pose la question ici pour finir par avoir une idée lumineuse... lol
En tout cas, ça fonctionne chez moi.
Je positionne tout simplement la valeur de PrintComments pendant que la communication avec l'imprimante est active.
VB:
Application.PrintCommunication = False
With ActiveSheet.PageSetup
.LeftHeader = ""
...
.FirstPage.RightFooter.Text = ""
End With
Application.PrintCommunication = True
ActiveSheet.PageSetup.PrintComments = xlPrintNoComments
ActiveSheet.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
Bon, on ne peut toujours pas peindre en vert la réponse finale, dommage...