XL 2013 Impression d'une zone déféni à l'aide d'une macro

degards

XLDnaute Occasionnel
Bonjour à vous !!

J'aimerais savoir comment écrire ma macro pour pouvoir imprimer une feuille de calcul avec une zone défini mais qui pourrait se compléter pour remplir la page. Voici ce que j'ai réussi à faire
...
With ActiveSheet.PageSetup
.PrintTitleRows = "$1:$7"
.PrintArea = ("$A$1:$m$" & Cells(Rows.Count, 3).End(xlUp).Row)
Application.PrintCommunication = False
...
Je suis capable de déterminer la dernière ligne avec des données pour définir ma zone mais j'aimerais pouvoir compléter ma page avec des lignes vides afin d'éviter de me retrouver avec 2-3 lignes au centre de la feuille.

Merci
 

tototiti2008

XLDnaute Barbatruc
Re : Impression d'une zone déféni à l'aide d'une macro

Bonjour degards,

Je suis capable de déterminer la dernière ligne avec des données pour définir ma zone mais j'aimerais pouvoir compléter ma page avec des lignes vides afin d'éviter de me retrouver avec 2-3 lignes au centre de la feuille.
il te suffit de ne pas centrer ton contenu en hauteur (verticalement) dans la mise en page
 

degards

XLDnaute Occasionnel
Re : Impression d'une zone déféni à l'aide d'une macro

Superbe ça fontionne sauf que moi j'ai déjà des cellules avec bordure dans ma feuilles de calcul donc pas besoin de copier les lignes de la feuille 2 mais simplement de continuer à imprimer même les lignes vides et ce jusqu'à ce que la feuille soit complète avant l'impression
 

degards

XLDnaute Occasionnel
Re : Impression d'une zone déféni à l'aide d'une macro

Re bonjour, désolé du délai j'étais préoccupé avec la rentrée scolaire. Alors vous trouverais ci-joint mon fichier. Ce que j'aimerais c'est créer un bouton d'impression qui serait en mesure de m'imprimer tout les lignes où il y a des informations (par exemple la colonne D). Par exemple si dans mon tableau les lignes 8 à 19 sont compléter et bien l'impression imprimera les informations inscrites ainsi que quelques lignes vides soit jusqu'au saut de page (dans mon exemple ligne 25). Et si j'ai des informations jusqu'à la ligne 26 et bien j'aurais deux pages et l'impression des lignes vides se fera jusqu'à la ligne 43. Les colonnes de A à M doivent s'imprimer intégralement.

Alors c'est ça ma problématique
 

Pièces jointes

  • registre unité essai.xlsm
    167.4 KB · Affichages: 142

tototiti2008

XLDnaute Barbatruc
Re : Impression d'une zone déféni à l'aide d'une macro

Bonjour degards,

un essai

Code:
Sub tes()
Dim DerLig As Long, DerCol As Integer, i As Long, j As Long
    Application.ScreenUpdating = False
    With ActiveSheet
        .PageSetup.PrintArea = ""
        DerLig = .Range("D" & Rows.Count).End(xlUp).Row
        DerCol = .Cells(7, Columns.Count).End(xlToLeft).Column
        ActiveWindow.View = xlNormalView
        ActiveWindow.View = xlPageBreakPreview
        ActiveWindow.View = xlNormalView
        i = .HPageBreaks.Count
        For j = 1 To i
            If .HPageBreaks(j).Location.Row > DerLig Then
                DerLig = .HPageBreaks(j).Location.Row - 1
                Exit For
            End If
        Next
        .PageSetup.PrintArea = .Range(.Cells(1, 1).Address & ":" & .Cells(DerLig, DerCol).Address).Address
    End With
    Application.ScreenUpdating = True
End Sub
 
Dernière édition:

Discussions similaires

Réponses
6
Affichages
533
Réponses
7
Affichages
577

Statistiques des forums

Discussions
312 453
Messages
2 088 551
Membres
103 881
dernier inscrit
malbousquet