Définir en VBA la zone d'impression par macro ?

pouty

XLDnaute Junior
<< Bonjour au forum,

<< Je cherche depuis un moment sur le forum une macro qui me demandrait la zone ou les zones de plages à imprimer sur une feuille excel ou deux feuille excel ?

<< Merci pour vos réponses à ce sujet
 

pouty

XLDnaute Junior
Re : Définir en VBA la zone d'impression par macro ?

<< J'ai trouvé un bout de code je l'ai modifier mais j'ai une erreur de synthase !!!!!

<< le code :


Sub Imprimer()
'
' Imprimer Macro
'
'
Dim Plage As Range
On Error Resume Next
Set Plage = Application.InputBox(prompt:="choisissez une plage avec la souris", Type:=8)


On Error GoTo 0
If Plage Is Nothing Then Exit Sub
Application.Goto Plage
If MsgBox('Voulez-vous imprimer la zone sélectionnée ?', vbYesNo) = vbYes Then
With ActiveSheet.PageSetup
.LeftHeader = ''
.CenterHeader = '&''Arial,Gras''&20VOITURE 1'
.RightHeader = ''
.LeftFooter = ''
.CenterFooter = '&D'
.RightFooter = '&T'
.LeftMargin = Application.InchesToPoints(0.31496062992126)
.RightMargin = Application.InchesToPoints(0.31496062992126)
.TopMargin = Application.InchesToPoints(0.984251968503937)
.BottomMargin = Application.InchesToPoints(0.984251968503937)
.HeaderMargin = Application.InchesToPoints(0.511811023622047)
.FooterMargin = Application.InchesToPoints(0.511811023622047)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.CenterHorizontally = True
.CenterVertically = True
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
 

Cousinhub

XLDnaute Barbatruc
Re : Définir en VBA la zone d'impression par macro ?

Bonsoir,

J'ai lu ta question, mais vu comment c'était rédigé, je me suis dit que c'était fait par une machine....

Je me vois mal commencé toute phrase par

<<Bonjour,

<<Vous allez bien?

<<J'ai un souci....

Euh, adepte inconditionnel du "php"?

Tu as trouvé un code, tu as un problème, mais à quelle ligne?

@ te relire
 

pouty

XLDnaute Junior
Re : Définir en VBA la zone d'impression par macro ?

<< je remets le code avec les lignes qui poseun probléme:



If MsgBox('Voulez-vous imprimer la zone sélectionnée ?', vbYesNo) = vbYes Then
With ActiveSheet.PageSetup
.LeftHeader = ''
.CenterHeader = '&''Arial,Gras''&20VOITURE 1'
.RightHeader = ''
.LeftFooter = ''
.CenterFooter = '&D'
.RightFooter = '&T'
 

pouty

XLDnaute Junior
Re : Définir en VBA la zone d'impression par macro ?

<< Bonjour au forum

<< Depuis hier sur ce forum j'ai pose un probleme sur ma macro je pense que je me suis mal exliquer sur le sujet.

<< J'ai une macro que j'ai essayer de modifier mais avec un niveau débutant en vba , un soutien est nécéssaire par ce forum :


<< Voici la macro

Sub Imprimer()
'
' Imprimer Macro
'
'
Dim Plage As Range
On Error Resume Next
Set Plage = Application.InputBox(prompt:="choisissez une plage avec la souris", Type:=8)


On Error GoTo 0
If Plage Is Nothing Then Exit Sub
Application.Goto Plage
If MsgBox('Voulez-vous imprimer la zone sélectionnée ?', vbYesNo) = vbYes Then
With ActiveSheet.PageSetup
.LeftHeader = ''
.CenterHeader = '&''Arial,Gras''&20VOITURE 1'
.RightHeader = ''
.LeftFooter = ''
.CenterFooter = '&D'
.RightFooter = '&T'
.LeftMargin = Application.InchesToPoints(0.31496062992126)
.RightMargin = Application.InchesToPoints(0.31496062992126)
.TopMargin = Application.InchesToPoints(0.984251968503937)
.BottomMargin = Application.InchesToPoints(0.984251968503937)
.HeaderMargin = Application.InchesToPoints(0.511811023622047)
.FooterMargin = Application.InchesToPoints(0.511811023622047)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.CenterHorizontally = True
.CenterVertically = True
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
End With
ActiveSheet.PageSetup.PrintArea = Plage.Address
ActiveSheet.PrintOut preview:=True
End If

End With
End Sub


J'ai une erreur de syntanse au niveau de la ligne :

If MsgBox('Voulez-vous imprimer la zone sélectionnée ?', vbYesNo) = vbYes Then
With ActiveSheet.PageSetup
.LeftHeader = ''
.CenterHeader = '&''Arial,Gras''&20VOITURE 1'
.RightHeader = ''
.LeftFooter = ''
.CenterFooter = '&D'
.RightFooter = '
 

soenda

XLDnaute Accro
Re : Définir en VBA la zone d'impression par macro ?

Bonjour le fil, bhbh, francedemo, pouty

Je propose 2 solutions :

1) Remplacer les quotes ' par des guillemets "
Code:
.CenterHeader = [B][COLOR=red]"[/COLOR][/B]&[COLOR=red][B]""[/B][/COLOR]Arial,Gras[B][COLOR=red]""[/COLOR][/B]&20VOITURE 1[B][COLOR=red]"[/COLOR][/B]
2) Utiliser l'enregistreur de macros.

A plus :)
 

Discussions similaires

Réponses
6
Affichages
481

Membres actuellement en ligne

Statistiques des forums

Discussions
312 206
Messages
2 086 204
Membres
103 157
dernier inscrit
youma