Enregistrement automatique PB avec un module VBA

amauryde

XLDnaute Occasionnel
bonjour le forum,

j'ai un fichier xlsm avec un enregistrement automatique qui marche très bien. Voici ce que je n'arrive pas à faire:

ce fichier nommé X s'enregistre automatiquement... (sauvegarde en VBA)

j'ai également d'autres voies d'enregistrement par boutton: création de nouveau fichiers:A, B et C... comment faire pour éviter que la sauvegarde automatique en VBA de X soient présentes sur A, B et C... car sinon tout plante :(

voici my thisworkbook:

Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)
StopChrono
End Sub

Private Sub Workbook_Open()
Chrono
End Sub

et mon module:

Sub EnregistrerFichier()
Dim Nom As String

ActiveWorkbook.SaveCopyAs ActiveWorkbook.Path & "\Grabacion automatica\" & "grabacion automatico para recuperacion" & Split(ActiveWorkbook.Name, ".")(0) & ".xls"
End Sub

Sub Chrono()
'Programacion del evento todas las cinco minutos
Tps = Now + TimeValue("00:05:00")
Application.OnTime Tps, "Chrono"
EnregistrerFichier ' appelle la macro d'enregistrement
End Sub

Sub StopChrono()
On Error Resume Next
'Stopper la gestion de l'évènement OnTime en cours
Application.OnTime Tps, "Chrono", , False
End Sub

sans doute une ligne à rajouter en prenant en compte le nom du fichier X qui ne change pas...

Merci à vous
 

tototiti2008

XLDnaute Barbatruc
Re : Enregistrement automatique PB avec un module VBA

Bonjour Pierrot,

Malheureusement ça ne marche pas

ça devrait...
à moins que ce soit ton fichier X qui soit enregistré en fichier A, B et C ?
si c'est ça, les fichier récupèrent le code d'enregistrement automatique avec eux
peut-être les enregistrer en xslx à la place de xlsm, mais ça fera sauter toutes les macros
 
Dernière édition:

amauryde

XLDnaute Occasionnel
Re : Enregistrement automatique PB avec un module VBA

c'est exactement ça, pardon si je me suis mal exprimé en énonçant le problème.
J'ai énormément de macro donc ca risque de créér un pb.

N'est-il pas possible de créer une ligne disant: "la macro est valide seulement pour le fichier portant le nom X" avec un true et false sans doute..
 

tototiti2008

XLDnaute Barbatruc
Re : Enregistrement automatique PB avec un module VBA

Re,

Si, c'est possible

Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    if Thisworkbook.name = "X.xlsm" then
StopChrono
end if
End Sub

Private Sub Workbook_Open()
if Thisworkbook.name = "X.xlsm" then
    Chrono
end if
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
314 651
Messages
2 111 549
Membres
111 199
dernier inscrit
mavoungou regis