Vba impression zone variable et previsualisation page a imprimer

Fermé
crouault67 Messages postés 20 Date d'inscription vendredi 10 avril 2015 Statut Membre Dernière intervention 22 octobre 2015 - 16 juin 2015 à 10:44
crouault67 Messages postés 20 Date d'inscription vendredi 10 avril 2015 Statut Membre Dernière intervention 22 octobre 2015 - 16 juin 2015 à 16:59
Bonjour,

voila mon souci, j'utilise la macro suivante afin d'imprimer une feuille comportant des donnes a dimension variable, pas de souci jusque la.

en revanche, je n'arrive pas a inserer une commande me permettant de previsualiser a lecran ma zone d'impression avant de lancer l'impression ?

2me question : ou definir la zone d'impression si je veux pouvoir a partir d'une macro similaire, imprimer une autre feuille de mon classeur

merci de votre aide

Sub impression_liste_commandes() 'toutes les 52 lignes (à régler)
Dim N As Long
Dim I As Integer, Rep As Integer
With ActiveSheet
With ActiveSheet.PageSetup
.PrintTitleRows = "$A$1:$I$5"
End With
N = .Range("b65536").End(xlUp).Row
.ResetAllPageBreaks 'efface sauts de pages existants
.PageSetup.PrintArea = "A2:h" & N
For I = 1 To N / 52
.HPageBreaks.Add Before:=Rows(I * 52 + 2)
Next I
Rep = MsgBox("On imprime ?", vbYesNo + vbCritical + vbDefaultButton2, "Impression")
If Rep = vbYes Then
.PrintOut
End If
End With
End Sub
A voir également:

1 réponse

tyranausor Messages postés 3545 Date d'inscription jeudi 6 août 2009 Statut Membre Dernière intervention 1 avril 2022 2 031
16 juin 2015 à 13:48
Bonjour, j'ai une macro de ce genre-là, je te donne le code

Sub Enreg_Pdf()
'Enregistre la feuille Archives du classeur en pdf. Nécessite une imprimante virtuelle comme PDFCreator.
Dim S1, S4 As Byte
Dim fichier_pdf As String
d = Range("A65000").End(xlUp)
Sheets("Archives").Select
S1 = Range("A6").Value
S4 = d
Columns("D:J").Hidden = True
Rows("1:3").Hidden = True
Sheets("Archives").PageSetup.CenterHorizontally = True
Sheets("Archives").PageSetup.CenterVertically = True
With ActiveSheet.PageSetup
.CenterHeader = "Heures des salariés pour les semaines " & S1 & " à " & S4
End With
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"Heures des salariés.pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
From:=1, To:=1, OpenAfterPublish:=True
Application.Dialogs(xlDialogPrint)
End Sub


Là c'est pour imprimer en pdf. Il ne te restes plus qu'à modifier le code selon tes besoins
0
crouault67 Messages postés 20 Date d'inscription vendredi 10 avril 2015 Statut Membre Dernière intervention 22 octobre 2015
16 juin 2015 à 16:59
Cela fonctionne tres bien mais ne repond pas a ma question sur l'affichage d'un "preview"
0