Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

impression marges différentes sur pages impaires ou paires

2 réponses
Avatar
Michel_de_+
Bonjour à vous tous,

Je suis sur Excel 2003 et je suis embété pour imprimer un classeur qui sera
relié par la suite. Je n'ai rien trouvé sur le sujet.

Je souhaite différencier les marges gauches et les marges droites ainsi que
le pied de page contenant le n° de page en fonction de la partité ou non
d'une page.

Idéalement, la pagination d'une page paire (le numéro de la première page
est indiqué dans "mise en page","page", commencer l'impression à") :
marge Gauche à 1, marge Droite à 2.5 (reliure), bas de page n° de page à
gauche

Page impaire : marge gauche 2.5 (reliure), marge droite à 1, bas de page n°
de page à droite.

J'ai bien evidemment différentes feuilles dans le classeur.

Merci si l'un d'entre vous a un bout de code VBA pour me dépatouiller.

Michel

2 réponses

Avatar
michdenis
Bonjour,

Tu peux utiliser quelque chose comme ceci:

Pour définir les caractéristiques de tes pages paires et impaires,
utilise l'enregistreur Macro et et tu définis les caractéristiques
d'impression pour chacune des 2 catégories. Par la suite, tu
insères ces caractériques(propriétés) dans cette macro.


'---------------------------------------
Sub ImpPagesImpairesPuisPaires()
Dim Page As Integer, NbPages As Integer

NbPages = ExecuteExcel4Macro("GET.DOCUMENT(50)")

If MsgBox("Vous allez imprimer " & NbPages & " pages." & _
vbCrLf & vbCrLf & "Désirez-vous continuer ?", _
vbInformation + vbYesNo, "Attention") = vbYes Then

With ActiveSheet
For Page = 1 To NbPages
If wPage Mod 2 = 1 Then
'Pour les pages impaires : Caractéristiques
With .PageSetup
.LeftMargin = "xxxxx"
.RightMargin = "zzzzz"
'Ajoute toutes les caractéristiques
'd'impression requises ...
.PrintOut From:=Page, To:=Page
End With
Else
'Pour les pages paires : caractéritiques
With .PageSetup
.LeftMargin = "xxxxx"
.RightMargin = "zzzzz"
'Ajoute toutes les caractéristiques
'd'impression requises ...
.PrintOut From:=Page, To:=Page
End With
End If
Next
End With
Else
MsgBox "Impression annulée."
End If
End Sub
'---------------------------------------




"Michel_de_+" a écrit dans le message de groupe de discussion :
#
Bonjour à vous tous,

Je suis sur Excel 2003 et je suis embété pour imprimer un classeur qui sera
relié par la suite. Je n'ai rien trouvé sur le sujet.

Je souhaite différencier les marges gauches et les marges droites ainsi que
le pied de page contenant le n° de page en fonction de la partité ou non
d'une page.

Idéalement, la pagination d'une page paire (le numéro de la première page
est indiqué dans "mise en page","page", commencer l'impression à") :
marge Gauche à 1, marge Droite à 2.5 (reliure), bas de page n° de page à
gauche

Page impaire : marge gauche 2.5 (reliure), marge droite à 1, bas de page n°
de page à droite.

J'ai bien evidemment différentes feuilles dans le classeur.

Merci si l'un d'entre vous a un bout de code VBA pour me dépatouiller.

Michel
Avatar
Michel_de_+
Merci, ça fonctionne nickel après correction

Sub ImpPagesImpairesPuisPaires()
Dim Page As Integer, NbPages As Integer

NbPages = ExecuteExcel4Macro("GET.DOCUMENT(50)")

If MsgBox("Vous allez imprimer " & NbPages & " pages." & _
vbCrLf & vbCrLf & "Désirez-vous continuer ?", _
vbInformation + vbYesNo, "Attention") = vbYes Then

With ActiveSheet
For Page = 1 To NbPages
If Page Mod 2 = 1 Then
'Pour les pages impaires : Caractéristiques
With .PageSetup
.LeftMargin = "xxxxx"
.RightMargin = "zzzzz"
'Ajoute toutes les caractéristiques
'd'impression requises ...
PrintOut From:=Page, To:=Page
End With
Else
'Pour les pages paires : caractéritiques
With .PageSetup
.LeftMargin = "xxxxx"
.RightMargin = "zzzzz"
'Ajoute toutes les caractéristiques
'd'impression requises ...
PrintOut From:=Page, To:=Page
End With
End If
Next
End With
Else
MsgBox "Impression annulée."
End If
End Sub

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

Tu peux utiliser quelque chose comme ceci:

Pour définir les caractéristiques de tes pages paires et impaires,
utilise l'enregistreur Macro et et tu définis les caractéristiques
d'impression pour chacune des 2 catégories. Par la suite, tu
insères ces caractériques(propriétés) dans cette macro.


'---------------------------------------
Sub ImpPagesImpairesPuisPaires()
Dim Page As Integer, NbPages As Integer

NbPages = ExecuteExcel4Macro("GET.DOCUMENT(50)")

If MsgBox("Vous allez imprimer " & NbPages & " pages." & _
vbCrLf & vbCrLf & "Désirez-vous continuer ?", _
vbInformation + vbYesNo, "Attention") = vbYes Then

With ActiveSheet
For Page = 1 To NbPages
If wPage Mod 2 = 1 Then
'Pour les pages impaires : Caractéristiques
With .PageSetup
.LeftMargin = "xxxxx"
.RightMargin = "zzzzz"
'Ajoute toutes les caractéristiques
'd'impression requises ...
.PrintOut From:=Page, To:=Page
End With
Else
'Pour les pages paires : caractéritiques
With .PageSetup
.LeftMargin = "xxxxx"
.RightMargin = "zzzzz"
'Ajoute toutes les caractéristiques
'd'impression requises ...
.PrintOut From:=Page, To:=Page
End With
End If
Next
End With
Else
MsgBox "Impression annulée."
End If
End Sub
'---------------------------------------




"Michel_de_+" a écrit dans le message de groupe de
discussion :
#
Bonjour à vous tous,

Je suis sur Excel 2003 et je suis embété pour imprimer un classeur qui
sera
relié par la suite. Je n'ai rien trouvé sur le sujet.

Je souhaite différencier les marges gauches et les marges droites ainsi
que
le pied de page contenant le n° de page en fonction de la partité ou non
d'une page.

Idéalement, la pagination d'une page paire (le numéro de la première page
est indiqué dans "mise en page","page", commencer l'impression à") :
marge Gauche à 1, marge Droite à 2.5 (reliure), bas de page n° de page à
gauche

Page impaire : marge gauche 2.5 (reliure), marge droite à 1, bas de page

de page à droite.

J'ai bien evidemment différentes feuilles dans le classeur.

Merci si l'un d'entre vous a un bout de code VBA pour me dépatouiller.

Michel