Macro ralenties par la vision des sauts de page

Le
Manbas
Bonjour à tous,
Voici mon problème
Les macros de mon classeur tournent normalement. Jusqu'au moment où je lance
une impression selon une mise en page prédeterminée!
Même après avoir remis "l'affichage normal" sur la feuille, les pointillés
noirs de sauts de page sont visibles (différent des surlignes bleues) sur la
feuille.
Tant que cet affichage est présent les macros sont alors ralenties au point
d'être inutilisables.
Tout rentre dans l'ordre à la fermeture-réouverture du classeur: les
pointillés ne sont plus visibles sur la feuille.
Que faire?
Merci de vos suggestions.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Youky
Le #5381221
Faire un test avec ceci...
Youky

Application.ScreenUpdating = False
'ta macro ici , l'affichage n'est plus géré
'une fois terminé on remets l'affichage normal
Application.ScreenUpdating = True

"Manbas"
Bonjour à tous,
Voici mon problème
Les macros de mon classeur tournent normalement. Jusqu'au moment où je
lance une impression selon une mise en page prédeterminée!
Même après avoir remis "l'affichage normal" sur la feuille, les pointillés
noirs de sauts de page sont visibles (différent des surlignes bleues) sur
la feuille.
Tant que cet affichage est présent les macros sont alors ralenties au
point d'être inutilisables.
Tout rentre dans l'ordre à la fermeture-réouverture du classeur: les
pointillés ne sont plus visibles sur la feuille.
Que faire?
Merci de vos suggestions.



Manbas
Le #5381211
Merci Youki .J'y avais pensé, ce n'est pas ça.


"Youky"
Faire un test avec ceci...
Youky

Application.ScreenUpdating = False
'ta macro ici , l'affichage n'est plus géré
'une fois terminé on remets l'affichage normal
Application.ScreenUpdating = True

"Manbas"
Bonjour à tous,
Voici mon problème
Les macros de mon classeur tournent normalement. Jusqu'au moment où je
lance une impression selon une mise en page prédeterminée!
Même après avoir remis "l'affichage normal" sur la feuille, les
pointillés noirs de sauts de page sont visibles (différent des surlignes
bleues) sur la feuille.
Tant que cet affichage est présent les macros sont alors ralenties au
point d'être inutilisables.
Tout rentre dans l'ordre à la fermeture-réouverture du classeur: les
pointillés ne sont plus visibles sur la feuille.
Que faire?
Merci de vos suggestions.








MichDenis
Le #5381171
A ) Au lieu de définir par programmation la mise en page
que tu veux utiliser, utilise la commande Fichier / mise en page
Et lorsque cette dernière sera selon tes attentes, enregistre
ton classeur... la mise en page sera enregistrée au même titre
que tes données. Tu as droit à une mise en page par feuille de calcul
contenue dans ton classeur.

B ) Si tu utilises par programmation, quelque chose du genre :
With Worksheets("sonNom")
.PageSetup.PrintArea = "AdresseDeLaPlageAImprimer"
.Printout
'Tu ne dois pas oublier cette ligne de code
.PageSetup.PrintArea = ""
End With

Et bon travail !



"Manbas"
Bonjour à tous,
Voici mon problème
Les macros de mon classeur tournent normalement. Jusqu'au moment où je lance
une impression selon une mise en page prédeterminée!
Même après avoir remis "l'affichage normal" sur la feuille, les pointillés
noirs de sauts de page sont visibles (différent des surlignes bleues) sur la
feuille.
Tant que cet affichage est présent les macros sont alors ralenties au point
d'être inutilisables.
Tout rentre dans l'ordre à la fermeture-réouverture du classeur: les
pointillés ne sont plus visibles sur la feuille.
Que faire?
Merci de vos suggestions.
Manbas
Le #5381071
Bonjour MichDenis.
Merci de t'intéresser à mon problème.
La feuille peut être de dimension très différente.
Une zone d'impression fixe : de A à N.
Plus une zone d'impression variable: des colonnes O à HH (avec au maximum 20
colonnes visibles, les autres réduites à la largeur zéro, et au minimum une
colonne visible).
Donc pour imprimer j'ai deux options qui je crois souscrivent à tes 2
remarques.
- La première solution a défini l'impression avant la programmation, par
Mise en Page/Feuille/Zone d'impression. C'est la solution que j'ai nommé
"impression rapide" pour l'utilisateur. La macro ne contient que
activesheet.printout. Eh bien le problème est quand même présent: les
pointillés subsistent sur la feuille et les codes VBA sont executés avec une
lenteur extrême
- La deuxième solution correspond à ton B). Je l'ai appelé "impression apres
formatage" au cas où l'edition par la première solution fournirait des pages
inutiles.Le probleme décrit est toujours le même, je n'avais pas mis
.PageSetup.PrintArea = "". Mais si je le rajoute ma première solution ne
fonctionnera peut-être plus?
Qu'importe, j'ai fais l'essai en rajoutant sur le bouton de sortie de mon
userform:
Application.ScreenUpdating = True (pour être certain)
ActiveSheet.PageSetup.PrintArea = "" avant de poursuivre les macros.
Effet obtenu: les pointillés sont déplacés sur la feuille, mais toujours
présents et la lenteur aussi!!!


"MichDenis" %23z$
A ) Au lieu de définir par programmation la mise en page
que tu veux utiliser, utilise la commande Fichier / mise en page
Et lorsque cette dernière sera selon tes attentes, enregistre
ton classeur... la mise en page sera enregistrée au même titre
que tes données. Tu as droit à une mise en page par feuille de calcul
contenue dans ton classeur.

B ) Si tu utilises par programmation, quelque chose du genre :
With Worksheets("sonNom")
.PageSetup.PrintArea = "AdresseDeLaPlageAImprimer"
.Printout
'Tu ne dois pas oublier cette ligne de code
.PageSetup.PrintArea = ""
End With

Et bon travail !



"Manbas"
Bonjour à tous,
Voici mon problème
Les macros de mon classeur tournent normalement. Jusqu'au moment où je
lance
une impression selon une mise en page prédeterminée!
Même après avoir remis "l'affichage normal" sur la feuille, les pointillés
noirs de sauts de page sont visibles (différent des surlignes bleues) sur
la
feuille.
Tant que cet affichage est présent les macros sont alors ralenties au
point
d'être inutilisables.
Tout rentre dans l'ordre à la fermeture-réouverture du classeur: les
pointillés ne sont plus visibles sur la feuille.
Que faire?
Merci de vos suggestions.





MichDenis
Le #5380991
Ce que j'ai publié, ce n'est pas 2 façons de faire !

En fait, il est préférable de combiner les 2.

Pour ce qui est des "pointillé" cela dépend de l'option
définie dans "Menu" / outils / options / Onglet Affichage -
l'option "Saut de page" que tu peux cocher ou non manuellement
ou définir par programmation.

As-tu essayer de copier le contenu de ton classeur dans un autre classeur
Pour copier toutes les feuilles
Sheets.Copy
et manuellement, tu peux glisser à l'aide de la souris en gardant la touche
"contrôle" enfoncer, chacun des modules "Standard" ,"Classe"....en utilisant
la fenêtre de l'éditeur de code.

As-tu inséré des "sauts de page personnalisés" dans ta feuille ?
si oui enlève les. (préférablement avant de faire la copie du classeur)

Si tu as des plages non contigües que tu veux imprimer, rien ne t 'empêche
de boucler sur ces plages en définissant ces dernières avec PrintArea tel
que présenté dans mon message précédent...

Au delà de ça, je ne sais pas .... absent pour le reste de la journée.



"Manbas"
Bonjour MichDenis.
Merci de t'intéresser à mon problème.
La feuille peut être de dimension très différente.
Une zone d'impression fixe : de A à N.
Plus une zone d'impression variable: des colonnes O à HH (avec au maximum 20
colonnes visibles, les autres réduites à la largeur zéro, et au minimum une
colonne visible).
Donc pour imprimer j'ai deux options qui je crois souscrivent à tes 2
remarques.
- La première solution a défini l'impression avant la programmation, par
Mise en Page/Feuille/Zone d'impression. C'est la solution que j'ai nommé
"impression rapide" pour l'utilisateur. La macro ne contient que
activesheet.printout. Eh bien le problème est quand même présent: les
pointillés subsistent sur la feuille et les codes VBA sont executés avec une
lenteur extrême
- La deuxième solution correspond à ton B). Je l'ai appelé "impression apres
formatage" au cas où l'edition par la première solution fournirait des pages
inutiles.Le probleme décrit est toujours le même, je n'avais pas mis
.PageSetup.PrintArea = "". Mais si je le rajoute ma première solution ne
fonctionnera peut-être plus?
Qu'importe, j'ai fais l'essai en rajoutant sur le bouton de sortie de mon
userform:
Application.ScreenUpdating = True (pour être certain)
ActiveSheet.PageSetup.PrintArea = "" avant de poursuivre les macros.
Effet obtenu: les pointillés sont déplacés sur la feuille, mais toujours
présents et la lenteur aussi!!!


"MichDenis" %23z$
A ) Au lieu de définir par programmation la mise en page
que tu veux utiliser, utilise la commande Fichier / mise en page
Et lorsque cette dernière sera selon tes attentes, enregistre
ton classeur... la mise en page sera enregistrée au même titre
que tes données. Tu as droit à une mise en page par feuille de calcul
contenue dans ton classeur.

B ) Si tu utilises par programmation, quelque chose du genre :
With Worksheets("sonNom")
.PageSetup.PrintArea = "AdresseDeLaPlageAImprimer"
.Printout
'Tu ne dois pas oublier cette ligne de code
.PageSetup.PrintArea = ""
End With

Et bon travail !



"Manbas"
Bonjour à tous,
Voici mon problème
Les macros de mon classeur tournent normalement. Jusqu'au moment où je
lance
une impression selon une mise en page prédeterminée!
Même après avoir remis "l'affichage normal" sur la feuille, les pointillés
noirs de sauts de page sont visibles (différent des surlignes bleues) sur
la
feuille.
Tant que cet affichage est présent les macros sont alors ralenties au
point
d'être inutilisables.
Tout rentre dans l'ordre à la fermeture-réouverture du classeur: les
pointillés ne sont plus visibles sur la feuille.
Que faire?
Merci de vos suggestions.





Manbas
Le #5380951
Bingo!
Je ne savais pas que les pointillés étaient commandés par une case à cocher
dans l'affichage.
Avec Activesheet.DisplayAutomaticPageBreaks = False tout rentre dans l'ordre
!!!
Merci ++++ MichDenis
A bientôt


"MichDenis"
Ce que j'ai publié, ce n'est pas 2 façons de faire !

En fait, il est préférable de combiner les 2.

Pour ce qui est des "pointillé" cela dépend de l'option
définie dans "Menu" / outils / options / Onglet Affichage -
l'option "Saut de page" que tu peux cocher ou non manuellement
ou définir par programmation.

As-tu essayer de copier le contenu de ton classeur dans un autre classeur
Pour copier toutes les feuilles
Sheets.Copy
et manuellement, tu peux glisser à l'aide de la souris en gardant la
touche
"contrôle" enfoncer, chacun des modules "Standard" ,"Classe"....en
utilisant
la fenêtre de l'éditeur de code.

As-tu inséré des "sauts de page personnalisés" dans ta feuille ?
si oui enlève les. (préférablement avant de faire la copie du classeur)

Si tu as des plages non contigües que tu veux imprimer, rien ne t 'empêche
de boucler sur ces plages en définissant ces dernières avec PrintArea tel
que présenté dans mon message précédent...

Au delà de ça, je ne sais pas .... absent pour le reste de la journée.



"Manbas"
Bonjour MichDenis.
Merci de t'intéresser à mon problème.
La feuille peut être de dimension très différente.
Une zone d'impression fixe : de A à N.
Plus une zone d'impression variable: des colonnes O à HH (avec au maximum
20
colonnes visibles, les autres réduites à la largeur zéro, et au minimum
une
colonne visible).
Donc pour imprimer j'ai deux options qui je crois souscrivent à tes 2
remarques.
- La première solution a défini l'impression avant la programmation, par
Mise en Page/Feuille/Zone d'impression. C'est la solution que j'ai nommé
"impression rapide" pour l'utilisateur. La macro ne contient que
activesheet.printout. Eh bien le problème est quand même présent: les
pointillés subsistent sur la feuille et les codes VBA sont executés avec
une
lenteur extrême
- La deuxième solution correspond à ton B). Je l'ai appelé "impression
apres
formatage" au cas où l'edition par la première solution fournirait des
pages
inutiles.Le probleme décrit est toujours le même, je n'avais pas mis
.PageSetup.PrintArea = "". Mais si je le rajoute ma première solution ne
fonctionnera peut-être plus?
Qu'importe, j'ai fais l'essai en rajoutant sur le bouton de sortie de mon
userform:
Application.ScreenUpdating = True (pour être certain)
ActiveSheet.PageSetup.PrintArea = "" avant de poursuivre les macros.
Effet obtenu: les pointillés sont déplacés sur la feuille, mais toujours
présents et la lenteur aussi!!!


"MichDenis" %23z$
A ) Au lieu de définir par programmation la mise en page
que tu veux utiliser, utilise la commande Fichier / mise en page
Et lorsque cette dernière sera selon tes attentes, enregistre
ton classeur... la mise en page sera enregistrée au même titre
que tes données. Tu as droit à une mise en page par feuille de calcul
contenue dans ton classeur.

B ) Si tu utilises par programmation, quelque chose du genre :
With Worksheets("sonNom")
.PageSetup.PrintArea = "AdresseDeLaPlageAImprimer"
.Printout
'Tu ne dois pas oublier cette ligne de code
.PageSetup.PrintArea = ""
End With

Et bon travail !



"Manbas"
Bonjour à tous,
Voici mon problème
Les macros de mon classeur tournent normalement. Jusqu'au moment où je
lance
une impression selon une mise en page prédeterminée!
Même après avoir remis "l'affichage normal" sur la feuille, les
pointillés
noirs de sauts de page sont visibles (différent des surlignes bleues) sur
la
feuille.
Tant que cet affichage est présent les macros sont alors ralenties au
point
d'être inutilisables.
Tout rentre dans l'ordre à la fermeture-réouverture du classeur: les
pointillés ne sont plus visibles sur la feuille.
Que faire?
Merci de vos suggestions.











Publicité
Poster une réponse
Anonyme