Actualité informatique
Test comparatif matériel informatique
Jeux vidéo
Astuces informatique
Vidéo
Télécharger
Services en ligne
Forum informatique
01Business

|-  LOGICIELS


|||-  

Sauvegarder un Excel en deux fichiers automatiquement

 

PRODUITS : willyplaisir, 3 utilisateurs anonymes et 130 utilisateurs inconnus
Ajouter une réponse
 

 
Page photos
 
     
Vider la liste des messages à citer
 
 Page :
1
Auteur
 Sujet :

Sauvegarder un Excel en deux fichiers automatiquement

Prévenir les modérateurs en cas d'abus 
User Name
RIP Micro Hebdo.
  1. homepage
user-name
Débutant confirmé (de 1 000 à 4 999 messages postés)
  1. Posté le 31/08/2010 à 21:04:09  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
Bonjour à tous,

 J'édite le tableur Excel de mes comptes bancaires avec Excel 2010 au format XLSX, mais je souhaite conserver une copie conforme de mon fichier au format XLS, au cas où j'aurais besoin de le modifier avec une machine n'étant pas équipée de Office 2007 ou 2010. Je suis donc obligé, depuis mon XLSX, de sauvegarder une copie du fichier manuellement en XLS après toutes mes modifications, en écrasant l'ancien XLS. N'y a-t'il pas un moyen d'automatiser la sauvegarde en deux fichiers dans un même dossier à chaque fois j'édite l'un des deux?

 Merci d'avance


---------------
Ma configuration. Mon bleug.
willyplaisir
Expert Excel Habitué (de 5 000 à 9 999 messages postés)
  1. Posté le 01/09/2010 à 08:09:21  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
bonjour,

tu peux créer ta macro en sauvegardant ton fichier avec l'option copie


voici pour exemple:
qui se lance au moment de la fermeture du fichier.
tu mettras le chemin du fichier

Code :(Double-cliquez pour supprimer les numéros de ligne)
  1. Private Sub Workbook_BeforeClose
  2.  ActiveWorkbook.SaveAs Filename:= _
  3.    "D:\Documents and Settings\willy\Mes documents\essai.xls", FileFormat:= _
  4.    xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
  5.    , CreateBackup:=True
  6. End Sub


ainsi tu auras une copie automatique de ton fichier
 :salut:

Edit par Tintin10 : rajout des balises de code
Message édité par Tintin10 le 09/12/2014 à 20:16:09

---------------
[:ahlefoufou] Merci de sauver les chats abandonnés en aidant cette association : [:tazounet:5]
- Pension MillePattes
(Publicité)
RIP Micro Hebdo.
  1. homepage
user-name
Débutant confirmé (de 1 000 à 4 999 messages postés)
  1. Posté le 03/09/2010 à 22:46:56  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
Bonjour,

 Peux-tu m'expliquer davantage comment créer une macro?


---------------
Ma configuration. Mon bleug.
willyplaisir
Expert Excel Habitué (de 5 000 à 9 999 messages postés)
  1. Posté le 04/09/2010 à 09:34:37  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
bonjour,

voir ces liens pour comprendre:
http://www.info-3000.com/vbvba​/premieremacro.php
http://www.conseil-creation.co/macro.php
http://www.vulgarisation-infor [...] -excel.php

plus rapidos:
Alt+F11 pour entrer dans l'éditeur
insère un module
tu y copies ma macro

Code :(Double-cliquez pour supprimer les numéros de ligne)
  1. Private Sub Workbook_BeforeClose
  2.  ActiveWorkbook.SaveAs Filename:= _
  3.    "ton chemin\ton fichier.xls", FileFormat:= _
  4.    xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
  5.    , CreateBackup:=True
  6. End Sub



tu quittes l'éditeur et tu sauvegardes ton fichier. tu vas dans le dossier pour vérifier la présence des 2 fichiers (xls et bak)

essai donc de te créer ta 1ère macro de sauvegarde, et tout ce que tu cliqueras sera enregistré dans le module.ensuite compare ta macro avec la mienne.
 :salut:

Edit par Tintin10 : rajout des balises de code
Message édité par Tintin10 le 09/12/2014 à 20:18:00

---------------
[:ahlefoufou] Merci de sauver les chats abandonnés en aidant cette association : [:tazounet:5]
- Pension MillePattes
RIP Micro Hebdo.
  1. homepage
user-name
Débutant confirmé (de 1 000 à 4 999 messages postés)
  1. Posté le 05/09/2010 à 20:05:48  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
J'ai essayé ton astuce. Le fichier refusait de se sauvegarder parce qu'il me disait que le format XLSX n'est pas compatible avec les macros. J'ai alors enregistré mon fichier en XLSM et je l'ai sauvegardé. Mais ça ne marche pas: je n'ai pas le fichier XLS créé.

 PS: J'ai remplacé ton chemin\ton fichier.xls par comptes.xls pour qu'il soit dans le même répertoire.


---------------
Ma configuration. Mon bleug.
(Publicité)
willyplaisir
Expert Excel Habitué (de 5 000 à 9 999 messages postés)
  1. Posté le 06/09/2010 à 10:03:00  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
bonjour,

si tu as fait la macro qui sauvegarde ton fichier, je serais curieux de la voir sur le forum.

1) fichier ouvert, tu fais enregistrer SOUS puis tu choisis l'option créer une copie, et normalement Excel te crée un SauvegardeNomFichier.bak à retrouver dans le même dossier (même nom).

donc tu essaies de refaire la macro de sauvegardes, puis tu rentres dans l'éditeur (ALT+F11) et remplace l'entête
Code :(Double-cliquez pour supprimer les numéros de ligne)
  1. Sub Macro()

par
Code :(Double-cliquez pour supprimer les numéros de ligne)
  1. Private Sub Workbook_BeforeClose


tu quittes l'éditeur et fermes ton fichier.
regarde dans le dossier si tu vois les 2 fichiers.


par contre, si tu veux absolument conserver une copie identique,même nom et extension, il suffit de le copier dans un dossier BAK.


 :salut:

Edit par Tintin10 : rajout des balises de code
Message édité par Tintin10 le 09/12/2014 à 20:18:45

---------------
[:ahlefoufou] Merci de sauver les chats abandonnés en aidant cette association : [:tazounet:5]
- Pension MillePattes
RIP Micro Hebdo.
  1. homepage
user-name
Débutant confirmé (de 1 000 à 4 999 messages postés)
  1. Posté le 10/09/2010 à 16:43:49  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 

willyplaisir a écrit :

bonjour,

 si tu as fait la macro qui sauvegarde ton fichier, je serais curieux de la voir sur le forum.

 1) fichier ouvert, tu fais enregistrer SOUS puis tu choisis l'option créer une copie,



 Y a pas d'option Créer une copie. Y a juste le choix du type de fichier. Je choisis XLSM ou XLS? Y a pas BAK...

 



 et normalement Excel te crée un SauvegardeNomFichier.bak à retrouver dans le même dossier (même nom).



 Si tu le dis... moi je n'ai que des TMP.

 



donc tu essaies de refaire la macro de sauvegardes, puis tu rentres dans l'éditeur (ALT+F11) et remplace l'entête
 Sub Macro()  par Private Sub Workbook_BeforeClose

 tu quittes l'éditeur et fermes ton fichier.
 regarde dans le dossier si tu vois les 2 fichiers.



 C'est fait. Pas de résultat.


 



par contre, si tu veux absolument conserver une copie identique,même nom et extension, il suffit de le copier dans un dossier BAK.



 Donc j'appelle un dossier "BAK" et je mets mon Excel dedans? Beurk!


 :salut:


 [/citation]


---------------
Ma configuration. Mon bleug.
willyplaisir
Expert Excel Habitué (de 5 000 à 9 999 messages postés)
  1. Posté le 11/09/2010 à 17:45:42  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
:hello:

 sous office 2003, j'ai l'option cocher la case copie de sauvegarde:
 http://free0.hiboox.com/images​/3610/2c14340869026f24ffc92308​80542ddb.jpg

 avec Excel, tu peux sauvegarder ou copier les fichiers dans un nouveau dossier nommé Back en plus du dossier où se trouvent tous tes fichiers Excel crées.
 :salut:


---------------
[:ahlefoufou] Merci de sauver les chats abandonnés en aidant cette association : [:tazounet:5]
- Pension MillePattes
(Publicité)
RIP Micro Hebdo.
  1. homepage
user-name
Débutant confirmé (de 1 000 à 4 999 messages postés)
  1. Posté le 11/09/2010 à 17:56:36  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
Oui, mais ce n'est pas ce que je veux. Ce que je veux c'est avoir le fichier dans les deux formats dans le même dossier, de sorte que si je modifie l'un ou l'autre, l'autre sera automatiquement modifié. Pour le backup, ce n'est pas un souci, j'ai un logiciel qui gère ça en temps réel vers un autre disque dur.


---------------
Ma configuration. Mon bleug.
willyplaisir
Expert Excel Habitué (de 5 000 à 9 999 messages postés)
  1. Posté le 11/09/2010 à 18:29:29  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
re,

 alors as tu aussi cette option d'enregistrement?
 1) enregistrer sous
 2) Menu outils
 3) Options générale
 4) case "Créer une copie de sauvegarde"
 :chepa:


---------------
[:ahlefoufou] Merci de sauver les chats abandonnés en aidant cette association : [:tazounet:5]
- Pension MillePattes
RIP Micro Hebdo.
  1. homepage
user-name
Débutant confirmé (de 1 000 à 4 999 messages postés)
  1. Posté le 11/09/2010 à 22:52:41  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
Oui je l'ai. Mais est-ce qu'elle fait ce que j'ai écrit dans le post précédent?


---------------
Ma configuration. Mon bleug.
(Publicité)
willyplaisir
Expert Excel Habitué (de 5 000 à 9 999 messages postés)
  1. Posté le 12/09/2010 à 08:59:10  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 

 

user name a écrit :

oui je l'ai. mais est-ce qu'elle fait ce que j'ai écrit dans le post précédent?
 




 fais donc un essai de sauvegarde avec un fichier crée nommé ESSAI,puis regarde dans le dossier.

 :salut:


---------------
[:ahlefoufou] Merci de sauver les chats abandonnés en aidant cette association : [:tazounet:5]
- Pension MillePattes
pfg60
  1. Posté le 09/12/2014 à 15:13:55  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
Bonjour à tous,

J'ai réussi à prendre en compte les explications ci-dessus pour l'ajouter à ma macro.

Cependant, le fichier enregistré contient les macros du fichier de base.
Or je ne souhaite pas que les macros soient présentes dans le fichier final (TCM.xls).

Comment faire pour éviter cela ?

Voici le code que j'utilise :
Code :(Double-cliquez pour supprimer les numéros de ligne)
  1. 'Quitter & Enregistrer
  2. Application.DisplayAlerts = False
  3. Sheets("Fusion TCM").Shapes("CommandButton1").Delete
  4.  
  5.    UserForm1.Hide
  6.    rep = MsgBox(" " & " " & " " & " " & "Pour éviter toutes mauvaises manipulations, vous DEVEZ enregistrer" & Chr(10) & " " & " " & " " & " " & "le fichier." & Chr(10) & " " & " " & " " & " " & "Il FAUT choisir l'un des 2 formats suivant : *.xls ou *.xlsx" & Chr(10) & Chr(10) & " " & " " & " " & " " & "Excel va se fermer !" & Chr(10) & " " & " " & " " & " " & "Votre travail a été enregistré le " & Format(Now, "dd MMMM yyyy à hh:mm:ss") & ".", vbOKOnly + vbExclamation, "Site.Oise - Enregistrement")
  7.  
  8.  
  9.  
  10. ActiveWorkbook.SaveAs Filename:= _
  11. "TCM.xls", FileFormat:= _
  12. xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
  13. , CreateBackup:=False
  14.  
  15.  
  16.  
  17.    Application.DisplayAlerts = False
  18.    Application.Quit
  19.  
  20. Application.DisplayFullScreen = False
  21. Application.DisplayAlerts = True
  22.  
  23. Application.ScreenUpdating = True
  24.  
  25. End Sub




Vous remerciant d'avance.
Message édité par Tintin10 le 09/12/2014 à 20:19:04
pfg60
  1. Posté le 09/12/2014 à 16:28:12  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
Bon...

J'ai trouver un code qui fonctionne bien.
Code :(Double-cliquez pour supprimer les numéros de ligne)
  1. 'Quitter & Enregistrer
  2. Application.DisplayAlerts = False
  3.  
  4. UserForm1.Hide
  5.  
  6. Application.DisplayAlerts = False
  7. ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" _
  8.  & Format(Now, "yyyy-mm") & " - TCM" & ".xls"
  9.  
  10. With ActiveWorkbook.VBProject
  11.  For Each VBC In .VBComponents
  12.    If VBC.Type = 100 Then
  13.      With VBC.CodeModule
  14.        .DeleteLines 1, .CountOfLines
  15.        .CodePane.Window.Close
  16.      End With
  17.    Else: .VBComponents.Remove VBC
  18.    End If
  19.  Next VBC
  20. End With
  21.  
  22. CommandButton1.Visible = False
  23.  
  24. Application.DisplayFullScreen = False
  25. Application.DisplayAlerts = True
  26.  
  27. Application.ScreenUpdating = True
  28.  
  29. Application.Quit
  30.  
  31. End Sub

Or lorsque je souhaite ouvrir le fichier qui est enregistré, j'ai le message suivant :
"Le format ou l'extension du fichier "2014-12 - TCM.xls" ne correspondent pas. Le fichier peut présenter un risque ou avoir été endommagé. Ne l’ouvrez pas, à moins que la source soit fiable. Voulez-vous quand même l'ouvrir ?"
Message édité par Tintin10 le 09/12/2014 à 20:22:34
(Publicité)
willyplaisir
Expert Excel Habitué (de 5 000 à 9 999 messages postés)
  1. Posté le 09/12/2014 à 19:06:54  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
bsr

j'allais te proposer ce code qui fonction bien aussi en l'adaptant
Code :(Double-cliquez pour supprimer les numéros de ligne)
  1. Sub SupprimeToutVBA()
  2.  Dim VbComp As Object
  3.  Application.DisplayAlerts = False
  4. 'mettre ton chemin
  5.  ThisWorkbook.SaveAs "D:\Excel\macrovide.xls"
  6.  
  7.  For Each VbComp In ActiveWorkbook.VBProject.VBComponents ' 'suppression vba
  8.    Select Case VbComp.Type
  9.      Case 1 To 3
  10.        ActiveWorkbook.VBProject.VBComponents.Remove VbComp
  11.      Case Else
  12.        With VbComp.CodeModule
  13.          .DeleteLines 1, .CountOfLines
  14.        End With
  15.    End Select
  16.  Next VbComp
  17.  ActiveWorkbook.Save ' enregistre les suppressions
  18.  Application.DisplayAlerts = True
  19. End Sub

essaie de mettre un nom de fichier sans espace
et j'ignore cette commande=100?
If VBC.Type = 100

 :hello:
Message édité par Tintin10 le 09/12/2014 à 20:20:24

---------------
[:ahlefoufou] Merci de sauver les chats abandonnés en aidant cette association : [:tazounet:5]
- Pension MillePattes
pfg60
  1. Posté le 09/12/2014 à 21:22:11  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
Bonsoir willyplaisir,

Effectivement les deux méthodes fonctionnent.

Mais cela ne répond à pas la question : lorsque je souhaite ouvrir le fichier qui est enregistré, j'ai le message suivant :
"Le format ou l'extension du fichier "2014-12 - TCM.xls" ne correspondent pas. Le fichier peut présenter un risque ou avoir été endommagé. Ne l’ouvrez pas, à moins que la source soit fiable. Voulez-vous quand même l'ouvrir ?"
Est-ce du au code VBA ?

willyplaisir
Expert Excel Habitué (de 5 000 à 9 999 messages postés)
  1. Posté le 10/12/2014 à 09:25:51  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
bjr,

effectivement, il faut lui dire le type de format pour la sauvegarde en .xls

activeworkbook.saveas filename:" ton chemin+ fichier.xls, fileformat:=xlexcel8

à tester

exemple chez moi

Code :(Double-cliquez pour supprimer les numéros de ligne)
  1. ActiveWorkbook.SaveAs Filename:="D:\WILLY\EXCEL\Classeur1essai.xls", _
  2.  FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _
  3.  ReadOnlyRecommended:=False, CreateBackup:=False
Message édité par Tintin10 le 10/12/2014 à 20:11:16

---------------
[:ahlefoufou] Merci de sauver les chats abandonnés en aidant cette association : [:tazounet:5]
- Pension MillePattes
 Page :
1

Aller à :
 

Sujets relatifs
Comment sauvegarder sous windows 8 je ne peux pas déplacer des fichiers dans un même dossier
Ttransférer liste d'adresses saisies automatiquement Outlook comment sauvegarder un filigrane sous word 2007 ?
EXCEL - trier une liste avec des images insérées sauvegarder mes contacts de ma messagerie (MSN Hotmail)
sauvegarder sa base de données  
Plus de sujets relatifs à : Sauvegarder un Excel en deux fichiers automatiquement

Les 5 sujets de discussion précédents Nombre de réponses Dernier message
Impossible d'envoyer un fichier par mail depuis Word 2010 4
openoffice3.2.1 5
Publisher 2010 1
Access 2003 et Windows 7 64 bits 1
Masquer le contenu d'une cellule dans Excel 2007 5