sauvaegarde auto programmée (de Alain Vallon)

Le
Domi
Bonsoir,
J'ai récupéré dans les archive ce code proposé par AV
Bien placé dans le bon module de mon fichier test, ckangé le repertoire de
sauveagarde, mis 30 secondes pour tester rapidement l'efficacité mais il
ne se passe rien
J'ai pas bon où ? ! (Wk2/Excel 97)
Ca marche chez vous ?
Avant, j'utilisais sauvage.xla mais je ne l'ai plus quelqu'un sait-il ou
la trouver (ou mieux) ?

Private Sub Workbook_Open()
rebelote:
toutesLes = 30 'temps en secondes
départ = Timer
Do While Timer < départ + toutesLes
DoEvents
Loop
ActiveWorkbook.SaveCopyAs "C:Récupération" & Left(ActiveWorkbook.Name,
Len(ActiveWorkbook.Name) - 4) & "-" & Day(Date) & Format(Month(Date), "mmm")
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
GoTo rebelote
End Sub
Vos réponses
Trier par : date / pertinence
michdenis
Le #346122
Bonjour Domi,

Essaie ceci : (pas testé)

La sauvegarde s'effectuera au 30 minutes (à modifier au besoin)
Le répertoire "C:Récupération" doit déjà exister sur ta bécane sinon
donne à la procédure un chemin qui existe....

Dans le thisworkbook de ton classeur :
'------------------
Private Sub Workbook_Open()
Application.OnTime Now + TimeValue("00:30:00"), "Sauvegarde"
End Sub
'------------------

Dans un module Standard
'------------------
Sub Sauvegarde()
ActiveWorkbook.SaveCopyAs "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
End Sub
'------------------


Salutations!




"Domi" Bonsoir,
J'ai récupéré dans les archive ce code proposé par AV
Bien placé dans le bon module de mon fichier test, ckangé le repertoire de
sauveagarde, mis 30 secondes pour tester rapidement l'efficacité... mais il
ne se passe rien...
J'ai pas bon où ? ! (Wk2/Excel 97)
Ca marche chez vous ?
Avant, j'utilisais sauvage.xla mais je ne l'ai plus... quelqu'un sait-il ou
la trouver (ou mieux...) ?

Private Sub Workbook_Open()
rebelote:
toutesLes = 30 'temps en secondes
départ = Timer
Do While Timer < départ + toutesLes
DoEvents
Loop
ActiveWorkbook.SaveCopyAs "C:Récupération" & Left(ActiveWorkbook.Name,
Len(ActiveWorkbook.Name) - 4) & "-" & Day(Date) & Format(Month(Date), "mmm")
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
GoTo rebelote
End Sub
michdenis
Le #346109
Bonjour Domi,

Dans le module standard, tu peux remplacer ma première suggestion par ceci :
Cette procédure sauvegardera au 30 minutes le fichier... mais détruira la dernière sauvegarde afin d'éviter que s'accumule
dans le répertoire un nombre important de sauvegardes du fichier. (Si tel est ton besoin)

Dans le haut du module: Déclaration de la variable :

Dim VieuxFichiers As String
'---------------------
Sub Sauvegarde()
Dim SonNom As String

SonNom "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"

ActiveWorkbook.SaveCopyAs SonNom

If VieuxFichiers <> "" Then
Kill VieuxFichiers
End If
VieuxFichiers = SonNom

End Sub
'---------------------


Salutations!




"michdenis" Bonjour Domi,

Essaie ceci : (pas testé)

La sauvegarde s'effectuera au 30 minutes (à modifier au besoin)
Le répertoire "C:Récupération" doit déjà exister sur ta bécane sinon
donne à la procédure un chemin qui existe....

Dans le thisworkbook de ton classeur :
'------------------
Private Sub Workbook_Open()
Application.OnTime Now + TimeValue("00:30:00"), "Sauvegarde"
End Sub
'------------------

Dans un module Standard
'------------------
Sub Sauvegarde()
ActiveWorkbook.SaveCopyAs "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
End Sub
'------------------


Salutations!




"Domi" Bonsoir,
J'ai récupéré dans les archive ce code proposé par AV
Bien placé dans le bon module de mon fichier test, ckangé le repertoire de
sauveagarde, mis 30 secondes pour tester rapidement l'efficacité... mais il
ne se passe rien...
J'ai pas bon où ? ! (Wk2/Excel 97)
Ca marche chez vous ?
Avant, j'utilisais sauvage.xla mais je ne l'ai plus... quelqu'un sait-il ou
la trouver (ou mieux...) ?

Private Sub Workbook_Open()
rebelote:
toutesLes = 30 'temps en secondes
départ = Timer
Do While Timer < départ + toutesLes
DoEvents
Loop
ActiveWorkbook.SaveCopyAs "C:Récupération" & Left(ActiveWorkbook.Name,
Len(ActiveWorkbook.Name) - 4) & "-" & Day(Date) & Format(Month(Date), "mmm")
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
GoTo rebelote
End Sub
Domi
Le #346106
Les deux marchent, j'ai entre temps trouvé mon erreur pour la soluce
d'Alain Vallon (pb syntaxe...).
Ta soluce ne permet pas (sauf nouvelle erreur de ma part) une sauvegarde
toutes les n minutes...
Pour cela la macro sauvage xla est bien, réglage de l'intervalle, de la
destination, du nombre de copie à conserver...etc.
Merci
Domi

"michdenis"
Bonjour Domi,

Dans le module standard, tu peux remplacer ma première suggestion par ceci
:

Cette procédure sauvegardera au 30 minutes le fichier... mais détruira la
dernière sauvegarde afin d'éviter que s'accumule

dans le répertoire un nombre important de sauvegardes du fichier. (Si tel
est ton besoin)


Dans le haut du module: Déclaration de la variable :

Dim VieuxFichiers As String
'---------------------
Sub Sauvegarde()
Dim SonNom As String

SonNom "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"

ActiveWorkbook.SaveCopyAs SonNom

If VieuxFichiers <> "" Then
Kill VieuxFichiers
End If
VieuxFichiers = SonNom

End Sub
'---------------------


Salutations!




"michdenis" news:

Bonjour Domi,

Essaie ceci : (pas testé)

La sauvegarde s'effectuera au 30 minutes (à modifier au besoin)
Le répertoire "C:Récupération" doit déjà exister sur ta bécane sinon
donne à la procédure un chemin qui existe....

Dans le thisworkbook de ton classeur :
'------------------
Private Sub Workbook_Open()
Application.OnTime Now + TimeValue("00:30:00"), "Sauvegarde"
End Sub
'------------------

Dans un module Standard
'------------------
Sub Sauvegarde()
ActiveWorkbook.SaveCopyAs "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
End Sub
'------------------


Salutations!




"Domi" news:

Bonsoir,
J'ai récupéré dans les archive ce code proposé par AV
Bien placé dans le bon module de mon fichier test, ckangé le repertoire de
sauveagarde, mis 30 secondes pour tester rapidement l'efficacité... mais
il

ne se passe rien...
J'ai pas bon où ? ! (Wk2/Excel 97)
Ca marche chez vous ?
Avant, j'utilisais sauvage.xla mais je ne l'ai plus... quelqu'un sait-il
ou

la trouver (ou mieux...) ?

Private Sub Workbook_Open()
rebelote:
toutesLes = 30 'temps en secondes
départ = Timer
Do While Timer < départ + toutesLes
DoEvents
Loop
ActiveWorkbook.SaveCopyAs "C:Récupération" & Left(ActiveWorkbook.Name,
Len(ActiveWorkbook.Name) - 4) & "-" & Day(Date) & Format(Month(Date),
"mmm")

& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
GoTo rebelote
End Sub






Denis Michon
Le #346103
Bonjour Domi,

tu as raison, j'ai oublié un détail ...;-))

Essaie ceci :

Dans le Thisworkbook :
'----------------
Private Sub Workbook_Open()
DépartSauvegarde
End Sub
'----------------


Dans un module standard :

Dim VieuxFichiers As String
'-------------------
Sub DépartSauvegarde()
Application.OnTime Now + TimeValue("00:30:00"), "Sauvegarde"
End Sub
'-------------------
Sub Sauvegarde()
Dim SonNom As String

SonNom = "C:test" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"

ActiveWorkbook.SaveCopyAs SonNom
If VieuxFichiers <> "" Then
Kill VieuxFichiers
End If
VieuxFichiers = SonNom
DépartSauvegarde
End Sub
'-------------------


Salutations!




"Domi" Les deux marchent, j'ai entre temps trouvé mon erreur pour la soluce
d'Alain Vallon (pb syntaxe...).
Ta soluce ne permet pas (sauf nouvelle erreur de ma part) une sauvegarde
toutes les n minutes...
Pour cela la macro sauvage xla est bien, réglage de l'intervalle, de la
destination, du nombre de copie à conserver...etc.
Merci
Domi

"michdenis"
Bonjour Domi,

Dans le module standard, tu peux remplacer ma première suggestion par ceci
:

Cette procédure sauvegardera au 30 minutes le fichier... mais détruira la
dernière sauvegarde afin d'éviter que s'accumule

dans le répertoire un nombre important de sauvegardes du fichier. (Si tel
est ton besoin)


Dans le haut du module: Déclaration de la variable :

Dim VieuxFichiers As String
'---------------------
Sub Sauvegarde()
Dim SonNom As String

SonNom "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"

ActiveWorkbook.SaveCopyAs SonNom

If VieuxFichiers <> "" Then
Kill VieuxFichiers
End If
VieuxFichiers = SonNom

End Sub
'---------------------


Salutations!




"michdenis" news:

Bonjour Domi,

Essaie ceci : (pas testé)

La sauvegarde s'effectuera au 30 minutes (à modifier au besoin)
Le répertoire "C:Récupération" doit déjà exister sur ta bécane sinon
donne à la procédure un chemin qui existe....

Dans le thisworkbook de ton classeur :
'------------------
Private Sub Workbook_Open()
Application.OnTime Now + TimeValue("00:30:00"), "Sauvegarde"
End Sub
'------------------

Dans un module Standard
'------------------
Sub Sauvegarde()
ActiveWorkbook.SaveCopyAs "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
End Sub
'------------------


Salutations!




"Domi" news:

Bonsoir,
J'ai récupéré dans les archive ce code proposé par AV
Bien placé dans le bon module de mon fichier test, ckangé le repertoire de
sauveagarde, mis 30 secondes pour tester rapidement l'efficacité... mais
il

ne se passe rien...
J'ai pas bon où ? ! (Wk2/Excel 97)
Ca marche chez vous ?
Avant, j'utilisais sauvage.xla mais je ne l'ai plus... quelqu'un sait-il
ou

la trouver (ou mieux...) ?

Private Sub Workbook_Open()
rebelote:
toutesLes = 30 'temps en secondes
départ = Timer
Do While Timer < départ + toutesLes
DoEvents
Loop
ActiveWorkbook.SaveCopyAs "C:Récupération" & Left(ActiveWorkbook.Name,
Len(ActiveWorkbook.Name) - 4) & "-" & Day(Date) & Format(Month(Date),
"mmm")

& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
GoTo rebelote
End Sub






sabatier
Le #346091
peut-être est-ce à cause de la fièvre qui s'est emparée de ma pauvre
carcasse mais je me trouve hyper-réceptif à la moindre erreur,
provînt-elle de l'illustre michel!!!
ne manquerait pas un chtiot = entre SonNom et la suite?
SonNom "C:Récupération" & _
enfin je dis cela plus pour les spectateurs que pour domi qui dit que
tout cela fonctionne...
jps

michdenis a écrit:
Bonjour Domi,

Dans le module standard, tu peux remplacer ma première suggestion par ceci :
Cette procédure sauvegardera au 30 minutes le fichier... mais détruira la dernière sauvegarde afin d'éviter que s'accumule
dans le répertoire un nombre important de sauvegardes du fichier. (Si tel est ton besoin)

Dans le haut du module: Déclaration de la variable :

Dim VieuxFichiers As String
'---------------------
Sub Sauvegarde()
Dim SonNom As String

SonNom "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"

ActiveWorkbook.SaveCopyAs SonNom

If VieuxFichiers <> "" Then
Kill VieuxFichiers
End If
VieuxFichiers = SonNom

End Sub
'---------------------


Salutations!




"michdenis" Bonjour Domi,

Essaie ceci : (pas testé)

La sauvegarde s'effectuera au 30 minutes (à modifier au besoin)
Le répertoire "C:Récupération" doit déjà exister sur ta bécane sinon
donne à la procédure un chemin qui existe....

Dans le thisworkbook de ton classeur :
'------------------
Private Sub Workbook_Open()
Application.OnTime Now + TimeValue("00:30:00"), "Sauvegarde"
End Sub
'------------------

Dans un module Standard
'------------------
Sub Sauvegarde()
ActiveWorkbook.SaveCopyAs "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
End Sub
'------------------


Salutations!




"Domi" Bonsoir,
J'ai récupéré dans les archive ce code proposé par AV
Bien placé dans le bon module de mon fichier test, ckangé le repertoire de
sauveagarde, mis 30 secondes pour tester rapidement l'efficacité... mais il
ne se passe rien...
J'ai pas bon où ? ! (Wk2/Excel 97)
Ca marche chez vous ?
Avant, j'utilisais sauvage.xla mais je ne l'ai plus... quelqu'un sait-il ou
la trouver (ou mieux...) ?

Private Sub Workbook_Open()
rebelote:
toutesLes = 30 'temps en secondes
départ = Timer
Do While Timer < départ + toutesLes
DoEvents
Loop
ActiveWorkbook.SaveCopyAs "C:Récupération" & Left(ActiveWorkbook.Name,
Len(ActiveWorkbook.Name) - 4) & "-" & Day(Date) & Format(Month(Date), "mmm")
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
GoTo rebelote
End Sub






michdenis
Le #346088
Bonjour JPS,

Il ne faut pas en rester là , teste la dernière version. Ça devrait rouler !

;-)

Salutations!

P.S. Tu avais bien vu pour le = ... mais la faute majeur est que j'avais oublié de boucler la boucle ! en omettant la
dernière ligne de code "DépartSauvegarde" de la procédure "Sauvegarde"



"sabatier" peut-être est-ce à cause de la fièvre qui s'est emparée de ma pauvre
carcasse mais je me trouve hyper-réceptif à la moindre erreur,
provînt-elle de l'illustre michel!!!
ne manquerait pas un chtiot = entre SonNom et la suite?
SonNom "C:Récupération" & _
enfin je dis cela plus pour les spectateurs que pour domi qui dit que
tout cela fonctionne...
jps

michdenis a écrit:
Bonjour Domi,

Dans le module standard, tu peux remplacer ma première suggestion par ceci :
Cette procédure sauvegardera au 30 minutes le fichier... mais détruira la dernière sauvegarde afin d'éviter que s'accumule
dans le répertoire un nombre important de sauvegardes du fichier. (Si tel est ton besoin)

Dans le haut du module: Déclaration de la variable :

Dim VieuxFichiers As String
'---------------------
Sub Sauvegarde()
Dim SonNom As String

SonNom "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"

ActiveWorkbook.SaveCopyAs SonNom

If VieuxFichiers <> "" Then
Kill VieuxFichiers
End If
VieuxFichiers = SonNom

End Sub
'---------------------


Salutations!




"michdenis" Bonjour Domi,

Essaie ceci : (pas testé)

La sauvegarde s'effectuera au 30 minutes (à modifier au besoin)
Le répertoire "C:Récupération" doit déjà exister sur ta bécane sinon
donne à la procédure un chemin qui existe....

Dans le thisworkbook de ton classeur :
'------------------
Private Sub Workbook_Open()
Application.OnTime Now + TimeValue("00:30:00"), "Sauvegarde"
End Sub
'------------------

Dans un module Standard
'------------------
Sub Sauvegarde()
ActiveWorkbook.SaveCopyAs "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
End Sub
'------------------


Salutations!




"Domi" Bonsoir,
J'ai récupéré dans les archive ce code proposé par AV
Bien placé dans le bon module de mon fichier test, ckangé le repertoire de
sauveagarde, mis 30 secondes pour tester rapidement l'efficacité... mais il
ne se passe rien...
J'ai pas bon où ? ! (Wk2/Excel 97)
Ca marche chez vous ?
Avant, j'utilisais sauvage.xla mais je ne l'ai plus... quelqu'un sait-il ou
la trouver (ou mieux...) ?

Private Sub Workbook_Open()
rebelote:
toutesLes = 30 'temps en secondes
départ = Timer
Do While Timer < départ + toutesLes
DoEvents
Loop
ActiveWorkbook.SaveCopyAs "C:Récupération" & Left(ActiveWorkbook.Name,
Len(ActiveWorkbook.Name) - 4) & "-" & Day(Date) & Format(Month(Date), "mmm")
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
GoTo rebelote
End Sub






sabatier
Le #346087
c'est mieux, denis, c'est mieux...
jps

Denis Michon a écrit:
Bonjour Domi,

tu as raison, j'ai oublié un détail ...;-))

Essaie ceci :

Dans le Thisworkbook :
'----------------
Private Sub Workbook_Open()
DépartSauvegarde
End Sub
'----------------


Dans un module standard :

Dim VieuxFichiers As String
'-------------------
Sub DépartSauvegarde()
Application.OnTime Now + TimeValue("00:30:00"), "Sauvegarde"
End Sub
'-------------------
Sub Sauvegarde()
Dim SonNom As String

SonNom = "C:test" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"

ActiveWorkbook.SaveCopyAs SonNom
If VieuxFichiers <> "" Then
Kill VieuxFichiers
End If
VieuxFichiers = SonNom
DépartSauvegarde
End Sub
'-------------------


Salutations!




"Domi" Les deux marchent, j'ai entre temps trouvé mon erreur pour la soluce
d'Alain Vallon (pb syntaxe...).
Ta soluce ne permet pas (sauf nouvelle erreur de ma part) une sauvegarde
toutes les n minutes...
Pour cela la macro sauvage xla est bien, réglage de l'intervalle, de la
destination, du nombre de copie à conserver...etc.
Merci
Domi

"michdenis"

Bonjour Domi,

Dans le module standard, tu peux remplacer ma première suggestion par ceci


:

Cette procédure sauvegardera au 30 minutes le fichier... mais détruira la


dernière sauvegarde afin d'éviter que s'accumule

dans le répertoire un nombre important de sauvegardes du fichier. (Si tel


est ton besoin)

Dans le haut du module: Déclaration de la variable :

Dim VieuxFichiers As String
'---------------------
Sub Sauvegarde()
Dim SonNom As String

SonNom "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"

ActiveWorkbook.SaveCopyAs SonNom

If VieuxFichiers <> "" Then
Kill VieuxFichiers
End If
VieuxFichiers = SonNom

End Sub
'---------------------


Salutations!




"michdenis"

news:

Bonjour Domi,

Essaie ceci : (pas testé)

La sauvegarde s'effectuera au 30 minutes (à modifier au besoin)
Le répertoire "C:Récupération" doit déjà exister sur ta bécane sinon
donne à la procédure un chemin qui existe....

Dans le thisworkbook de ton classeur :
'------------------
Private Sub Workbook_Open()
Application.OnTime Now + TimeValue("00:30:00"), "Sauvegarde"
End Sub
'------------------

Dans un module Standard
'------------------
Sub Sauvegarde()
ActiveWorkbook.SaveCopyAs "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
End Sub
'------------------


Salutations!




"Domi"

news:

Bonsoir,
J'ai récupéré dans les archive ce code proposé par AV
Bien placé dans le bon module de mon fichier test, ckangé le repertoire de
sauveagarde, mis 30 secondes pour tester rapidement l'efficacité... mais


il

ne se passe rien...
J'ai pas bon où ? ! (Wk2/Excel 97)
Ca marche chez vous ?
Avant, j'utilisais sauvage.xla mais je ne l'ai plus... quelqu'un sait-il


ou

la trouver (ou mieux...) ?

Private Sub Workbook_Open()
rebelote:
toutesLes = 30 'temps en secondes
départ = Timer
Do While Timer < départ + toutesLes
DoEvents
Loop
ActiveWorkbook.SaveCopyAs "C:Récupération" & Left(ActiveWorkbook.Name,
Len(ActiveWorkbook.Name) - 4) & "-" & Day(Date) & Format(Month(Date),


"mmm")

& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
GoTo rebelote
End Sub












Domi
Le #346069
Je n'avais éssayé que la première mouture sans l'effacement des vieux
fichiers, donc pas vu l'erreur... ;o)
Domi

"sabatier"
peut-être est-ce à cause de la fièvre qui s'est emparée de ma pauvre
carcasse mais je me trouve hyper-réceptif à la moindre erreur,
provînt-elle de l'illustre michel!!!
ne manquerait pas un chtiot = entre SonNom et la suite?
SonNom "C:Récupération" & _
enfin je dis cela plus pour les spectateurs que pour domi qui dit que
tout cela fonctionne...
jps

michdenis a écrit:
Bonjour Domi,

Dans le module standard, tu peux remplacer ma première suggestion par
ceci :


Cette procédure sauvegardera au 30 minutes le fichier... mais détruira
la dernière sauvegarde afin d'éviter que s'accumule


dans le répertoire un nombre important de sauvegardes du fichier. (Si
tel est ton besoin)



Dans le haut du module: Déclaration de la variable :

Dim VieuxFichiers As String
'---------------------
Sub Sauvegarde()
Dim SonNom As String

SonNom "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"

ActiveWorkbook.SaveCopyAs SonNom

If VieuxFichiers <> "" Then
Kill VieuxFichiers
End If
VieuxFichiers = SonNom

End Sub
'---------------------


Salutations!




"michdenis" news:


Bonjour Domi,

Essaie ceci : (pas testé)

La sauvegarde s'effectuera au 30 minutes (à modifier au besoin)
Le répertoire "C:Récupération" doit déjà exister sur ta bécane sinon
donne à la procédure un chemin qui existe....

Dans le thisworkbook de ton classeur :
'------------------
Private Sub Workbook_Open()
Application.OnTime Now + TimeValue("00:30:00"), "Sauvegarde"
End Sub
'------------------

Dans un module Standard
'------------------
Sub Sauvegarde()
ActiveWorkbook.SaveCopyAs "C:Récupération" & _
Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-" & Day(Date) & Format(Month(Date), "mmm") _
& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
End Sub
'------------------


Salutations!




"Domi" news:


Bonsoir,
J'ai récupéré dans les archive ce code proposé par AV
Bien placé dans le bon module de mon fichier test, ckangé le repertoire
de


sauveagarde, mis 30 secondes pour tester rapidement l'efficacité...
mais il


ne se passe rien...
J'ai pas bon où ? ! (Wk2/Excel 97)
Ca marche chez vous ?
Avant, j'utilisais sauvage.xla mais je ne l'ai plus... quelqu'un sait-il
ou


la trouver (ou mieux...) ?

Private Sub Workbook_Open()
rebelote:
toutesLes = 30 'temps en secondes
départ = Timer
Do While Timer < départ + toutesLes
DoEvents
Loop
ActiveWorkbook.SaveCopyAs "C:Récupération" & Left(ActiveWorkbook.Name,
Len(ActiveWorkbook.Name) - 4) & "-" & Day(Date) & Format(Month(Date),
"mmm")


& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
GoTo rebelote
End Sub









Domi
Le #346068
Pour ceux que cela pourrait intéresser, j'ai retrouvé un lien vers
sauvage.xla
En plus c'est une nouvelle version (j'en était encore à la 0.95)
http://dj.joss.free.fr/download/sauvage.zip

Salut
Domi


"Domi"
Bonsoir,
J'ai récupéré dans les archive ce code proposé par AV
Bien placé dans le bon module de mon fichier test, ckangé le repertoire de
sauveagarde, mis 30 secondes pour tester rapidement l'efficacité... mais
il

ne se passe rien...
J'ai pas bon où ? ! (Wk2/Excel 97)
Ca marche chez vous ?
Avant, j'utilisais sauvage.xla mais je ne l'ai plus... quelqu'un sait-il
ou

la trouver (ou mieux...) ?

Private Sub Workbook_Open()
rebelote:
toutesLes = 30 'temps en secondes
départ = Timer
Do While Timer < départ + toutesLes
DoEvents
Loop
ActiveWorkbook.SaveCopyAs "C:Récupération" & Left(ActiveWorkbook.Name,
Len(ActiveWorkbook.Name) - 4) & "-" & Day(Date) & Format(Month(Date),
"mmm")

& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
GoTo rebelote
End Sub




michdenis
Le #346051
Merci Domi, qui sait, ça peut toujours être utile !

Salutations!


"Domi" Pour ceux que cela pourrait intéresser, j'ai retrouvé un lien vers
sauvage.xla
En plus c'est une nouvelle version (j'en était encore à la 0.95)
http://dj.joss.free.fr/download/sauvage.zip

Salut
Domi


"Domi"
Bonsoir,
J'ai récupéré dans les archive ce code proposé par AV
Bien placé dans le bon module de mon fichier test, ckangé le repertoire de
sauveagarde, mis 30 secondes pour tester rapidement l'efficacité... mais
il

ne se passe rien...
J'ai pas bon où ? ! (Wk2/Excel 97)
Ca marche chez vous ?
Avant, j'utilisais sauvage.xla mais je ne l'ai plus... quelqu'un sait-il
ou

la trouver (ou mieux...) ?

Private Sub Workbook_Open()
rebelote:
toutesLes = 30 'temps en secondes
départ = Timer
Do While Timer < départ + toutesLes
DoEvents
Loop
ActiveWorkbook.SaveCopyAs "C:Récupération" & Left(ActiveWorkbook.Name,
Len(ActiveWorkbook.Name) - 4) & "-" & Day(Date) & Format(Month(Date),
"mmm")

& "-" & Hour(Time) & "h" & Minute(Time) & ".xls"
GoTo rebelote
End Sub




Publicité
Poster une réponse
Anonyme