Sauvegarde et remplacement automatique de l'ancien fichier par le nouveau

Résolu
BAUHAUS44 Messages postés 50 Date d'inscription samedi 19 août 2006 Statut Membre Dernière intervention 17 juillet 2010 - 17 juil. 2010 à 10:31
BAUHAUS44 Messages postés 50 Date d'inscription samedi 19 août 2006 Statut Membre Dernière intervention 17 juillet 2010 - 17 juil. 2010 à 22:31
Bonjour,
J'ai créé deux macros dans un fichier excel que je suis amené à utiliser l'une après l'autre mais à des moments différents. A la fin de ma première utilisation, le fichier excel est sauvegardé automatiquement. Lorsque je fais tournée la seconde macro, à la fin, je veux sauvegarder ce ficher excel sous le même nom et au même endroit que la première fois, sans intervention humaine. De ce fait, j'ai un message qui apparaît m'indiquant que le fichier en question existe déjà à cet emplacement. Ce message me demande si je veux le remplacer (trois options : oui, non annuler), ce qui est le cas. Quelle ligne de programmation dois-je mettre pour valider la demande automatiquement ?
Merci d'avance de votre aide.

Javascript:Insert_Emoticon('/imgs2/smile.gif');

4 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
17 juil. 2010 à 20:43
??
Il sert à quoi ce code ?
Je te parlais de la syntaxe qui te sert à sauvegarde ton classeur, le SaveAs.
Je viens de regarder dans l'aide et, contrairement à ce que je pensais, il ne semble pas y avoir de paramètre forçant l'écrasement du fichier. (à approfondir)
Plan B : Vérifier l'existence du fichier (Dir) et le détruire (Kill) avant de lancer la sauvegarde.
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
17 juil. 2010 à 15:44
Salut
L'enregistreur de macro te le dira en reproduisant le même phénomène à la main.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
BAUHAUS44 Messages postés 50 Date d'inscription samedi 19 août 2006 Statut Membre Dernière intervention 17 juillet 2010
17 juil. 2010 à 15:58
En effet, j'ai utilisé l'enregistreur de macro qui me donne la programmation suivante :

ActiveWindow.ScrollWorkbookTabs Position:=xlLast
ActiveWindow.ScrollWorkbookTabs Sheets:=-1

Malgré ça, le message continue a apparaître. Y-a-t-il une autre solution ?
Merci d'avance.




Javascript:Insert_Emoticon('/imgs2/smile.gif');
0
BAUHAUS44 Messages postés 50 Date d'inscription samedi 19 août 2006 Statut Membre Dernière intervention 17 juillet 2010
17 juil. 2010 à 22:31
A la suite de la syntaxe de ma sauvegarde, j'avais ces lignes de programmation :
ActiveWindow.ScrollWorkbookTabs Position:=xlLast
ActiveWindow.ScrollWorkbookTabs Sheets:=-1
Elle sont apparues suite au message "voulez-vous remplacer le fichier existant".Malgré ces lignes, le message apparaissait toujours, d'où la raison de mon message sur ce site.

Le "Kill" était la solution à mon problème. Après avoir ouvert mon fichier excel pour faire tourner la seconde macro, j'ai commencé par sauvegarder le fichier sous un nom temporaire. J'ai ensuite supprimé le fichier excel d'origine avec la fonction "Kill". A la fin de ma macro, le fichier excel est sauvegardé sous son nom d'origine, sans qu'il y ait un message me demandant de confirmer le remplacement du fichier d'origine puisqu'il n'existe plus. Après cette sauvegarde, j'ai supprimé le fichier excel enregistré sous son nom temporaire. De cette manière, je me retrouve bien avec mon fichier excel sous son nom d'origine et avec toutes les modifications apportées dans ce fichier au cours du déroulement des deux macros.
Merci pour le coup de main.

Bauhaus44
0
Rejoignez-nous