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

Conception Discussion :

Saut de page en respectant des blocs de ligne


Sujet :

Conception

  1. #1
    Membre régulier
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Janvier 2020
    Messages
    129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Janvier 2020
    Messages : 129
    Points : 73
    Points
    73
    Par défaut Saut de page en respectant des blocs de ligne
    Bonjour,
    Je recopie cette discussion dans le forum Excel/conception car je l'avais mise hier directement sous Excel.

    Pour générer un devis, j'ai fait un fichier excel.
    Il se décompose en 5-6 blocs différents:
    Un bloc de x lignes pour les équipements, un bloc de x lignes pour les options, un bloc de x lignes pour les conditions de paiements... etc
    Bien évidemment, le nb de ligne dans ces blocs varie en fonction de l'offre. Et souvent mon offre ne tient pas sur une seule page.
    J'aimerai paramétrer les sauts de page pour que les blocs de ligne ne soient pas coupés en 2, mais restent en entier soit sur la page 1 soit sur la 2. Si la dernière ligne d'un bloc est poussé sur la page 2, alors c'est tout le bloc qui passe.
    L'objectif étant la lisibilité du doc excel et du pdf que je génère ensuite.

    A savoir :
    Je constitue mon offre grâce à une macro qui ajoute des lignes
    J'ai des repères (des lettres) dans la colonne A (masquée) qui me permettent de repérer le début de chaque bloc
    Je n'aurai pas plus de 2 pages

    Rien trouvé sur ce forum et pas grand chose de concluant sur le net.
    Merci d'avance pour vos retours et pistes.

    Benoit

  2. #2
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

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

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 183
    Points : 5 515
    Points
    5 515
    Par défaut
    Bonjour,

    Une façon de faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Sub BlocPage()
        Dim kR As Long
        ActiveSheet.ResetAllPageBreaks
        For kR = 2 To 200
            If Rows(kR).PageBreak <> xlPageBreakNone Then
                '--- saut de page détecté
                Do
                    '--- remonte jusqu'à trouver marque en colonne 1
                    If Cells(kR, 1) = "" Then
                        kR = kR - 1
                    Else
                        Rows(kR).PageBreak = xlPageBreakManual
                        kR = kR + 1
                        Exit Do
                    End If
                Loop
            End If
        Next kR
    End Sub
    Bonne continuation.

  3. #3
    Membre régulier
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Janvier 2020
    Messages
    129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Janvier 2020
    Messages : 129
    Points : 73
    Points
    73
    Par défaut
    Bonjour Eric,
    Merci pour ton retour.
    Si je comprend bien :
    il supprime tous les sauts de page existants
    il descend toutes les lignes de 2 à 200 jusqu'à trouver un saut de page.
    Une fois trouvé, il remonte jusqu'à trouver qque chose en colonne A (càd le début du bloc qui c'est fait coupé en 2)
    Et là, il ajoute un saut

    ça m'a l'air au top, je testerais demain.
    Je te tiens au courant.

    Cordialement
    Benoit

  4. #4
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

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

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 183
    Points : 5 515
    Points
    5 515
    Par défaut
    Oui, c'est cela.
    Pour gagner quelques millisecondes,
    - s'il est certain qu'il y a toujours au moins X cellules sur la page 1, on peut indiquer
    For kR = X to 200
    - s'il est certain qu'il n'y aura jamais que 2 pages, on peut remplacer le Exit Do par Exit Sub.
    Cordialement.

  5. #5
    Membre régulier
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Janvier 2020
    Messages
    129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Janvier 2020
    Messages : 129
    Points : 73
    Points
    73
    Par défaut
    Bonjour,
    Impeccable !

    J'ai mis un moment à comprendre qu'il y avait une zone d'impression de définie (faite par mon prédécesseur) qui faisait tourner en rond la macro entre la ligne 39 et 46....

    Mais une fois cet écueil franchi, c'est du bonheur.

    Merci à toi

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

Discussions similaires

  1. [XL-2016] Saut de page en respectant des blocs de ligne
    Par BenoitL77 dans le forum Excel
    Réponses: 1
    Dernier message: 28/02/2020, 16h52
  2. [Généralités] Rutpure saut de page et calcul des totaux
    Par Invité dans le forum WinDev
    Réponses: 1
    Dernier message: 13/11/2015, 07h54
  3. [WD-2003] Saut de page génant Table des matières
    Par vieuxmonsieur dans le forum Word
    Réponses: 2
    Dernier message: 14/08/2012, 13h56
  4. [CR 10] Saut de page en fonction des champs
    Par Vincinho dans le forum Débuter
    Réponses: 10
    Dernier message: 28/01/2010, 17h39
  5. Saut de page trop facile des paragraphes
    Par fractalux dans le forum Mise en forme
    Réponses: 4
    Dernier message: 31/08/2007, 09h29

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