OVH Cloud OVH Cloud

En pied par VBA

4 réponses
Avatar
Calou
Bonjour !

J'ai trouvé sur le site de Jacques Boisgontier des infos mais je n'ai pas
encore trouvé comment indiquer des enpieds et non des entetes.

Comment indiquer la date du jour sous VBA ?
Comment faire en sorte que cette macro se lance automatiquement à
l'ouverture de ce fichier.

Voilà mes essais :

Sub ModifieEnTete()
Dim n
For i = 1 To Sheets.Count
Sheets(i).Select
ActiveSheet.PageSetup.RightHeader = "Droite"
ActiveSheet.PageSetup.LeftHeader = "Gauche"
ActiveSheet.PageSetup.CenterHeader = "Au centre"
'ActiveWindow.ActiveSheet.PrintPreview
Next i
End Sub

Un grand merci à vous.

Bonne soirée.

4 réponses

Avatar
isabelle
bonjour Calou,

remplace Header par Footer

isabelle

Calou a écrit :
Bonjour !

J'ai trouvé sur le site de Jacques Boisgontier des infos mais je n'ai pas
encore trouvé comment indiquer des enpieds et non des entetes.

Comment indiquer la date du jour sous VBA ?
Comment faire en sorte que cette macro se lance automatiquement à
l'ouverture de ce fichier.

Voilà mes essais :

Sub ModifieEnTete()
Dim n
For i = 1 To Sheets.Count
Sheets(i).Select
ActiveSheet.PageSetup.RightHeader = "Droite"
ActiveSheet.PageSetup.LeftHeader = "Gauche"
ActiveSheet.PageSetup.CenterHeader = "Au centre"
'ActiveWindow.ActiveSheet.PrintPreview
Next i
End Sub

Un grand merci à vous.

Bonne soirée.






Avatar
isabelle
et pour la date :

ActiveSheet.PageSetup.RightHeader = Date
ou
ActiveSheet.PageSetup.RightHeader = Now
ou
ActiveSheet.PageSetup.RightHeader = Format(Date, "dd-mmmm-yyyy")

isabelle

Calou a écrit :
Bonjour !

J'ai trouvé sur le site de Jacques Boisgontier des infos mais je n'ai pas
encore trouvé comment indiquer des enpieds et non des entetes.

Comment indiquer la date du jour sous VBA ?
Comment faire en sorte que cette macro se lance automatiquement à
l'ouverture de ce fichier.

Voilà mes essais :

Sub ModifieEnTete()
Dim n
For i = 1 To Sheets.Count
Sheets(i).Select
ActiveSheet.PageSetup.RightHeader = "Droite"
ActiveSheet.PageSetup.LeftHeader = "Gauche"
ActiveSheet.PageSetup.CenterHeader = "Au centre"
'ActiveWindow.ActiveSheet.PrintPreview
Next i
End Sub

Un grand merci à vous.

Bonne soirée.






Avatar
michdenis
Dans ce cas ici, ce serait un peu plus long...
moi, je n'ai pas vu de commande susceptible de lancer l'impression du fichier.
Le demandeur avait une ligne de code comme ceci dans son propos :
ActiveWindow.ActiveSheet.PrintPreview
Je me demande bien à quoi elle pouvait servir ???

Ceci étant, il y a cet événement situé dans le ThisWorkbook
qui peut rendre de fiers services.

Private Sub Workbook_BeforePrint(Cancel As Boolean)

End Sub


;-))



"garnote" a écrit dans le message de groupe de discussion :
u$
Ou en plus chic ;-) :

Sub En_Pieds()
For i = 1 To Sheets.Count
With Sheets(i).PageSetup
.LeftFooter = "Le " & Format(Date, "dddd")
.CenterFooter = Format(Date, "dd mmmm")
.RightFooter = Format(Date, "yyyy")
End With
Next i
End Sub

Peut-on faire plus court ?

Serge



"garnote" a écrit dans le message de news:

Salut Calou,

Un exemple à adapter :

Sub En_Pieds()
For i = 1 To Sheets.Count
With Sheets(i)
.PageSetup.LeftFooter = "Le " & Format(Date, "dddd")
.PageSetup.CenterFooter = Format(Date, "dd mmmm")
.PageSetup.RightFooter = Format(Date, "yyyy")
End With
Next i
End Sub

Private Sub Workbook_Open()
Call En_Pieds
End Sub


Serge


"Calou" a écrit dans le message de news:

Bonjour !

J'ai trouvé sur le site de Jacques Boisgontier des infos mais je n'ai pas encore trouvé
comment indiquer des enpieds et
non des entetes.

Comment indiquer la date du jour sous VBA ?
Comment faire en sorte que cette macro se lance automatiquement à l'ouverture de ce
fichier.

Voilà mes essais :

Sub ModifieEnTete()
Dim n
For i = 1 To Sheets.Count
Sheets(i).Select
ActiveSheet.PageSetup.RightHeader = "Droite"
ActiveSheet.PageSetup.LeftHeader = "Gauche"
ActiveSheet.PageSetup.CenterHeader = "Au centre"
'ActiveWindow.ActiveSheet.PrintPreview
Next i
End Sub

Un grand merci à vous.

Bonne soirée.









Avatar
Calou
Bonjour,

Un grand merci à vous pour vos réponses aussi précises que rapides. J'ai
trouvé exactement ce que je voulais.

Bonne journée.


"michdenis" a écrit dans le message de news:

Dans ce cas ici, ce serait un peu plus long...
moi, je n'ai pas vu de commande susceptible de lancer l'impression du
fichier.
Le demandeur avait une ligne de code comme ceci dans son propos :
ActiveWindow.ActiveSheet.PrintPreview
Je me demande bien à quoi elle pouvait servir ???

Ceci étant, il y a cet événement situé dans le ThisWorkbook
qui peut rendre de fiers services.

Private Sub Workbook_BeforePrint(Cancel As Boolean)

End Sub


;-))



"garnote" a écrit dans le message de groupe de
discussion :
u$
Ou en plus chic ;-) :

Sub En_Pieds()
For i = 1 To Sheets.Count
With Sheets(i).PageSetup
.LeftFooter = "Le " & Format(Date, "dddd")
.CenterFooter = Format(Date, "dd mmmm")
.RightFooter = Format(Date, "yyyy")
End With
Next i
End Sub

Peut-on faire plus court ?

Serge



"garnote" a écrit dans le message de news:

Salut Calou,

Un exemple à adapter :

Sub En_Pieds()
For i = 1 To Sheets.Count
With Sheets(i)
.PageSetup.LeftFooter = "Le " & Format(Date, "dddd")
.PageSetup.CenterFooter = Format(Date, "dd mmmm")
.PageSetup.RightFooter = Format(Date, "yyyy")
End With
Next i
End Sub

Private Sub Workbook_Open()
Call En_Pieds
End Sub


Serge


"Calou" a écrit dans le message de news:

Bonjour !

J'ai trouvé sur le site de Jacques Boisgontier des infos mais je n'ai
pas encore trouvé
comment indiquer des enpieds et
non des entetes.

Comment indiquer la date du jour sous VBA ?
Comment faire en sorte que cette macro se lance automatiquement à
l'ouverture de ce
fichier.

Voilà mes essais :

Sub ModifieEnTete()
Dim n
For i = 1 To Sheets.Count
Sheets(i).Select
ActiveSheet.PageSetup.RightHeader = "Droite"
ActiveSheet.PageSetup.LeftHeader = "Gauche"
ActiveSheet.PageSetup.CenterHeader = "Au centre"
'ActiveWindow.ActiveSheet.PrintPreview
Next i
End Sub

Un grand merci à vous.

Bonne soirée.