IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

définir une zone d'impression en fonction du nombre de ligne.


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 343
    Points : 55
    Points
    55
    Par défaut définir une zone d'impression en fonction du nombre de ligne.
    Bonjour

    J'ai une question a poser. Est il possible de définir une zone d'impression en fonction du nombre de ligne.

    Je m'explique: j'ai un classeur et suivant les concours il y a de 50 à 250 adhérents et a chaque fois que je doit imprimer je doit définir une zone d'impression. Y a t-il en VBA un code qui permette de définir la zone d'impression suivant le nombre de ligne a imprimer?

    Je vous remercie de votre aide
    Cordialement
    Max

  2. #2
    Membre éclairé
    Avatar de bifconsult
    Homme Profil pro
    Consultant
    Inscrit en
    Mars 2012
    Messages
    189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2012
    Messages : 189
    Points : 877
    Points
    877
    Par défaut
    Bonjour,

    Pour faire simple, il suffit d'enregistrer un macro lorsque vous définissez la zone d'impression.

    Ensuite, paramétrez-là en fonction de la dernière ligne que vous voulez imprimer.

    Cette ligne de code renvoie la dernière ligne d'une colonne donnée:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Last_row = Cells(Cells.Rows.Count, X).End(xlUp).Row
    'X = le numéro de colonne où se trouve la liste des participants

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 343
    Points : 55
    Points
    55
    Par défaut
    Bonjour Bifconsult

    Je vous remercie mais soit j'ai pas suivie la consigne ou alors je ne comprend pas j'ai fait ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub Macro2()
    '
    ' Macro2 Macro
    '
     
    '
        ActiveWindow.SmallScroll Down:=-78
        Range("A1:G105").Select
        ActiveSheet.PageSetup.PrintArea = "$A$1:$G$105"
        Range("I3").Select
     
        Last_row = Cells(Cells.Rows.Count, C).End(xlUp).Row
    'C = le numéro de colonne où se trouve la liste des participants
    End Sub
    Et sa ne fonctionne pas message d'erreur " erreur definie par l'application ou par l'objet"

    Cordialement

    Max

  4. #4
    Membre chevronné Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Points : 1 999
    Points
    1 999
    Par défaut
    Bonsoir,

    Il existe de nombreux exemples sur le net, un ici

  5. #5
    Membre éclairé
    Avatar de bifconsult
    Homme Profil pro
    Consultant
    Inscrit en
    Mars 2012
    Messages
    189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2012
    Messages : 189
    Points : 877
    Points
    877
    Par défaut
    Si la visite sur les exempes n'avait pas suffit:

    Il faut mettre la ligne "last_row" en début de code.
    Ensuite, la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.PageSetup.PrintArea = "$A$1:$G$105"
    Devient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.PageSetup.PrintArea = "$A$1:$G$" & last_row

Discussions similaires

  1. [XL-2010] Définir Zone d'impression en fonction d'une boite de dialogue
    Par graphikris dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 31/01/2015, 17h42
  2. En VBA définir une zone d'impression
    Par maxval18 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 21/01/2013, 16h57
  3. Réponses: 2
    Dernier message: 14/04/2011, 12h19
  4. Définir une zone d'impression
    Par Didpa dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 10/03/2009, 15h12
  5. définir une zone d'impression sous Excel
    Par mirumoto dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 25/11/2005, 12h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo