XL 2010 Imprimer avec paramètres et affichage initial

  • Initiateur de la discussion Initiateur de la discussion Orson83
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Orson83

XLDnaute Impliqué
Bonjour à tous,
Je cherche à imprimer des feuilles avec des paramètres spécifiques courants.
Les paramètres s'applique correctement mais que les feuilles ne se retrouvent pas dans leur état initial.
J'ai codé les paramètres VBA pour la page Stats générales que je souhaiterai appliquer pour l'impression.
Après l'impression, j'aimerai que la ou les pages se retrouvent avec leur affichage de départ.
Je joins mon fichier exemple dans ce post.
Merci pour votre aide.
Tchotchodu31
 

Pièces jointes

Solution
Tchotchodu31, le forum

Le principe est simple du cache les lignes que tu veux tu lances l'impression et du démasques les lignes avant de sortir ...
VB:
'****************************************
'IMPRIMER 3 PAGES DEPUIS LA PAGE ACCUEIL
'MERCI A Rag02700 POUR LE CODAGE INITIAL
'****************************************
Sub ButtonPrintStats()
Dim bStatP As Boolean, bStatM As Boolean, bStatG As Boolean

'**********
'LES LIGNES A MASQUER SONT ICI
Sheets("Stats population").Range("12:13").EntireRow.Hidden = True
'***********'

If Sheets("Stats population").Visible = True Then bStatP = True Else Sheets("Stats population").Visible = True
If Sheets("Stats métiers").Visible = True Then bStatM = True Else Sheets("Stats métiers").Visible = True
If...
Tchotchodu31, le forum

Le principe est simple du cache les lignes que tu veux tu lances l'impression et du démasques les lignes avant de sortir ...
VB:
'****************************************
'IMPRIMER 3 PAGES DEPUIS LA PAGE ACCUEIL
'MERCI A Rag02700 POUR LE CODAGE INITIAL
'****************************************
Sub ButtonPrintStats()
Dim bStatP As Boolean, bStatM As Boolean, bStatG As Boolean

'**********
'LES LIGNES A MASQUER SONT ICI
Sheets("Stats population").Range("12:13").EntireRow.Hidden = True
'***********'

If Sheets("Stats population").Visible = True Then bStatP = True Else Sheets("Stats population").Visible = True
If Sheets("Stats métiers").Visible = True Then bStatM = True Else Sheets("Stats métiers").Visible = True
If Sheets("Stats générales").Visible = True Then bStatG = True Else Sheets("Stats générales").Visible = True

'Feuil2.Copy '???
'With Sheets("Stats population") 'Paramètres pour l'impression. Doit revenir à l'état d'origine après l'impression
        '.[12:13].EntireRow.Hidden = True 'Masque des lignes
        '.[9:10].EntireRow.Interior.ColorIndex = xlNone 'Intérieur incolore des lignes
        '.[D15:E15,G15:H15].Interior.Color = [A1].Interior.Color 'Colore la plage en blanc selon la cellule [A1] non masquée
        '.[D15:E15,G15:H15].Font.ColorIndex = 1 'Données renseignées - Colore le texte en noir (1 = noir)
        '.[D15:E15,G15:H15].Borders.LineStyle = xlNone 'Bordures de cellules incolores

With Sheets("Stats population").PageSetup
            .Zoom = False
            .PrintArea = "C4:M26" 'Zone d'impression
            .LeftMargin = Application.InchesToPoints(0.5) 'Marge gauche
            .RightMargin = Application.InchesToPoints(0.8)  'Marge droite
            .TopMargin = Application.InchesToPoints(0.8) 'Marge haut de page ou top
            .BottomMargin = Application.InchesToPoints(0.8) 'Marge bas de page si nécessaire
            .FitToPagesWide = 1 'Définit le nombre de pages à l’échelle
            .FitToPagesTall = 1 'Définit le nombre de pages en hauteur
            .Orientation = xlLandscape 'Portrait = xlPortrait ou Paysage = xlLandscape
            Application.Goto Sheets("Stats population").Range("A1") 'Remonte en haut de la page
            Application.Goto Sheets("Stats population").Range("F6") 'Se position dans la cellule
        'End With
End With

With Sheets("Stats métiers").PageSetup
            .Zoom = False
            .PrintArea = "D5:N27" 'Zone d'impression
            .LeftMargin = Application.InchesToPoints(0.8) 'Marge gauche
            .RightMargin = Application.InchesToPoints(0.1)  'Marge droite
            .TopMargin = Application.InchesToPoints(0.8) 'Marge haut de page ou top
            .BottomMargin = Application.InchesToPoints(0.8) 'Marge bas de page si nécessaire
            .FitToPagesWide = 1 'Définit le nombre de pages à l’échelle
            .FitToPagesTall = 1 'Définit le nombre de pages en hauteur
            .Orientation = xlLandscape 'Portrait = xlPortrait ou Paysage = xlLandscape
End With

With Sheets("Stats générales").PageSetup
            .Zoom = False
            .PrintArea = "E6:O28" 'Zone d'impression
            .LeftMargin = Application.InchesToPoints(0.8) 'Marge gauche
            .RightMargin = Application.InchesToPoints(0.1)  'Marge droite
            .TopMargin = Application.InchesToPoints(0.8) 'Marge haut de page ou top
            .BottomMargin = Application.InchesToPoints(0.8) 'Marge bas de page si nécessaire
            .FitToPagesWide = 1 'Définit le nombre de pages à l’échelle
            .FitToPagesTall = 1 'Définit le nombre de pages en hauteur
            .Orientation = xlLandscape 'Portrait = xlPortrait ou Paysage = xlLandscape
End With

Sheets(Array("Stats population", "Stats métiers", "Stats générales")).PrintPreview 'Prévisualiser

'**********
'LES LIGNES A DEMASQUER SONT ICI
Sheets("Stats population").Range("12:13").EntireRow.Hidden = False
'**********

Sheets("Stats métiers").Visible = bStatM
Sheets("Stats générales").Visible = bStatG

Sheets("Accueil").Select

End Sub

@Phil69970
 
Tchotchodu31, le forum

Le principe est simple du cache les lignes que tu veux tu lances l'impression et du démasques les lignes avant de sortir ...
VB:
'****************************************
'IMPRIMER 3 PAGES DEPUIS LA PAGE ACCUEIL
'MERCI A Rag02700 POUR LE CODAGE INITIAL
'****************************************
Sub ButtonPrintStats()
Dim bStatP As Boolean, bStatM As Boolean, bStatG As Boolean

'**********
'LES LIGNES A MASQUER SONT ICI
Sheets("Stats population").Range("12:13").EntireRow.Hidden = True
'***********'

If Sheets("Stats population").Visible = True Then bStatP = True Else Sheets("Stats population").Visible = True
If Sheets("Stats métiers").Visible = True Then bStatM = True Else Sheets("Stats métiers").Visible = True
If Sheets("Stats générales").Visible = True Then bStatG = True Else Sheets("Stats générales").Visible = True

'Feuil2.Copy '???
'With Sheets("Stats population") 'Paramètres pour l'impression. Doit revenir à l'état d'origine après l'impression
        '.[12:13].EntireRow.Hidden = True 'Masque des lignes
        '.[9:10].EntireRow.Interior.ColorIndex = xlNone 'Intérieur incolore des lignes
        '.[D15:E15,G15:H15].Interior.Color = [A1].Interior.Color 'Colore la plage en blanc selon la cellule [A1] non masquée
        '.[D15:E15,G15:H15].Font.ColorIndex = 1 'Données renseignées - Colore le texte en noir (1 = noir)
        '.[D15:E15,G15:H15].Borders.LineStyle = xlNone 'Bordures de cellules incolores

With Sheets("Stats population").PageSetup
            .Zoom = False
            .PrintArea = "C4:M26" 'Zone d'impression
            .LeftMargin = Application.InchesToPoints(0.5) 'Marge gauche
            .RightMargin = Application.InchesToPoints(0.8)  'Marge droite
            .TopMargin = Application.InchesToPoints(0.8) 'Marge haut de page ou top
            .BottomMargin = Application.InchesToPoints(0.8) 'Marge bas de page si nécessaire
            .FitToPagesWide = 1 'Définit le nombre de pages à l’échelle
            .FitToPagesTall = 1 'Définit le nombre de pages en hauteur
            .Orientation = xlLandscape 'Portrait = xlPortrait ou Paysage = xlLandscape
            Application.Goto Sheets("Stats population").Range("A1") 'Remonte en haut de la page
            Application.Goto Sheets("Stats population").Range("F6") 'Se position dans la cellule
        'End With
End With

With Sheets("Stats métiers").PageSetup
            .Zoom = False
            .PrintArea = "D5:N27" 'Zone d'impression
            .LeftMargin = Application.InchesToPoints(0.8) 'Marge gauche
            .RightMargin = Application.InchesToPoints(0.1)  'Marge droite
            .TopMargin = Application.InchesToPoints(0.8) 'Marge haut de page ou top
            .BottomMargin = Application.InchesToPoints(0.8) 'Marge bas de page si nécessaire
            .FitToPagesWide = 1 'Définit le nombre de pages à l’échelle
            .FitToPagesTall = 1 'Définit le nombre de pages en hauteur
            .Orientation = xlLandscape 'Portrait = xlPortrait ou Paysage = xlLandscape
End With

With Sheets("Stats générales").PageSetup
            .Zoom = False
            .PrintArea = "E6:O28" 'Zone d'impression
            .LeftMargin = Application.InchesToPoints(0.8) 'Marge gauche
            .RightMargin = Application.InchesToPoints(0.1)  'Marge droite
            .TopMargin = Application.InchesToPoints(0.8) 'Marge haut de page ou top
            .BottomMargin = Application.InchesToPoints(0.8) 'Marge bas de page si nécessaire
            .FitToPagesWide = 1 'Définit le nombre de pages à l’échelle
            .FitToPagesTall = 1 'Définit le nombre de pages en hauteur
            .Orientation = xlLandscape 'Portrait = xlPortrait ou Paysage = xlLandscape
End With

Sheets(Array("Stats population", "Stats métiers", "Stats générales")).PrintPreview 'Prévisualiser

'**********
'LES LIGNES A DEMASQUER SONT ICI
Sheets("Stats population").Range("12:13").EntireRow.Hidden = False
'**********

Sheets("Stats métiers").Visible = bStatM
Sheets("Stats générales").Visible = bStatG

Sheets("Accueil").Select

End Sub

@Phil69970

Merci Phil69970,

J'ai pu adapter les autres arguments ci-dessous :

VB:
 .[9:10].EntireRow.Interior.ColorIndex = xlNone 'Intérieur incolore des lignes
 .[D15:E15,G15:H15].Interior.Color = [A1].Interior.Color 'Colore la plage en blanc selon la cellule [A1] non masquée
 .[D15:E15,G15:H15].Font.ColorIndex = 1 'Données renseignées - Colore le texte en noir (1 = noir)
 .[D15:E15,G15:H15].Borders.LineStyle = xlNone 'Bordures de cellules incolores

Merci pour ton aide.

Très bonne soirée.

Tchotchodu31
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
3 K
Retour