OVH Cloud OVH Cloud

Problème Impression classeur excel

3 réponses
Avatar
Martinez Luc
Bonjour,

J'ai un problème d'impression d'un classeur excel contenant des feuilles
en paysages et d'autres en portrait.
Quand je choisis d'imprimer classeur entier, l'impression me donne des
feuilles mal imprimées et d'autres bien imprimées. (déborde sur 2 pages ou
est rétrécit par rapport à la taille attendu)

Quelqu'un pourrait m'aider à résoudre ce problème.

Merci.

PS: J'utilise Excel 2000 en SP3

--
Utiliser M2, client de messagerie révolutionnaire de Opera :
http://www.opera.com/m2/

3 réponses

Avatar
michdenis
Bonjour Luc,

Si tu sais et connait les feuilles de ton classeur devant s'imprimer en mode "Portrait" pendant que d'autres
s'imprimeront en mode "Paysage", tu peux copier cette procédure dans le ThisWorkbook de ton classeur :


'-----------------------------------
Private Sub Workbook_BeforePrint(Cancel As Boolean)

Dim Arr()

'Toutes les feuilles du classeur devant
's'imprimer avec le mode portrait
Arr = Array("Feuil1", "Feuil2") ' à déterminer....

For Each Sh In ActiveWindow.SelectedSheets
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
With Sheets(Sh.Name).PageSetup
.Orientation = xlPortrait
'autres caractéristiques d'impression que tu peux ajouter
End With
Else
Err = 0
With Sheets(Sh.Name).PageSetup
.Orientation = xlLandscape
'autres caractéristiques d'impression que tu peux ajouter
End With
End If
Next

End Sub
'-----------------------------------


Salutations!



"Martinez Luc" a écrit dans le message de news:

Bonjour,

J'ai un problème d'impression d'un classeur excel contenant des feuilles
en paysages et d'autres en portrait.
Quand je choisis d'imprimer classeur entier, l'impression me donne des
feuilles mal imprimées et d'autres bien imprimées. (déborde sur 2 pages ou
est rétrécit par rapport à la taille attendu)

Quelqu'un pourrait m'aider à résoudre ce problème.

Merci.

PS: J'utilise Excel 2000 en SP3

--
Utiliser M2, client de messagerie révolutionnaire de Opera :
http://www.opera.com/m2/
Avatar
michdenis
Bonjour Luc,

Attention :
Ce n'est pas la coutume de publier des classeurs exemple sur le Forum même si ces derniers sont tout "légers."

À défaut d'avoir un commentaire plus précis sur le pourquoi du non fonctionnement, je te suggère ceci :

Je suis bien conscient que la méthode suggérée a ses limites. Si tu as une grande feuille et que tu veuilles imprimer
une partie de cette feuille avec une orientation Portrait et d'autres sections de la même feuille, une orientation
"Landscape" , Tu dois alors connaître et désigner toutes tes plages ....en utilisant la fonction
activesheet.pagesetup.PRINTAREA. Tu peux consulter l'aide sur PRINTAREA. Mais aussi bien le dire toute suite ... c'est
pas du gâteau !

Si tu fais des trucs particuliers et que tu veuilles en automatiser l'impression, regarde du côté de la commande
"Affichages Personnalisés" du menu "Affichage " et "Gestion de Rapports" (cela requiert l'installation de la macro
complémentaire : "Gestionnaire de Rapports (barre des menus / outils / Macro Complémentaires), Ces "vues personnalisées"
conservent toutes les caractéristiques d'impression (et plus) que tu auras déterminé... cela peut faire gagner beaucoup
de temps si tu dois imprimer ce rapport ultérieurement. Pour plus de détails... consulte l'aide d'excel ...!


Salutations!





"Martinez Luc" a écrit dans le message de news:

Merci pour ton aide,
mais ton bout de script ne résoud pas mon problème je joint un fichier
exemple.

Le Fri, 3 Dec 2004 16:10:34 -0500, michdenis a

Bonjour Luc,

Si tu sais et connait les feuilles de ton classeur devant s'imprimer en
mode "Portrait" pendant que d'autres
s'imprimeront en mode "Paysage", tu peux copier cette procédure dans le
ThisWorkbook de ton classeur :


'-----------------------------------
Private Sub Workbook_BeforePrint(Cancel As Boolean)

Dim Arr()

'Toutes les feuilles du classeur devant
's'imprimer avec le mode portrait
Arr = Array("Feuil1", "Feuil2") ' à déterminer....

For Each Sh In ActiveWindow.SelectedSheets
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
With Sheets(Sh.Name).PageSetup
.Orientation = xlPortrait
'autres caractéristiques d'impression que tu peux ajouter
End With
Else
Err = 0
With Sheets(Sh.Name).PageSetup
.Orientation = xlLandscape
'autres caractéristiques d'impression que tu peux ajouter
End With
End If
Next

End Sub
'-----------------------------------


Salutations!



"Martinez Luc" a écrit dans le message de
news:

Bonjour,

J'ai un problème d'impression d'un classeur excel contenant des feuilles
en paysages et d'autres en portrait.
Quand je choisis d'imprimer classeur entier, l'impression me donne des
feuilles mal imprimées et d'autres bien imprimées. (déborde sur 2 pages
ou
est rétrécit par rapport à la taille attendu)

Quelqu'un pourrait m'aider à résoudre ce problème.

Merci.

PS: J'utilise Excel 2000 en SP3



Avatar
Martinez Luc
Désolé je ne savais pas le fichier joint. Milles excuses !!!
Je te remercie pour ta réponse et je regarde ce qu'elle peut apporter.
Je vous tiens au courant si j'ai résolu mon problème.

Merci

Le Mon, 6 Dec 2004 09:14:08 -0500, michdenis a

Bonjour Luc,

Attention :
Ce n'est pas la coutume de publier des classeurs exemple sur le Forum
même si ces derniers sont tout "légers."

À défaut d'avoir un commentaire plus précis sur le pourquoi du non
fonctionnement, je te suggère ceci :

Je suis bien conscient que la méthode suggérée a ses limites. Si tu as
une grande feuille et que tu veuilles imprimer
une partie de cette feuille avec une orientation Portrait et d'autres
sections de la même feuille, une orientation
"Landscape" , Tu dois alors connaître et désigner toutes tes plages
....en utilisant la fonction
activesheet.pagesetup.PRINTAREA. Tu peux consulter l'aide sur PRINTAREA.
Mais aussi bien le dire toute suite ... c'est
pas du gâteau !

Si tu fais des trucs particuliers et que tu veuilles en automatiser
l'impression, regarde du côté de la commande
"Affichages Personnalisés" du menu "Affichage " et "Gestion de Rapports"
(cela requiert l'installation de la macro
complémentaire : "Gestionnaire de Rapports (barre des menus / outils /
Macro Complémentaires), Ces "vues personnalisées"
conservent toutes les caractéristiques d'impression (et plus) que tu
auras déterminé... cela peut faire gagner beaucoup
de temps si tu dois imprimer ce rapport ultérieurement. Pour plus de
détails... consulte l'aide d'excel ...!


Salutations!





"Martinez Luc" a écrit dans le message de
news:

Merci pour ton aide,
mais ton bout de script ne résoud pas mon problème je joint un fichier
exemple.

Le Fri, 3 Dec 2004 16:10:34 -0500, michdenis a

Bonjour Luc,

Si tu sais et connait les feuilles de ton classeur devant s'imprimer en
mode "Portrait" pendant que d'autres
s'imprimeront en mode "Paysage", tu peux copier cette procédure dans le
ThisWorkbook de ton classeur :


'-----------------------------------
Private Sub Workbook_BeforePrint(Cancel As Boolean)

Dim Arr()

'Toutes les feuilles du classeur devant
's'imprimer avec le mode portrait
Arr = Array("Feuil1", "Feuil2") ' à déterminer....

For Each Sh In ActiveWindow.SelectedSheets
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
With Sheets(Sh.Name).PageSetup
.Orientation = xlPortrait
'autres caractéristiques d'impression que tu peux ajouter
End With
Else
Err = 0
With Sheets(Sh.Name).PageSetup
.Orientation = xlLandscape
'autres caractéristiques d'impression que tu peux ajouter
End With
End If
Next

End Sub
'-----------------------------------


Salutations!



"Martinez Luc" a écrit dans le message de
news:

Bonjour,

J'ai un problème d'impression d'un classeur excel contenant des feuilles
en paysages et d'autres en portrait.
Quand je choisis d'imprimer classeur entier, l'impression me donne des
feuilles mal imprimées et d'autres bien imprimées. (déborde sur 2 pages
ou
est rétrécit par rapport à la taille attendu)

Quelqu'un pourrait m'aider à résoudre ce problème.

Merci.

PS: J'utilise Excel 2000 en SP3