Macro à l'ouverture d'un fichier

Bonjour à tous,

j'ai réalisé une macro pour faire un pied de page toute simple

comment puis je faire pour quelle s'exécute automatiquement à l'ouverture d'un nouveau document ?

merci d'avance

Bonjour,

Ouvre ton fichier. Par ALT + F11 accède au Microsoft Visual Basic. Dans la partie gauche (Projet-VBAProject) cherche ton classeur.xls (VBAProject(classeur.xls)). Double clique sur la fichier excel "ThisWorkbook".Sur la partie droite (partie du code), clique sur la liste déroulante gauche et sélectionne "Workbook". Sur la liste déroulante droite, la méthode Open s'affiche. Le code suivante s'affiche également :

Private Sub Workbook_Open()

End Sub

Insère ton code à l'intérieur de cette proécdure. Enregistre et ferme le classeur.

Normalement à la prochaine ouverture de ton classeur ton macro s'exécute. A tester.

Cdlt,

Merci pour ton aide

ça à pas l'air de marché

je réessaie j'ai peut etre faire un truc de travers

et si je peux abuser si c'est possible bien sur comment faire en sorte qu'une date de création (donc qui ne change pas) se mette à jour à l'utilisation de la macros

Non il a pas apprécié

il dit qu'il y a une erreur dans le code et met en jaune la première ligne

Private sub ... open

voici le message

erreur de compilation

fonction ou variable attendues

Re,

Pourrais-tu nous envoyer le code avec le fichier ?

Cdlt,

Bonjour,

Vérifie

  • en en-tête de macro que tu n'as pas l'instruction OPTION EXPLICIT. Si oui, enlève la provisoirement, juste pour tester le code.
  • que la macro proposée par Raja est bien dans THISWORKBOOK et pas dans un module.

A te relire

Dan

Je ne sais pas comment envoyer un fichier

mais voici le code de ma macros

Sub Pied()

'

' Pied Macro

' Macro enregistrée le 13/03/2008 par Karine Poizat

'

'

With ActiveSheet.PageSetup

.PrintTitleRows = ""

.PrintTitleColumns = ""

End With

ActiveSheet.PageSetup.PrintArea = ""

With ActiveSheet.PageSetup

.LeftHeader = ""

.CenterHeader = ""

.RightHeader = ""

.LeftFooter = "ZSF/ KPO"

.CenterFooter = "&P/&N" & Chr(10) & "&F"

.RightFooter = "Créé le 00/00/0000" & Chr(10) & "Imprimé le &D"

.LeftMargin = Application.InchesToPoints(0.787401575)

.RightMargin = Application.InchesToPoints(0.787401575)

.TopMargin = Application.InchesToPoints(0.984251969)

.BottomMargin = Application.InchesToPoints(0.984251969)

.HeaderMargin = Application.InchesToPoints(0.4921259845)

.FooterMargin = Application.InchesToPoints(0.4921259845)

.PrintHeadings = False

.PrintGridlines = False

.PrintComments = xlPrintNoComments

.PrintQuality = 600

.CenterHorizontally = False

.CenterVertically = False

.Orientation = xlPortrait

.Draft = False

.PaperSize = xlPaperA4

.FirstPageNumber = xlAutomatic

.Order = xlDownThenOver

.BlackAndWhite = False

.Zoom = 100

.PrintErrors = xlPrintErrorsDisplayed

End With

End Sub

Bonjour,

Juste une précision, tu souhaites que ta macro s'execute dès que tu ouvres un nouveau document

ou

tu souhaites faire mouliner ta macro dans un seul fichier (ce qui a mon sens ne sert à rien, puisque tu gagnerais en temps à faire tes en-têtes et pieds de page à la main) ?

Car comme moi je le comprends: tu souhaites que dès que tu créé un nouveau classeur, ta macro se mette en route et créé tes en-têtes et pieds de page dans ce nouveau classeur. Et dans ce cas, moi je ne mettrais pas le code dans thisworkbook mais plutôt dans mon classeur de macros personnelles. Maintenant à voir si j'ai bien compris ce qu'il fallait faire...

A vous lire,

Souri84

Edit 2: pour envoyer un fichier: joindre un fichier en haut à droite

C'est tout à fait ça

sur un nouveau document qu'elle s'exécute toute seule

Re,

Pourquoi simplifier quand on peut compliquer !!! N'est-ce pas ?

Cdlt,

Bonsoir,

Pourquoi une macro ? Je me demande si ça ne serait pas plus facile de remplacer le modèle de classeur par un modèle contenant l'entête voulu. Je sais que ça serait réalisable sur Word, mais sur Excel, je ne suis pas sûre... mais à voir !

Cordialement,

V_Elbie

re,

Exactement V Elbie. C'est ce qu'il faut faire puis enregistrer le classeur avec l'extension .XLT

Dan

Rechercher des sujets similaires à "macro ouverture fichier"