Sauvegarde Automatique mensuelle Excel 2007 [Résolu/Fermé]

Signaler
Messages postés
49
Date d'inscription
samedi 1 décembre 2007
Statut
Membre
Dernière intervention
26 octobre 2009
-
Messages postés
12186
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
15 octobre 2020
-
Bonjour,

J'ai besoin de faire une copie mensuelle d'un fichier (Stock) sur Excel 2007.
N'ayant rien trouvé de très probant ailleur, je me tourne vers vos compétence qui sont, j'en suis sûr, meilleur que les miennes ... cela dit, il n'y a pas de mal car les miennes sont inexistantes !!

Je voudrais donc savoir si il est possible, et si oui comment, de faire une copie (sauvegarde) automatique à chaque fin de mois et tout cela dans un dossier donné ??

Merci à l'avance.

11 réponses

Messages postés
12186
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
15 octobre 2020
2 497
Salut,
Ton fichier excel est il utilisé régulièrement? Tous les jours?
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 60511 internautes nous ont dit merci ce mois-ci

Messages postés
49
Date d'inscription
samedi 1 décembre 2007
Statut
Membre
Dernière intervention
26 octobre 2009
9
Bonjour Pijaku

Oui il l'est !! Le truc est que je ne pense pas a faire de sauvegarde en fin de mois ... ce qui m'oblige a revenir dessus .. galere !!
Messages postés
52483
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
23 octobre 2020
14 355
Dans Outlook ou n'importe quel calendrier présent sur ta machine, mets une alarme qui se déclenche à chaque début de mois pour te rappeler de faire ta sauvegarde ...
Messages postés
12186
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
15 octobre 2020
2 497
Est-ce que par hasard, dans une des cellules de ton classeur excel la date du jour serait indiquée?
Messages postés
49
Date d'inscription
samedi 1 décembre 2007
Statut
Membre
Dernière intervention
26 octobre 2009
9
oui mais c'est moi qui la saisie !!
Messages postés
12186
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
15 octobre 2020
2 497
Quelle est cette cellule (nom de la feuille et colonne ligne [exemple : Feuil1!A1]) ton classeur comporte combien de feuille en tout?
Messages postés
49
Date d'inscription
samedi 1 décembre 2007
Statut
Membre
Dernière intervention
26 octobre 2009
9
Ouch !!!

Le nom de la feuille comprenant cette cellule est "Rapport de stock", et la cellule en elle même est située en D6.
Pour le nombre de feuille .... beaucoup ... environ entre 300 et 350 a vue de nez.
Messages postés
12186
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
15 octobre 2020
2 497
Ne me manque plus que le chemin d'accès à ton fichier et celui de l'endroit ou doivent être placées les sauvegardes exemple:
fichier : C:/Stock/stock.xls
sauvegardes : C:/Stock/2009/
Messages postés
49
Date d'inscription
samedi 1 décembre 2007
Statut
Membre
Dernière intervention
26 octobre 2009
9
Fichier est sur un réseau : "\\Rez\Gestion_Stock\rapport et fiches de stock.xlsx"
Sauvegarde est sur un autre réseau : "\\Entrepot\partage\Gestion de Stock\Historique\2009\*.xlsx"

Sinon pour la sauvegarde, je peux la faire en locale et la déplacer apres.
Ca donnerait : C:/Fab/*.xlsx
Messages postés
12186
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
15 octobre 2020
2 497
Salut,
Je ne t'avais pas oublié mais j'ai pas mal galèré... Je ne suis d'ailleurs pas parvenu à 1 résultat convainquant... essaye néanmoins ce code... à modifier.
Private Sub Workbook_Open()
Dim val As String
Dim dat As String
Dim fso As Object, x As Boolean
Sheets("Rapport de stock").Select
val = Month(ActiveSheet.Range("D6"))
dat = Format(Date, "ddmmyyyy")
If val <> Month(Date) Then
ChDir "\\Entrepot\partage\Gestion de Stock\Historique\2009"
Set fso = CreateObject("Scripting.FileSystemObject")
x = fso.FileExists("\\Entrepot\partage\Gestion de Stock\Historique\2009\rapport et fiches de stock" & " " & dat & ".xlsx")
If x = False Then
ChDir "\\Entrepot\partage\Gestion de Stock\Historique\2009"
ActiveWorkbook.SaveAs ("\\Entrepot\partage\Gestion de Stock\Historique\2009\rapport et fiches de stock" & " " & dat & ".xlsx")
End If
ChDir "\\Rez\Gestion_Stock"
ActiveWorkbook.SaveAs ("\\Rez\Gestion_Stock\rapport et fiches de stock.xlsx")
End If
End Sub

Je sens bien qu'il y a quelque chose et que je ne suis pas loin mais....
Bon courage en tout cas.
Messages postés
49
Date d'inscription
samedi 1 décembre 2007
Statut
Membre
Dernière intervention
26 octobre 2009
9
Bonjour

Je me doute bien que tu as d'autre chose a faire, mais merci d'avoir pris un peu de temps.

Une petite question quand tu dis modifier, tu parle de quelle genre de modification ???

De plus, comment dois je faire pour intégrer ce code ?? .... Désolé
Messages postés
12186
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
15 octobre 2020
2 497
Salut,
Ce n'est pas uniquement parce que j'ai d'autres choses à faire c'est que là j'ai atteints mon niveau maximum de programmation en VBA...
Pour "intégrer" ce code, tout simplement :
1- tu ouvres ton fichier et seulement ton fichier. Il ne faut pas qu'il y ai un 2ème classeur Excel ouvert en même temps.
2- tu tapes : ALT + F11
3- Sur la partie gauche de l'éditeur VBA qui vient de s'ouvrir tu vois :
- SOLVER.xls
- VBA Project
- Microsoft Excel Objets
Feuil1(.....)
Feuil2(........)
Etc....
This Workbook
4- double clic sur This Workbook
5- copier / coller le code
6- fermer l'éditeur VBA (fichier/fermer et retourner sous excel)
7- enregistrer
8- Essayer (en "Rapport de Stock!D6" tu inscris une date de février, tu enregistres, fermes et ouvres le classeur... normalement si ça fonctionne il doit enregistrer. En fait mon code fait un test sur ta cellule D6 de la feuille Rapport de stock à l'ouverture du classeur et si le mois inscrit dedans est différent du mois en cours, il enregistre ton classeur sous...)
9- Me maudire car ça ne fonctionne pas super bien
10- revenir ici demander un coup de main à quelqu'un de meilleur que moi........