Supprimer mettre des sauts de page

Le
SB
Bonjour à toutes et à tous,
Je souhaite supprimer par macro un saut de page, quand je fais
l'enregistreur il me met ActveSheet.HPageBreaks(3).Delete
Le problème c'est que ce ne sera pas forcément le 3ème je veux supprimer
le saut de page avant la ligne 87 par ex
Merci de votre aide,
SB
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Trirème
Le #4907551
Bonsoir SB
Peut être un peu brutal force, mais essaie ceci :

For Each saut In ActiveSheet.HPageBreaks
If saut.Location.Row = 15 Then
saut.Delete
Exit For ' Sinon erreur sur le dernier saut (car supprimé de la collection)
End If
Next

Cordialement,
Trirème

Bonjour à toutes et à tous,
Je souhaite supprimer par macro un saut de page, quand je fais
l'enregistreur il me met ActveSheet.HPageBreaks(3).Delete
Le problème c'est que ce ne sera pas forcément le 3ème... je veux supprimer
le saut de page avant la ligne 87 par ex
Merci de votre aide,
SB




SB
Le #4907491
Bonjour,
ça marche pas, j'ai l'erreur "9" L'indice n'appartient pas à la sélection..
Merci de ton aide
SB



"Trirème" %
Bonsoir SB
Peut être un peu brutal force, mais essaie ceci :

For Each saut In ActiveSheet.HPageBreaks
If saut.Location.Row = 15 Then
saut.Delete
Exit For ' Sinon erreur sur le dernier saut (car supprimé de la
collection)
End If
Next

Cordialement,
Trirème

Bonjour à toutes et à tous,
Je souhaite supprimer par macro un saut de page, quand je fais
l'enregistreur il me met ActveSheet.HPageBreaks(3).Delete
Le problème c'est que ce ne sera pas forcément le 3ème... je veux
supprimer le saut de page avant la ligne 87 par ex
Merci de votre aide,
SB




Trirème
Le #4907471
Bonjour,
ça marche pas, j'ai l'erreur "9" L'indice n'appartient pas à la sélection..


C'est curieux. Fais tourner la macro en mode pas à pas (touche F8) et regarde si cela se
produit immédiatement ou après plusieurs tours dans la boucle.
Normalement ça devrait fonctionner, avec ou sans zone d'impression sur la feuille.
En tout cas chez moi ça fonctionne (2003), avec ou sans saut de page, avec ou sans zone
d'impression.

NB J'avais mis "saut.Location.Row = 15" pour tester la ligne 15. À adapter.

À suivre
Trirème

SB
Le #4907441
Ben nan y veut pas, j'ai la même version d'excel, ça bug dès la 1ère ligne
?!
Désolé,
SB
"Trirème"
Bonjour,
ça marche pas, j'ai l'erreur "9" L'indice n'appartient pas à la
sélection..


C'est curieux. Fais tourner la macro en mode pas à pas (touche F8) et
regarde si cela se produit immédiatement ou après plusieurs tours dans la
boucle.
Normalement ça devrait fonctionner, avec ou sans zone d'impression sur la
feuille.
En tout cas chez moi ça fonctionne (2003), avec ou sans saut de page, avec
ou sans zone d'impression.

NB J'avais mis "saut.Location.Row = 15" pour tester la ligne 15. À
adapter.

À suivre
Trirème



Trirème
Le #4907421
Utilise la fenêtre 'Espions' pour y glisser des variables et vérifier leurs valeurs.

Notamment, glisse le mot 'ActiveSheet.HPageBreaks' que tu complèteras par '.Count' pour
obtenir 'ActiveSheet.HPageBreaks.Count'.
Tu auras ainsi le nombre de saut de page dans la feuille dès que la macro passera sur la
ligne.
De la même façon glisse le mot (sélectionné) 'saut.Location.Row' pour connaître la ligne
du saut de page courant...

Sinon... pas d'idée. L'erreur vient du fait que la macro pointe vers un objet - en
l'occurence un objet indicé - qui n'existe pas.
Utilise-tu la boucle telle que je l'ai écrite ou l'as-tu modifiée ?
Essaie sur une page vide d'un nouveau classeur :

Sub supsp()
For Each saut In ActiveSheet.HPageBreaks
If saut.Location.Row = 15 Then
saut.Delete
Exit For ' Sinon erreur sur le dernier saut (car supprimé de la collection)
End If
Next
End Sub

À suivre
Trirème

Ben nan y veut pas, j'ai la même version d'excel, ça bug dès la 1ère ligne
?!
Désolé,
SB
"Trirème"
Bonjour,
ça marche pas, j'ai l'erreur "9" L'indice n'appartient pas à la
sélection..
C'est curieux. Fais tourner la macro en mode pas à pas (touche F8) et

regarde si cela se produit immédiatement ou après plusieurs tours dans la
boucle.
Normalement ça devrait fonctionner, avec ou sans zone d'impression sur la
feuille.
En tout cas chez moi ça fonctionne (2003), avec ou sans saut de page, avec
ou sans zone d'impression.

NB J'avais mis "saut.Location.Row = 15" pour tester la ligne 15. À
adapter.

À suivre
Trirème







JB
Le #4907411
Bonjour,

Supprime les sauts de page entre A10 et A20

For i = ActiveSheet.HPageBreaks.Count To 1 Step -1
If Not Intersect([A10:A20],
Range(ActiveSheet.HPageBreaks(i).Location.Address)) Is Nothing Then
ActiveSheet.HPageBreaks(i).Delete
End If
Next i

JB


On 29 juin, 17:09, "SB"
Bonjour à toutes et à tous,
Je souhaite supprimer par macro un saut de page, quand je fais
l'enregistreur il me met ActveSheet.HPageBreaks(3).Delete
Le problème c'est que ce ne sera pas forcément le 3ème... je veux s upprimer
le saut de page avant la ligne 87 par ex
Merci de votre aide,
SB


SB
Le #4907391
Non je n'ai rien modifié à ta macro (j'ai fait u copier coller) en fait la
boucle ne commence même pas...
Cordialement,
SB

"Trirème" uX1JT%
Utilise la fenêtre 'Espions' pour y glisser des variables et vérifier
leurs valeurs.

Notamment, glisse le mot 'ActiveSheet.HPageBreaks' que tu complèteras par
'.Count' pour obtenir 'ActiveSheet.HPageBreaks.Count'.
Tu auras ainsi le nombre de saut de page dans la feuille dès que la macro
passera sur la ligne.
De la même façon glisse le mot (sélectionné) 'saut.Location.Row' pour
connaître la ligne du saut de page courant...

Sinon... pas d'idée. L'erreur vient du fait que la macro pointe vers un
objet - en l'occurence un objet indicé - qui n'existe pas.
Utilise-tu la boucle telle que je l'ai écrite ou l'as-tu modifiée ?
Essaie sur une page vide d'un nouveau classeur :

Sub supsp()
For Each saut In ActiveSheet.HPageBreaks
If saut.Location.Row = 15 Then
saut.Delete
Exit For ' Sinon erreur sur le dernier saut (car supprimé de la
collection)
End If
Next
End Sub

À suivre
Trirème

Ben nan y veut pas, j'ai la même version d'excel, ça bug dès la 1ère
ligne ?!
Désolé,
SB
"Trirème"
Bonjour,
ça marche pas, j'ai l'erreur "9" L'indice n'appartient pas à la
sélection..
C'est curieux. Fais tourner la macro en mode pas à pas (touche F8) et

regarde si cela se produit immédiatement ou après plusieurs tours dans
la boucle.
Normalement ça devrait fonctionner, avec ou sans zone d'impression sur
la feuille.
En tout cas chez moi ça fonctionne (2003), avec ou sans saut de page,
avec ou sans zone d'impression.

NB J'avais mis "saut.Location.Row = 15" pour tester la ligne 15. À
adapter.

À suivre
Trirème








SB
Le #4907381
Bonjour,
J'ai la même erreur qu'avec Trirème "9" L'indice n'appartient pas à la
sélection.
Merci
SB


"JB"
Bonjour,

Supprime les sauts de page entre A10 et A20

For i = ActiveSheet.HPageBreaks.Count To 1 Step -1
If Not Intersect([A10:A20],
Range(ActiveSheet.HPageBreaks(i).Location.Address)) Is Nothing Then
ActiveSheet.HPageBreaks(i).Delete
End If
Next i

JB


On 29 juin, 17:09, "SB"
Bonjour à toutes et à tous,
Je souhaite supprimer par macro un saut de page, quand je fais
l'enregistreur il me met ActveSheet.HPageBreaks(3).Delete
Le problème c'est que ce ne sera pas forcément le 3ème... je veux
supprimer
le saut de page avant la ligne 87 par ex
Merci de votre aide,
SB


SB
Le #4907361
Je pense avoir trouvé un début de réponse, en fait il compte tus les sauts
de pages.
Dans mon cas ActiveSheet.HPageBreaks.Count indique 7 alors que je n'ai que 3
sauts de pages imposés...
Il ne faudrait compter que les sauts de page imposés et je pense que la
boucle de JB devrait tourner.
Cordialement,
Sb


"SB"
Bonjour à toutes et à tous,
Je souhaite supprimer par macro un saut de page, quand je fais
l'enregistreur il me met ActveSheet.HPageBreaks(3).Delete
Le problème c'est que ce ne sera pas forcément le 3ème... je veux
supprimer le saut de page avant la ligne 87 par ex
Merci de votre aide,
SB



JB
Le #4907351
Ajouter

On Error Resume Next avant la ligne où l'erreur se produit.

JB
On 30 juin, 11:13, "SB"
Je pense avoir trouvé un début de réponse, en fait il compte tus le s sauts
de pages.
Dans mon cas ActiveSheet.HPageBreaks.Count indique 7 alors que je n'ai qu e 3
sauts de pages imposés...
Il ne faudrait compter que les sauts de page imposés et je pense que la
boucle de JB devrait tourner.
Cordialement,
Sb

"SB"



Bonjour à toutes et à tous,
Je souhaite supprimer par macro un saut de page, quand je fais
l'enregistreur il me met ActveSheet.HPageBreaks(3).Delete
Le problème c'est que ce ne sera pas forcément le 3ème... je veux
supprimer le saut de page avant la ligne 87 par ex
Merci de votre aide,
SB- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Publicité
Poster une réponse
Anonyme