defilement intempestif à l'écran en vba

  • Initiateur de la discussion Initiateur de la discussion agnes
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

A

agnes

Guest
BONJOUR à tous,

j'ai un classeur avec 4 feuilles
une seule est apparente les autres sont masquées

sur la feuille apparente, j'ai un userform avec divers boutons
dont un bouton impression qui va chercher des infos dans les feuilles cachées

mon problème est le défilement à l'écran des diverses feuilles cachées quand je déclenche
le bouton imprimer

un vrai feu artifice, ...mais pas très agréable à regarder!

y aurait-il un moyen d'éviter cela en restant sur la seule feuille apparente.
 
Salut Agnès, Pascal, le Forum

Excuses Agnès de squatter ton fil mùais (Arrêtes José !!! 😛 ) s'il s'agit...de classeurs. je m'explique si ma macro fait appel à un autre classeur dans le même dossier le code ne s'opère pas (l'écran reste gris
O raie tu une solution :whistle: :whistle: :whistle:

@+ :woohoo:
 
J'ai essayé mais je plante encore avec le même pb


Private Sub IMPRIMER_Click()
Application.ScreenUpdating = False

Calculer 'fonction qui faut divers calculs

Sheets('Doc').Visible = True ' (feuille cachée) sinon ça plante
Sheets('Doc').Select
ActiveSheet.PageSetup.PrintArea = '$BI$65:$BW$128'
ActiveWindow.SelectedSheets.PrintOut From:=1, to:=1, Copies:=1
ActiveSheet.PageSetup.PrintArea = ''
Sheets('Doc').Visible = False
Worksheets('Plan').Activate 'seule feuille visible du classeur
Unload Me

Application.ScreenUpdating = True
End Sub
 
Bonsoir Agnès, Pascal et Dull, bonsoir à toutes et à tous 🙂

Je suis assez surpris que la solution donnée par Pascal ne fonctionne pas chez toi : n'aurais-tu pas, dans la procédure Calculer, une modification de la valeur de ScreenUpdating ?

Essaie quand même ce code :

Private Sub IMPRIMER_Click()
'
  Calculer 'fonction qui faut divers calculs

  Application.ScreenUpdating = False

  With Sheets('Doc')
    .Visible = True
    .Range('$BI$65:$BW$128').PrintOut From:=1, to:=1
    .Visible = False
  End With

  Unload Me

  Application.ScreenUpdating = True

End Sub

Tiens-nous au courant.

A+ 😉
 
bonjour à tous

je reprends le fil quelques temps après,

ton interrogation comprenanit la solution
bravo
j'avais bien laissé une valeur de ScreenUpdating
dans ma fonction

merci mon pb est résolu
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

B
Réponses
1
Affichages
1 K
B
Réponses
1
Affichages
1 K
Z
Réponses
3
Affichages
19 K
Z
Z
Réponses
15
Affichages
3 K
Z
Retour