OVH Cloud OVH Cloud

Enregister a chaques fois mes données automatiquement

10 réponses
Avatar
aravis
bonjour, c'est encore encore moi.

Le code suivant sauvegarde le fichier à "chaque fois qu'il est fermé" sous
son nom avec la date du jour, mais en "nombre" par rapport à l'année 1900,
même si la personne le sauvegarde sous un autre nom. Le problème c'est qu'il
ne veut pas marché. Quelqu'un aurait une solution ?

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim monfichier As Single
monfichier = Date
ActiveWorkbook.SaveAs FileName:="C:\toto du " & monfichier & ".xls",
FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
End Sub

merci d'avance

10 réponses

Avatar
JLuc
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim monfichier As Single
monfichier = Date
Essaie en mettant :

monfichier = Format(Now(),"dd-mm-yyyy")

ActiveWorkbook.SaveAs FileName:="C:toto du " & monfichier & ".xls",
FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:úlse, _
CreateBackup:úlse
End Sub



--
JLuc

Avatar
aravis
non, celà ne change rien. Pourtant mes macros sont activé au démarrage de mon
fichier excel. C'est bizarre qauand meme
Avatar
JLuc
non, celà ne change rien. Pourtant mes macros sont activé au démarrage de mon
fichier excel. C'est bizarre qauand meme


C'est pas a l'ouverture, mais a la fermeture. Tu as mis ta macro dans
le beforeclose...

--
JLuc

Avatar
aravis
non, je ne pense pas. Comment fait-on ?
Avatar
JLuc
non, je ne pense pas. Comment fait-on ?


Si, si, le "Private Sub Workbook_BeforeClose(Cancel As Boolean)" c'est
la procedure qui s'execute a la fermeture du classeur. Pour le faire a
l'ouverture, c'est dans le "Private Sub Workbook_Open()"
J'ai retester le code que je t'ai donne :
monfichier = Format(Now(), "dd-mm-yyyy")
Résultat : 02-05-2006

--
JLuc

Avatar
aravis
quand je met Úte, ca me met "enregistrement du 38839". Et quand je met ton
code, ca me met un message d'erreur ! Bizarre vu que ca me semble correcte
Avatar
JLuc
quand je met Úte, ca me met "enregistrement du 38839". Et quand je met ton
code, ca me met un message d'erreur ! Bizarre vu que ca me semble correcte


Normalement, si tu fais un copier coller de la ligne, il ne devrait pas
y avoir de soucis :/
Copie cette ligne a la place de la tienne et execute la procedure avec
F8 (pas a pas). Quand une ligne est executee, si tu passe la souris au
dessus de la variable tu obtiens la valeur de la variable. Teste

--
JLuc

Avatar
FxM
Bonjour,

Teste en désactivant la déclaration de monfichier en single ...

@+
FxM


bonjour, c'est encore encore moi.

Le code suivant sauvegarde le fichier à "chaque fois qu'il est fermé" sous
son nom avec la date du jour, mais en "nombre" par rapport à l'année 1900,
même si la personne le sauvegarde sous un autre nom. Le problème c'est qu'il
ne veut pas marché. Quelqu'un aurait une solution ?

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim monfichier As Single
monfichier = Date
ActiveWorkbook.SaveAs FileName:="C:toto du " & monfichier & ".xls",
FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:úlse, _
CreateBackup:úlse
End Sub

merci d'avance


Avatar
JLuc
Teste en désactivant la déclaration de monfichier en single ...


Tu as raison, j'avais pas vu la declaration en single :-?
Il faut une variable en String (surtout avec la chaleur montante lol)

--
JLuc

Avatar
aravis
ca marche !
merci beaucoup, vous avez toujours réponse à tout