Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Déterminer où se trouve saut de page automatique

13 réponses
Avatar
Jean-Claude
bonjour,
J'aimerais par macro déplacer des données d'une feuille à une autre pour les
y imprimmer.
Ces données sont variables en nombre, classées par ordre alphabétique.
Type de données
Colonne A : Nom
Colonne B : N° Fax
Colonne C : Contacts divers
Si l'on imprimme comme cela il peut y avoir 10 pages avec beaucoup de pertes
de places
Aussi j'aimerais placer les données sur les colonnes A B C et E F G
D étant réservée à un espacement pour plus de lisibilité
Jusque là ça tourne
Pour insérer des sauts de pages manuels j'ai déja utilisé une technique de
décompte de lignes. Tout les x lignes on insère un saut de page ...
Mon problème c'est qu'il peut y avoir plusieurs lignes dans une même
cellules. Je présume qu'en "explorant" chaque cellule il est possible de
trouver ce nombre de ligne.
Autre piste mesurer la hauteur de chaque ligne et le cumuler
Mais n'y a-t-il pas une solution toute simple pour savoir ou s'insère le
saut de page automatique?

En espérant avoir été clair ;_)
A+ et merci d'avance
--
A+
Jean-Claude
jcvalAenlever@wanamoo.fr - Aenlever bien évidement

10 réponses

1 2
Avatar
Jean-Claude
Re,
En cherchant mieux, j'ai trouvé ceci
Worksheets(1).HPageBreaks(1).Location
Qui devrait me donner le n° de la ligne où se situe le 1er saut de page de
la 1ere feuille.
Or il me donne le contenu De la cellule de la 1ère ligne suivant le saut de
page
Est-ce normal docteur ???
A+
Avatar
Michel Gaboly
Bonsoir,

Location renvoie un objet Range, utilise :

Worksheets(1).HPageBreaks(1).Location.Row


Re,
En cherchant mieux, j'ai trouvé ceci
Worksheets(1).HPageBreaks(1).Location
Qui devrait me donner le n° de la ligne où se situe le 1er saut de page de
la 1ere feuille.
Or il me donne le contenu De la cellule de la 1ère ligne suivant le saut de
page
Est-ce normal docteur ???
A+


--
Cordialement,

Michel Gaboly
http://www.gaboly.com

Avatar
Jean-Claude
Est-on bête des fois
Merci
Tant qu'on y est pourquoi

NbrSautPage = Activeheet.HPageBreaks.Count

me renvoie 1 alors qu'il y a 4 pages à imprimer dans ma feuille
A+
Jc
Avatar
Michel Gaboly
Re,

;-))

Peut-être l'histoire des piquets et des intervalles : une rupture
horizontale et une rupture vertivale, cela fait bien 4 pages.

Par contre, si les 4 pages sont superposées, tu devrais avoir
3 HPageBreaks.

C'est le cas chez moi, en faisant un document de 160 lignes, avec
un saut de page horizontal toutes les 53 lignes (si hauteur de ligne
homogène)

3 * 53 = 159, j'ai 4 pages en hauteur, et

ActiveSheet.HPageBreaks.Count renvoie bien 3




Est-on bête des fois
Merci
Tant qu'on y est pourquoi

NbrSautPage = Activeheet.HPageBreaks.Count

me renvoie 1 alors qu'il y a 4 pages à imprimer dans ma feuille
A+
Jc


--
Cordialement,

Michel Gaboly
http://www.gaboly.com

Avatar
FxM
Bonsoir,

non testé :
NbrSautPage = Activeheet.VPageBreaks.Count


H pour horizontal
V pour vertical ?

@+
FxM



Jean-Claude wrote:

Est-on bête des fois
Merci
Tant qu'on y est pourquoi

NbrSautPage = Activeheet.HPageBreaks.Count

me renvoie 1 alors qu'il y a 4 pages à imprimer dans ma feuille
A+
Jc




Avatar
Jean-Claude
Peut-être l'histoire des piquets et des intervalles : une rupture
horizontale et une rupture vertivale, cela fait bien 4 pages.

Par contre, si les 4 pages sont superposées, tu devrais avoir
3 HPageBreaks.

C'est le cas chez moi, en faisant un document de 160 lignes, avec
un saut de page horizontal toutes les 53 lignes (si hauteur de ligne
homogène)

3 * 53 = 159, j'ai 4 pages en hauteur, et

ActiveSheet.HPageBreaks.Count renvoie bien 3


Quatre pages verticales et 1 HPageBreaks
Où sont passés les manquant intervalle ou non
Damned
Le hasard faisant bien les choses 161 lignes occupées :-)

Avatar
Jean-Claude
En complément,

For Each SdP In Fax.HPageBreaks
........
Next SdP

ne passe qu'une fois alors qu'il y a quatre pages comme l'atteste le bas de
page en prévisualisation
1/4 pages ,2/4 pages ......
Avatar
Jean-Claude
Avec VPageBreah j'obtiens 0 ce qui esqt logique ma foi... ;-)
Avatar
AV
Ce bout de code qui fontionne sans problème sous XL97, plante lamentablement
sous XL2000 !
Et chez vous ?
J'ai loupé une MAJ ? Bug ?

Sub SautDePage()
Dim St As HPageBreak
For Each St In ActiveSheet.HPageBreaks
MsgBox St.Location.Row
Next St
End Sub

AV
Avatar
Philippe.R
Bonjour Alain,
Pas de problème chez moi avec XL 2002
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002

"AV" a écrit dans le message de news:
Ce bout de code qui fontionne sans problème sous XL97, plante lamentablement
sous XL2000 !
Et chez vous ?
J'ai loupé une MAJ ? Bug ?

Sub SautDePage()
Dim St As HPageBreak
For Each St In ActiveSheet.HPageBreaks
MsgBox St.Location.Row
Next St
End Sub

AV




1 2