OVH Cloud OVH Cloud

impression independante de l'imprimante

3 réponses
Avatar
J
Bonjour à tous
Mon classeur est destiné à aller sur pleins de machines, et
d'imprimantes. La largeur des feuilles varie selon le contexte, j'essaie
que l'impression s'adapte automatiquement.

Je pensais avoir mon bonheur avec le code suivant,ma feuille est en
paysage, le réglage vertical est correct (variation de qq %),
mais en largeur cela ne marche pas, la largeur de feuille étant variable
quasi du simple au double.
'****
Private Sub Workbook_BeforePrint(Cancel As Boolean)
With ActiveSheet.PageSetup
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = 1
End With
End Sub
'****
J'ai essayé alors le code suivant mais ça plante
***
Private Sub Workbook_BeforePrint(Cancel As Boolean)
With ActiveSheet.PageSetup
If .Zoom.Value < 70 Then '*plantage : objet requis*
.FitToPagesWide = 2
.FitToPagesTall = 1
Else
.FitToPagesWide = 1
.FitToPagesTall = 1
End If
End With
End Sub
***

merci pour l'aide
J@@

3 réponses

Avatar
Daniel
Bonjour.
Mets :
If .Zoom < 70 Then
Cordialement.
Daniel
"J@@" a écrit dans le message de news:
%
Bonjour à tous
Mon classeur est destiné à aller sur pleins de machines, et d'imprimantes.
La largeur des feuilles varie selon le contexte, j'essaie que l'impression
s'adapte automatiquement.

Je pensais avoir mon bonheur avec le code suivant,ma feuille est en
paysage, le réglage vertical est correct (variation de qq %),
mais en largeur cela ne marche pas, la largeur de feuille étant variable
quasi du simple au double.
'****
Private Sub Workbook_BeforePrint(Cancel As Boolean)
With ActiveSheet.PageSetup
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = 1
End With
End Sub
'****
J'ai essayé alors le code suivant mais ça plante
***
Private Sub Workbook_BeforePrint(Cancel As Boolean)
With ActiveSheet.PageSetup
If .Zoom.Value < 70 Then '*plantage : objet requis*
.FitToPagesWide = 2
.FitToPagesTall = 1
Else
.FitToPagesWide = 1
.FitToPagesTall = 1
End If
End With
End Sub
***

merci pour l'aide
J@@


Avatar
J
Bonjour Daniel
Ca ne plante plus, mais c'est moi qui me plante. J'ai réfléchi à l'envers.
Voici ce que je cherche à faire:
***
If ça dépasse Then zoom un peu pour que ça tienne en 1 page
If tu zoomes trop,c'est illisible (<70) Then mets donc ça en 2 pages
***
As-tu une idée?
merci d'avance
cordialement
J@@

Daniel wrote:
Bonjour.
Mets :
If .Zoom < 70 Then
"J@@" <
Mon classeur est destiné à aller sur pleins de machines, et d'imprimantes.
La largeur des feuilles varie selon le contexte, j'essaie que l'impression
s'adapte automatiquement.

Je pensais avoir mon bonheur avec le code suivant,ma feuille est en
paysage, le réglage vertical est correct (variation de qq %),
mais en largeur cela ne marche pas, la largeur de feuille étant variable
quasi du simple au double.

Private Sub Workbook_BeforePrint(Cancel As Boolean)
With ActiveSheet.PageSetup
If .Zoom.Value < 70 Then '*plantage : objet requis*
.FitToPagesWide = 2
.FitToPagesTall = 1
Else
.FitToPagesWide = 1
.FitToPagesTall = 1
End If
End With
End Sub
***




Avatar
Daniel
Ou je me plante, ou le zoom régit seulement l'affichage, pas l'impression ?
Daniel
"J@@" a écrit dans le message de news:

Bonjour Daniel
Ca ne plante plus, mais c'est moi qui me plante. J'ai réfléchi à l'envers.
Voici ce que je cherche à faire:
***
If ça dépasse Then zoom un peu pour que ça tienne en 1 page
If tu zoomes trop,c'est illisible (<70) Then mets donc ça en 2 pages
***
As-tu une idée?
merci d'avance
cordialement
J@@

Daniel wrote:
Bonjour.
Mets :
If .Zoom < 70 Then
"J@@" <
Mon classeur est destiné à aller sur pleins de machines, et
d'imprimantes. La largeur des feuilles varie selon le contexte, j'essaie
que l'impression s'adapte automatiquement.

Je pensais avoir mon bonheur avec le code suivant,ma feuille est en
paysage, le réglage vertical est correct (variation de qq %),
mais en largeur cela ne marche pas, la largeur de feuille étant variable
quasi du simple au double.

Private Sub Workbook_BeforePrint(Cancel As Boolean)
With ActiveSheet.PageSetup
If .Zoom.Value < 70 Then '*plantage : objet requis*
.FitToPagesWide = 2
.FitToPagesTall = 1
Else
.FitToPagesWide = 1
.FitToPagesTall = 1
End If
End With
End Sub
***