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 !
Je souhaiterai automatiser une impression après avoir inseré des sauts de pages de façon a avoir toutes les colonnes sur une page et autant de pages que de saut de pages
J'ai mis en exemple ce que j'ai écris, mais je ne trouve pas la solution 🙁.
bonjour
rien de plus simple
tu détermine la plage utilisées (tu veux l'arrêter a "M" visiblement)
ensuite te reste plus qu'a déplacer les sauts de pages
on vire les marge les header et tout y cointi
bref le pagesetup on fait le minimum
et voila terminé tes tableaux seront chacun dans une page
même si ils n'auront pas la même dimension
et cette macro est valable pour toutes tes feuilles (test...)
VB:
Sub ImpressionModulé()'patricktoulon (solution sur pc (2))Dim cel As Range, Plage As Range, hp&With ActiveSheet
Set Plage =.UsedRange.Resize(,13)'on s'arrête a "M"'le minimum pour le page setupWith.PageSetup
.PrintArea = Plage.Address
.PaperSize = xlPaperA4...
bonjour, merci pour la capture mais je cherche a automatiser ça pour mes collègues qui ne sont vraiment pas doué en informatique et pour qui définir une zone d'impression et gérer les saut de page est trop compliqué ...
bonjour
rien de plus simple
tu détermine la plage utilisées (tu veux l'arrêter a "M" visiblement)
ensuite te reste plus qu'a déplacer les sauts de pages
on vire les marge les header et tout y cointi
bref le pagesetup on fait le minimum
et voila terminé tes tableaux seront chacun dans une page
même si ils n'auront pas la même dimension
et cette macro est valable pour toutes tes feuilles (test...)
VB:
Sub ImpressionModulé()'patricktoulon (solution sur pc (2))Dim cel As Range, Plage As Range, hp&With ActiveSheet
Set Plage =.UsedRange.Resize(,13)'on s'arrête a "M"'le minimum pour le page setupWith.PageSetup
.PrintArea = Plage.Address
.PaperSize = xlPaperA4
.LeftMargin =0.RightMargin =0.TopMargin =0.BottomMargin =0.HeaderMargin =0.FooterMargin =0.CenterHorizontally =True.CenterVertically =True.Orientation = xlLandscape
EndWith
DoEvents
'on déplace les sauts de pages au niveau des cellules fusionnées (titre de tableau)ForEach cel In Plage.Columns(1).Cells
If cel.MergeCells =TrueAnd cel.Row >2Then
hp = hp +1:Set.HPageBreaks(hp).Location = cel
EndIfNext.PrintPreview
EndWithEndSub
et si tu veux les faires toutes sauf bien évidemment la feuille "x"
Code:
Sub GoPrintAll()
Dim sh As Worksheet
For Each sh In Worksheets
If sh.Name <> "x" Then
sh.Activate: ImpressionModulé
End If
Next
End Sub
voila te reste plus qu'a remplacer "printpreview" par "printout" pour imprimer vraiment 😉
bonjour
rien de plus simple
tu détermine la plage utilisées (tu veux l'arrêter a "M" visiblement)
ensuite te reste plus qu'a déplacer les sauts de pages
on vire les marge les header et tout y cointi
bref le pagesetup on fait le minimum
et voila terminé tes tableaux seront chacun dans une page
même si ils n'auront pas la même dimension
et cette macro est valable pour toutes tes feuilles (test...)
VB:
Sub ImpressionModulé()'patricktoulon (solution sur pc (2))Dim cel As Range, Plage As Range, hp&With ActiveSheet
Set Plage =.UsedRange.Resize(,13)'on s'arrête a "M"'le minimum pour le page setupWith.PageSetup
.PrintArea = Plage.Address
.PaperSize = xlPaperA4
.LeftMargin =0.RightMargin =0.TopMargin =0.BottomMargin =0.HeaderMargin =0.FooterMargin =0.CenterHorizontally =True.CenterVertically =True.Orientation = xlLandscape
EndWith
DoEvents
'on déplace les sauts de pages au niveau des cellules fusionnées (titre de tableau)ForEach cel In Plage.Columns(1).Cells
If cel.MergeCells =TrueAnd cel.Row >2Then
hp = hp +1:Set.HPageBreaks(hp).Location = cel
EndIfNext.PrintPreview
EndWithEndSub
et si tu veux les faires toutes sauf bien évidemment la feuille "x"
Code:
Sub GoPrintAll()
Dim sh As Worksheet
For Each sh In Worksheets
If sh.Name <> "x" Then
sh.Activate: ImpressionModulé
End If
Next
End Sub
- 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