VBA saut de page
Résolu/Fermé
juer31
Messages postés
98
Date d'inscription
mercredi 16 décembre 2015
Statut
Membre
Dernière intervention
28 mai 2019
-
22 mars 2019 à 15:23
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 29 mars 2019 à 09:51
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 29 mars 2019 à 09:51
1 réponse
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 762
23 mars 2019 à 16:19
23 mars 2019 à 16:19
Bonjour,
Activesheet.HPageBreaks.Add before:=Activesheet.Cells(26, 1)
28 mars 2019 à 20:47
Modifié le 28 mars 2019 à 22:11
Curieusement, on ne peut donc pas faire :
On ne peut pas définir un objet pour un saut de page particulier !
De plus, il existe toujours un saut de page non défini, ce qui génère une erreur lorsqu'on explore tous les sauts de page, voici donc un code à ajouter en fin de code (tu peux mettre le Dim au début) :
Dim hbk As HPageBreak On Error Resume Next For Each hbk In ActiveSheet.HPageBreaks If hbk.Location.Address = ActiveSheet.Cells(26, 1).Address Then hbk.Delete End If Next hbk On Error GoTo 0On pourrait aussi boucler jusqu'au pénultième saut de page mais ça me plait beaucoup moins :
Dim i as Integer With ActiveSheet For i = 1 To .HPageBreaks.Count - 1 If .HPageBreaks(i).Location.Address = .Cells(26, 1).Address Then .HPageBreaks(i).Delete End If Next i End WithModifié le 29 mars 2019 à 08:34
peut-être ceci:
https://docs.microsoft.com/fr-fr/office/vba/api/excel.worksheet.resetallpagebreaks
29 mars 2019 à 09:51
Chez moi avec 2016, ça fonctionne bien (il faut que la feuille contienne des valeurs à imprimer)