probleme avec macro excel - VB/VBA/VBS - Programmation
Marsh Posté le 18-06-2005 à 17:36:37
bonjour,
le problème vient sans doute du fait que le répertoire de destination (C:\temp) n'existe pas ce qui génère une erreur!
Marsh Posté le 19-06-2005 à 10:48:07
j'ai creé mon repertoire et j'ai une copie avec la date dans le repertoire. Quands j'ouvre ma copie avec la date toute mes donné sont bien enregistre,le probleme c'est quands je ferme la copie il'ya le macro qui se declenche meme dans la copie et essaye de faire un'autre copie. Pour bien explique j'ai le probleme à la fermeture de la copie.
Merci
Marsh Posté le 19-06-2005 à 17:33:56
fait une boucle du style
si non fichier existe alors
créer fichier
fin si
'If not .... Then
'...
'End If
Marsh Posté le 20-06-2005 à 19:05:00
Une copie de fichier contient tout de l'original,y compris les macros. Il est donc normal que ta macro soit executée.
Tu peux par exemple modifier ta macro pour qu'elle ne fonctionne que si le nom du fichier ne correspond pas au nom d'une copie.
Ou alors faut faire des copies de tes données dans un nouveau fichier au lieu de faire une copie de fichier.
Marsh Posté le 21-06-2005 à 17:50:25
Bonj
Tu pourrais m'aider a transformer mon macro pour qu'il ne marche pas avec la copie?
merci
Marsh Posté le 22-06-2005 à 06:46:33
Salut
Je sait pas si ça marche, c'est juste une idée
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim NomFich As String
if ActiveWorkbook.name = "nom du classeur principale" then
NomFich = "c:\TEMP\" & Day(Date) & Month(Date) & Year(Date) & ".xls"
ActiveWorkbook.SaveCopyAs NomFich
else
exit sub
End Sub
Marsh Posté le 18-06-2005 à 00:10:49
Bonjour,
Dans un classeur excel j'ai inserer un macro pour avoir une copie du classeur:
Sub Enregistre()
Dim NomFich As String
NomFich = "c:\TEMP\" & Day(Date) & Month(Date) & Year(Date) & ".xls"
ActiveWorkbook.SaveCopyAs NomFich
End Sub
Pour que le macro s'execute à la fermeture du classeur j'ai mis un code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim NomFich As String
NomFich = "c:\TEMP\" & Day(Date) & Month(Date) & Year(Date) & ".xls"
ActiveWorkbook.SaveCopyAs NomFich
End Sub
Tout marche bien, le probléme c'est que quands je veux fermer la copie avec la date j'ai une erreur 1004, et il marque en jaune ActiveWorkbook.SaveCopyAs NomFich normalment dans la copie il ne devrais pas avoir de macro? Comment faire pour appliquer mon macro juste à la feuille principale.
Merci de m'expliquer pas à pas je ne connais pas trop tout ca
desole pour les fautes je suis italien
merci