Arrêter du code le temps de l'impression
Salut à tous et bon matin,
Je vous soumets un petit problème que j'ai.
En appuyant sur un bouton, j'ai une sélection de ligne qui s'effectue et les lignes non-désirées deviennent masquées.
Ensuite, mon code demande une impression de la feuille en question.
Puis, on revient à l'affichage des lignes masquées.
Mon problème est que les lignes masquées redeviennent visibles avant la fin du code et sont donc imprimées. Je voudrais suspendre la procédure le temps de l'impression pour que ces lignes n'apparaissent pas au final.
Voici la séquence :
'var correspond à la dernière ligne pleine de la feuille.
'cbo_annees correspond à une année sélectionnée dans un combobox.
' la colonne 6 comprend un "1" si elle doit être imprimée ou est vide.
'scl_copies correspond à la valeur d'un scrollbar. Elle détermine le nombre de copies à imprimer.
Dans cette partie, je cache les lignes qui ne contiennent rien en colonne 6.
For n = 3 To var
If Worksheets("Finances" & cbo_annees.Value).Cells(n, 6).Value = "" Then
Worksheets("Finances" & cbo_annees.Value).Rows(n).Hidden = True
End If
Next n
Ici, je cache la colonne 6 qui contient les 1.
Worksheets("Finances" & cbo_annees.Value).Columns(6).Hidden = True
Là, on a l'impression.
Application.ScreenUpdating = False
Worksheets("Finances" & cbo_annees.Value).PrintOut copies:=scl_copies.Value
'C'est ici que je veux suspendre la procédure si c'est possible
Et finalement, le retour de la colonne 6 et des lignes cachées.
For n = 3 To var
Worksheets("Finances" & cbo_annees.Value).Cells(n, 6).Value = ""
Worksheets("Finances" & cbo_annees.Value).Rows(n).Hidden = False
Next n
Merci pour votre aide ou vos suggestions.
Bonjour à tous,
peut être faire une pause dans le programme, ici une pause de 5 secondes....
Option Explicit
Sub test()
Dim s As Single
'ton code d'impression
s = Timer
Do While Timer < s + 5
DoEvents
Loop
'le reste de ton code
End Sub
bonne fin d'après midi
@+