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

Ajustement automatique plage d'impression

  • Initiateur de la discussion Initiateur de la discussion celiostat
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

C

celiostat

Guest
Bonjour a la communaute,

Je realise des bons de commande sur Excel.
Ceux-ci peuvent faire 12 lignes ou 70 lignes. Dans une perspective d'automatisation, je souhaiterais -si la fonction existe- pouvoir ajuster automatiquement le plage d'impression en fonction du contenu, de maniere a ce que le feuille soit prete a imprimer a tout instant sans avoir a passer par le mode mise en page/page break view.

La cerise sur le gateau serait que l'ajustement se fasse seulement sur la hauteur.

Je n'ai pas trouve de solution pour le moment !
Merci a tous pour votre aide 🙂
 
Re : Ajustement automatique plage d'impression

Bonjour celiostat,

Voici un fichier exemple avec une macro événementielle :

Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
With ActiveSheet.PageSetup
  .PrintArea = Range("A1").CurrentRegion.Address
  .FitToPagesTall = 1
End With
End Sub
Cette macro est exécutée autompatiquement lorsque tu lances l'impression du fichier, que ce soit par le bouton ou par le menu.

Tu n'as plus qu'à recopier ce code dans ton fichier, en notant que si ton tableau ne démarre pas en cellule A1, tu remplaceras cette référence par celle de n'importe quelle cellule de ton tableau.

Cordialement.
 

Pièces jointes

Re : Ajustement automatique plage d'impression

Bonjour Papour-net,

merci pour ton retour,
cependant, cela ne correspond pas entierement a l'effet recherche, car je voudrais figer la largeur de colonne, et que l'ajustement ne se fasse que verticalement, en fonction du nombre de lignes !

....
hum
 
Re : Ajustement automatique plage d'impression

Bonjour celiostat,

Au temps pour moi, dans mon esprit "ajustement vertical" voulait dire une seule page en hauteur.

Tu peux donc essayer le code suivant :

Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
With ActiveSheet.PageSetup
  .PrintArea = Range("A1").CurrentRegion.Address
  .FitToPagesWide = 1
  .FitToPagesTall = False
End With
End Sub
Curieusement, si le nombre de colonnes dépasse un certain seuil, l'ajustement sur une seule page en largeur ne se fait plus. Je pense que c'est dû au fait que la taille des caractères ne serait plus compatible avec la taille de la page.

Cordialement.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…