Impression paysage
F
Bonjour à tous,
J'ai testé tout ce que je pouvais et tout ce que j'ai pu trouvé mais rien n'y fait, je ne trouve pas le moyen de faire une impression PDF en paysage sur une sélection de cellules.
Est-ce que quelqu'un aurait une solution à mon problème?
Voici le code :
Sub Imp_pdf()
nbinf = Cells(1, 3).Value 'récupération d'une valeur
Cells(200, 200).FormulaLocal = "=adresse(65;" & (2 * nbinf) + 6 & ")"
refcol = Cells(200, 200).Value 'j'affecte la valeur pour pouvoir l'utiliser
Range("E2:" & refcol & "").Select ' 'je définis ma plage de cellules à sélectionner
With ActiveSheet.PageSetup
.Orientation = xlLandscape
End With
With ActiveSheet
Fichier = .Name & ".pdf"
.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=Fichier, _
Quality:=xlQualityMinimum, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False
End With
End Sub
Un tout grand merci d'avance
Bonjour, Finplein
Un code qui fonctionne bien chez moi et qui donne un aperçu avant impression au format paysage
[code=vb]Private Sub CmbImprimer_Click()
Dim Ws As Worksheet
' Copie d'écran de la forme active
keybd_event vbKeySnapshot, 1, 0&, 0&
' désactive le rafraichissement de l'écran
Application.ScreenUpdating = False
Application.Wait Now + TimeValue("0:00:02")
DoEvents
Me.Hide
' Ajoute une feuille pour coller l'image de la forme
'Set Ws = Sheets.Add
' renomme la feuille
With Sheets.Add
'.Name = "imprim"
.Paste
Application.PrintCommunication = False
With .PageSetup
' En mode paysage
.Orientation = xlLandscape
' impression centrée dans la page
.CenterHorizontally = True
.CenterVertically = True
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = False
.LeftMargin = Application.InchesToPoints(0)
.RightMargin = Application.InchesToPoints(0)
.TopMargin = Application.InchesToPoints(0)
.BottomMargin = Application.InchesToPoints(0)
End With
Application.PrintCommunication = True
'.PrintOut
.PrintPreview
' enléve les messages d'alerte
Application.DisplayAlerts = False
.Delete
'remet les messages d'alerte
Application.DisplayAlerts = True
End With
' réactive le rafraichissement de l'écran
Application.ScreenUpdating = True
Me.Show
End Sub
[/code]
Amicalement
Pierrot
F
Merci Pierrot !
Je regarderai ça attentivement ...
Etrangement, j'ai quitté Excel et l'ai relancé et maintenant j'ai bien des impressions paysage...