Gestion de la date

Tungstene

XLDnaute Occasionnel
Bonjour,

Mon code suivant s'execute à l'ouverture du fichier et se trouve dans ThisWorkbook.
Si on se trouve à la date indiquée (ici le 10 du mois) cela me crée une sauvegarde du mois précédents du fichier en cours d'ouverture à l'emplacement désiré.

Dim d As Date

d = CDate('10/' & Month(Date))

If Date = d Then

ActiveWorkbook.SaveCopyAs Filename:='H:\\ Projets\\Sauvegardes mensuelles\\J84 IP\\J84 IP ' & MonthName(Month(Date) - 1, False) & '.xls'

MsgBox ('Une sauvegarde du mois précédent vient d'être réalisée')

End If


Mon problème est que cela ne s'éxecutera que si l'utilisateur ouvre le fichier au 10 du mois. S'il l'ouvre au 9, au 11 ou autres suivant ces besoins et non le 10, la sauvegarde ne se créera pas. En fait, il y aura une sauvegarde que lorsque que l'on passera au mois suivant.

Donc ce que je voudrais savoir c'est est ce qu'il y'a un moyen pour que ce code fonctionne tant que le fichier n'a pas été ouvert pour la première fois sur le mois en cours.

Ainsi, au lieu que ça marche que pour le 10 du mois, cela marchera le 1, 3, 15 et même le 31 du mois.

Merci.
 

Tungstene

XLDnaute Occasionnel
Je viens de penser qu'une des solutions serait peut être de créer un compteur qui s'incrémente à chaque fois que l'on ouvre le fichier sur le mois en cours.
Ainsi à chaque nouveau mois il se remet à zéro.
Donc dès que l'on ouvre le fichier pour la première fois, le compteur prend 1.

Si on donne comme condition que le code s'exécute uniquement lorsque le compteur est à 1, alors là ça devrait marcher.

Mon problème c'est que je ne suis que débutant en vba et que je ne sais pas du tout comment faire!
 

anuky

XLDnaute Occasionnel
Bonjour à tous,

Une autre solution serai de déclancher la sauvegarde entre 2 dates par exmeple le 1er et le 31 du mois et de vérifier si le fichier n'existe pas déjà afin d'éviter des enregistrements multiples sous le même nom ou des méssages d'erreur.


If Date > d and < d2 Then
si fichier existe déjà -> Rien
Si Fichier n'existe pas Effectuer la copie.


C'est juste une proposition à approfondir.


Bon week end à tous qui le sont ce soir
 

Tungstene

XLDnaute Occasionnel
Re,

En fait c'est bon je viens de réussir le code, ça fonctionne bien.
Je te remercie car en plus c'est finalement assez simple et court comme code, et au final on peut même supprimer la question de la date puisque le code s'effectue uniquement lorsque le fichier n'est pas déjà présent.
Bref c'est parfait.

Merci!
 

Discussions similaires

Réponses
0
Affichages
126

Membres actuellement en ligne

Statistiques des forums

Discussions
312 321
Messages
2 087 265
Membres
103 501
dernier inscrit
talebafia