Mise en page par vba En-tête, pied de pages, marges, ligne des titres à imprimer

KIM

XLDnaute Accro
Bonjour les ami(e)s, et le forum,
A chaque fois que je créé un nouveau fichier excel, je dois manuellement définir la mise en page de chaque feuille du classeur : En-tête et pied de page, les marges, la ligne des titres à imprimer si nécessaire. Cela me permet de retrouver facilement les fichiers de feuilles imprimées.

Pour gagner du temps, est-il possible de définir par vba, dans chaque feuille existante ou nouvellement créée ou dans ThisWorkbook, les éléments suivants:
En-tête partie droite : date de dernière sauvegarde
Pied de page
partie gauche : nom du classeur suivi du nom de l'onglet
partie centrale (du texte) : En cours de rédaction par TFB
partie droite : n° de la page sur nombre total de page

Police : Times new roman, couleur rouge, taille 8

Les marges : Haut 2 Bas 1,5 Gauche et Droite à 1,5

Merci d'avance de votre aide
KIM
 

Victor21

XLDnaute Barbatruc
Re : Mise en page par vba En-tête, pied de pages, marges, ligne des titres à imprimer

Bonsoir, kim.

Utilisez l'enregistreur de macro :
Outil, macro, nouvelle macro.
Effectuez les réglages décrits ci-dessus.
Il vous suffira de lancer cette macro sur tout nouveau document pour que la mise en page s'applique.

En cas de pb, revenez nous dire où, exactement, avec un exemple, "ca coince"
 

KIM

XLDnaute Accro
Re : Mise en page par vba En-tête, pied de pages, marges, ligne des titres à imprimer

Merci Victor21, & le Forum,
En effet je vais tester l'enregistreur de macro. Mais cela va me permettre de définir une mise en page sur une feuille. Mon but est de générercette mise en page sur des feuilles créées nouvellement par vba. Dans un classeur donné, je génère par vba plus de 60 feuilles. Je souhaite pouvoir définir cette mise en page pour l'ensemble de ces feuilles.

Merci d'avance
KIM
 

Victor21

XLDnaute Barbatruc
Re : Mise en page par vba En-tête, pied de pages, marges, ligne des titres à imprimer

Re,
Outils, macros, nouvelle macro, choisir enregistrer la macro dans : "classeur de macros personnelles".

Cette macro sera disponible chaque fois que tu ouvriras Excel sur ce poste.

En cas de besoin, poste ici le code généré si tu as du mal à l'adapter.

PS : choisir un titre explicite pour cette macro.
 

KIM

XLDnaute Accro
Re : Mise en page par vba En-tête, pied de pages, marges, ligne des titres à imprimer

Re, Victor21 & le Forum,
J'ai utilisé l'enregistreur de macro et après lecture de certains fils sur le sujet, ci-dessous la macro que je vais utiliser, à mettre dans ThisWorkbook:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
With ActiveSheet.PageSetup

.RightHeader = "Dernière Mise à Jour le &D à &T"
.LeftFooter = "&""Times New Roman,Gras italique""&11&F / &A"
.CenterFooter = Application.UserName
.RightFooter = "&""Arial""" & "&10" & "&P /&N"

.LeftMargin = Application.InchesToPoints(0.787401575)
.RightMargin = Application.InchesToPoints(0.787401575)
.TopMargin = Application.InchesToPoints(0.984251969)
.BottomMargin = Application.InchesToPoints(0.984251969)


End With

End Sub


Merci pour les conseils et Bonne soirée

KIM
 

Discussions similaires

Statistiques des forums

Discussions
312 163
Messages
2 085 860
Membres
103 006
dernier inscrit
blkevin