Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

definition impression

eduraiss

XLDnaute Accro
Bonjour le forum
j'ai un problème au niveau de l'impression
J'ai un code (ci_dessous) qui me permet de faire plusieurs copies (trois copies) mais il arrive parfois que si une colonne est agrandie l'impression se fait en double (donc 6 feuilles)

comment faire que même si une colonne est agrandie je sorte qu'un trois feuilles
merci a vous

'impression Z1A
Range("B1:J40").Select
ActiveSheet.PageSetup.PrintArea = "$B$1:$J$40"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Range("B2").Select

'impression Z1B
Range("B41:J89").Select
ActiveSheet.PageSetup.PrintArea = "$B$41:$J$89"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Range("B2").Select

'impression Z3
Range("B90:J149").Select
ActiveSheet.PageSetup.PrintArea = "$B$90:$J$143"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Range("B2").Select
 

Staple1600

XLDnaute Barbatruc
Re : definition impression

Bonsoir

En nommant tes plages dynamiquement

cf recherche sur le forum

mot-clé: plage dynamique

un exemple extrait du forum
(Plage dynamique de nom Plage01 par rapport au nombre de lignes en G à partir de la cel G9

=DECALER('Feuille01'!$G$9:$G$9;;;NBVAL(Feuille01!$ G:$G))
 
Dernière édition:

ballmaster

XLDnaute Occasionnel
Re : definition impression

Essaie ca, à partir de ton code :

'impression Z1A
Range("B1:J40").Select
with ActiveSheet.PageSetup
.PrintArea = "$B$1:$J$40"
.FitToPagesWide = 1
.FitToPagesTall = 1
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Range("B2").Select
 

eduraiss

XLDnaute Accro
Re : definition impression

bonsoir a tous les deux
ballmaster ta ligne ci-dessous ne fonctionne pas elle s'affiche en rouge

.FitToPagesTall = 1ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True


merci a
A+
 

ballmaster

XLDnaute Occasionnel
Re : definition impression

Autant pour moi

Celle-là fonctionne, j'ai testé

Sub test()
'impression Z1A
Range("B1:J40").Select
With ActiveSheet.PageSetup
.PrintArea = "$B$1:$J$40"
.FitToPagesWide = 1
.FitToPagesTall = 1
End With
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Range("B2").Select
End Sub
 

eduraiss

XLDnaute Accro
Re : definition impression

Re

je joins un fichier avec ta macro

si j'élargis une colonne la zone d'impression varie elle aussi
A+
 

Pièces jointes

  • eric.zip
    7.1 KB · Affichages: 58
  • eric.zip
    7.1 KB · Affichages: 53
  • eric.zip
    7.1 KB · Affichages: 51

chris

XLDnaute Barbatruc
Re : definition impression

Bonjour
Dans le code qui imprime la plage, il faut
.FitToPagesWide = 1 'pour limiter à une page en largeur
.FitToPagesTall = False 'pour ne pas limiter le nombre en hauteur
 

eduraiss

XLDnaute Accro
Re : definition impression

RE
Bonsoir Chris

il doit y avoir un problème voir le fichier eric ci-dessus j'ai bien mis ce code mais si je bouge une colonne pour l'élargir la zone d'impression imprimera deux feuilles


Merci

A+
 

Staple1600

XLDnaute Barbatruc
Re : definition impression

Re


Tu n'a pas essayer avec une plage de cellules nommée dynamiquement?

 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : definition impression

Re


Je cherche plus d'infos

Ps: j'ai édité mon précédent message

Il y un code VBA qui devrait pouvoir t'aider

Des infos sur les plages dynamiques
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : definition impression

Re

Si tu as bien nommée ta plage de cellules nommée

si tu insères une colonne dans celle-ci

la zone nommée en tiendra compte automatiquement

alors dans ton code tu marques

ActiveSheet.PageSetup.PrintArea = [plagenommee]
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…