VBA pour impression BeforeClose

Résolu
helma91 Messages postés 51 Statut Membre -  
helma91 Messages postés 51 Statut Membre -
Bonjour à tous,

Je vous explique le problème. Je débute en VBA et j'ai réussi à établir un code pour une MsgBox lorsque je ferme mon document pour me demander si je souhaite imprimer avant fermeture, ce qui fonctionne bien. Cependant j'aimerais que cette action ne s'effectue seulement le vendredi (Jour ou j'oublie souvent d'imprimer ma feuille) et non à chaque fois que je ferme mon fichier. J'ai vu que c'était possible avec Weekday(Now)=6 ?
Mais je ne sais pas comment faire...

Merci d'avance à ceux qui pourront me donner un petit coup de pouce!

Voici le bout de code qui fonctionne:

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Msg = "Voulez-vous imprimer avant de fermer?"
Réponse = MsgBox(Msg, vbYesNo + vbExclamation, "ATTENTION!")

If Réponse = vbYes Then Worksheets("relevé heure").PrintOut
Application.Quit

If Réponse = vbNo Then ThisWorkbook.Save
ThisWorkbook.Save
Application.Quit

End Sub

Salutations à tous!

1 réponse

  1. Utilisateur anonyme
     
    Bonjour helma91,

    Je te propose d'essayer ce code VBA :

    
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
      If Weekday(Now) = 6 Then
        Msg = "Voulez-vous imprimer avant de fermer ?"
        Réponse = MsgBox(Msg, 52, "ATTENTION !")
        If Réponse = vbYes Then Worksheets("relevé heure").PrintOut
      End If
      ThisWorkbook.Save: Application.Quit
    End Sub
    
    

    Comme on est Vendredi, ça imprimera aujourd'hui, mais pas
    Samedi et Dimanche, ni Lundi à Jeudi.  😉

    Si ton problème est réglé, merci d'aller en haut de page
    pour cliquer sur « Marquer comme résolu ».

    Cordialement.  😊
     
    0
    1. helma91 Messages postés 51 Statut Membre 3
       
      Bon bah merci beaucoup ça marche! :-)

      Très gentil de ta part albkan!

      A+
      0