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 :

Imprimer un tableau jusqu'à la dernière cellule non vide [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Logisticien
    Inscrit en
    Avril 2016
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Logisticien
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2016
    Messages : 70
    Par défaut Imprimer un tableau jusqu'à la dernière cellule non vide
    Salut à tous !

    je debute en VBA et j'ai un souci dans l'impression des données contenus dans une feuille excel
    En fait je dispose d'un échéancier qui comporte un maximum de 250 mensualités
    ces 250 mensualités représentant 250 lignes. Lorsque j'exécute la macro pour imprimer une échéance qui
    ne comporte que 24 mensualités pas exemple, elle m'imprime tous le tableau jusqu'à 250 lignes
    or de la ligne 25 à la ligne 250, toutes les cellules sont vide et ne contiennent que des formules.
    Quelqu'un peut-il me venir en aide ? Car je souhaite que cette macro n'imprime que la plage contenant
    les données. j'utilise ce code mais ça change rien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub PrintData()
        Dim Ls As Integer
        Ls = Sheets("Feuil2").Range("A1:L250").End(xlUp).Row
        With Feuil2
        Range("A1:L250").Select
        Selection.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
        Selection.End(xlUp).Select
        End With
    End Sub
    Cordialement

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Dans quelle colonne se trouvent des cellules vides (sans formules) sur les lignes que tu ne veux pas imprimer ?

  3. #3
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 680
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 680
    Par défaut
    edit: Au temps pour moi, j'avais mal lu.
    Merci Menhir.

  4. #4
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par halaster08 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Ls = Sheets("Feuil2").Range("A1:L250").End(xlUp).Row
    Ca ne va pas marcher puisque le End(xlUp) considèrera que les cellules avec fonctions ne sont pas vides.
    D'où la question de mon message précédent.

  5. #5
    Membre confirmé
    Homme Profil pro
    Logisticien
    Inscrit en
    Avril 2016
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Logisticien
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2016
    Messages : 70
    Par défaut Imprimer un tableau jusqu'à la dernière cellule non vide
    Salut
    Merci Pour l’intérêt à ma préoccupation

    Le tableau va de la 1ere à la 12eme colonne et de la ligne 1 à la ligne 250
    donc la colonne vide après le tableau c'est la colonne 13
    et en ligne, c'est la ligne 251.

    Cordialement !

  6. #6
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Je crois que tu n'as pas compris ma question.
    Je ne demande pas quelle colonne est vide mais dans quelle colonne se trouve à la fois des cellules pleines et des cellules vide, pour tester la limite de la zone que tu souhaites imprimer.
    Il doit s'agir de cellules vides sans formules car Excel considère qu'une cellule avec formule est pleine, même si elle n'affiche rien.

    Par exemple, si tu as 24 mensualité, quelle est la colonne qui est vide à partir de la ligne 25 ?

  7. #7
    Membre confirmé
    Homme Profil pro
    Logisticien
    Inscrit en
    Avril 2016
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Logisticien
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2016
    Messages : 70
    Par défaut
    Salut

    J'ai testé avec la boucle Do While que tu m'as proposé mais les 250 lignes sont
    toujours imprimées. Donc par défaut avant impression je Vérifie le nombre page
    non vide et je choisi par exemple page 1 à .... Ainsi les pages sans contenu ne
    sont pas imprimées. Mais c'est une tâche redondante que je souhaite automatiser.
    Le tableau étant un échéancier d'emprunt, il n'y a pas de cellule vide sur la plage ("A1:K250")
    car elles sont toutes chargés de formules j'ai appris de Menhir que les cellules contenant
    des formules sont considérées par excel comme étant non vide. Il y a surement une astuce
    pour automatiser ce genre d'opération.

    Merci bien de ta proposition. je continue de creuser !


    Amicalement !

    Par exemple, si tu as 24 mensualité, quelle est la colonne qui est vide à partir de la ligne 25 ?
    C'est exactement cela !

    Avec 24 mensualités, la colonne qui est vide à partir de la ligne 25
    c'est la colonne 12: Range("L12"). Mais sur la plage [A1:K250],
    chaque cellule contient une formule pré-remplie.

    Bien à toi,
    TsafM

  8. #8
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 680
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 680
    Par défaut
    Une proposition:
    Je scrute la colonne A depuis la ligne 250 vers le haut, dès qu'une cellule est non vide je sauve sa valeur, et j'utilise cette valeur dans le print

    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 PrintData()
        Dim Ls As Integer
    Dim i As Integer
    i = 250
    Do While Range("A" & i) = ""
    i = i - 1
    Loop
    Ls = i
           With Feuil2
        Range("A1:L" & Ls).Select
        Selection.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
        Selection.End(xlUp).Select
        End With
    End Sub

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 04/09/2013, 17h05
  2. Dernière cellule non vide d'une colonne
    Par benfatpatra dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/10/2008, 17h28
  3. renvoi dernière cellule non vide d'une colonne
    Par emilie31 dans le forum Excel
    Réponses: 5
    Dernier message: 29/09/2008, 15h26
  4. Dernière cellule non vide d'une colonne
    Par RéviAT dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/02/2008, 14h43
  5. [VBA-E] Copier valeur jusqu'à la prochaine cellule non vide
    Par desdenova dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 28/02/2008, 11h22

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