Message a une date precise VBA

Bonjour le forum

je cherche une macro pour affiché un message le (par exemple 28 de chaque mois) pour effectuer une sauvegarde du fichier.

le principe serais que le message s'affiche tout les mois avec deux bouton.

Un qui effectue la sauvegarde et l'autre pour effectuez la sauvegarde plus tard .

et que si l'on clic sur sauvegarde cela sauvegarde dans le dossier de notre choix et fin du message jusqu'au mois suivant .

mais si l'on clic sur plus tard le message ce remet a la prochaine ouverture jusqu'à ce que le fichier soit sauvegarder.

Voila je vous remercie de votre aide pour toutes les piste que vous pourrez m'apporter.

Merci et bonne journée.

Bonjour,

Dans quelle circonstance un fichier peut-il être sauvegarder qu'une fois par mois ? Aucune modification n'est faite hormis le jour de la sauvegarde ?

A plus

bonjour Braters

le fichier est sauvegarder tout les jours le but est de faire une sauvegarde mensuel de SECOUR.

au cas ou il y aurais un problème.

Merci de ton intérêt.

D'accord, je comprend mieux l’intérêt de pouvoir choisir l'emplacement de la sauvegarde. Voici une proposition à tester si elle te convient :

Private Sub Workbook_Open()

If Day(Date) & "/" & Month(Date) & "/" & Year(Date) = "28/" & Month(Date) & "/" & Year(Date) Then
    If Sheets("Feuil2").Range("A1").Value = "Non" Then

        If MsgBox("Voulez-vous sauvegarder le fichier tout de suite ?", vbYesNo, "Attention") = vbYes Then
            Sheets("Feuil2").Range("A1").Value = "Oui"
                Dim a As String
                a = Application.GetSaveAsFilename
                If Format(a) <> False Then
                    ThisWorkbook.SaveCopyAs a
                End If
                Else
                    MsgBox "Pensez à sauvegarder ultérieurement."
        End If
    End If
        Else
            Sheets("Feuil2").Range("A1").Value = "Non"
End If

End Sub

Tu as juste à changer le jour du mois où il faut demander de sauvegarder (ici le 28)

de plus toutes les lignes avec "Sheets("Feuil2").Range("A1").Value" peut être une autre case non utilisée sur une autre feuille par exemple.

Ce code est à copier dans "ThisWorkbook" dans VBA.

A plus

Re bonjour

déjà MERCI

je viens d'essayer et j'ai directement le "non" qui s'affiche en a1 sur la feuil2 mais je n'est pas le msgbox

MsgBox("Voulez-vous sauvegarder le fichier tout de suite ?", vbYesNo, "Attention") = vbYes Then

qui s'affiche et je ne vois pas ou est l'erreur

Avez-vous pensé à modifier la date de sauvegarde limite ?

If Day(Date) & "/" & Month(Date) & "/" & Year(Date) = "28/" & Month(Date) & "/" & Year(Date) Then

A vous de choisir en changeant le "28" ! Vous pouvez mettre "14" pour tester la macro !

oui j'ai modifier la date pour la date du jour

de plus même si il y as oui il me redemande de sauvegarder .

en tout cas merci de ton aide

C'est étrange car avec mon fichier, cela fonctionne parfaitement.

Je te le mets ci-joint pour que tu puisses tester de toi-même.

Voici le fichier

je n'y comprend rien j'ai bloquer le lancement de ma macro qui ouvre l'userform mais rien n'y fait

Ca fonctionne chez moi

essaye de mettre "Non" en P1 de base, enregistre puis rouvre le fichier.

Re

c'est bon cela fonctionne SUPER

dernière question comment je modifie pour enregistrer au format XLSM.

Merci Beaucoup de ton aide.

En rajoutant xlOpenXMLWorkbookMacroEnabled sur la ligne de sauvegarde comme ceci :

ThisWorkbook.SaveCopyAs a, xlOpenXMLWorkbookMacroEnabled

A plus

EDIT : Je ne sais pas trop quelle est la différence mais tu peux essayer avec SaveCopyAs ou SaveAs sur cette même ligne.

Rechercher des sujets similaires à "message date precise vba"